/-
Copyright (c) 2018 Kenny Lau. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Kenny Lau, Mario Carneiro

! This file was ported from Lean 3 source module linear_algebra.bilinear_map
! leanprover-community/mathlib commit ee05e9ce1322178f0c12004eb93c00d2c8c00ed2
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
import Mathbin.LinearAlgebra.Basic

/-!
# Basics on bilinear maps

> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
> Any changes to this file require a corresponding PR to mathlib4.

This file provides basics on bilinear maps. The most general form considered are maps that are
semilinear in both arguments. They are of type `M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P`, where `M` and `N`
are modules over `R` and `S` respectively, `P` is a module over both `R₂` and `S₂` with
commuting actions, and `ρ₁₂ : R →+* R₂` and `σ₁₂ : S →+* S₂`.

## Main declarations

* `linear_map.mk₂`: a constructor for bilinear maps,
  taking an unbundled function together with proof witnesses of bilinearity
* `linear_map.flip`: turns a bilinear map `M × N → P` into `N × M → P`
* `linear_map.lcomp` and `linear_map.llcomp`: composition of linear maps as a bilinear map
* `linear_map.compl₂`: composition of a bilinear map `M × N → P` with a linear map `Q → M`
* `linear_map.compr₂`: composition of a bilinear map `M × N → P` with a linear map `Q → N`
* `linear_map.lsmul`: scalar multiplication as a bilinear map `R × M → M`

## Tags

bilinear
-/

namespace LinearMap

section Semiring

-- the `ₗ` subscript variables are for special cases about linear (as opposed to semilinear) maps
variable {R : Type _} [Semiring R] {S : Type _} [Semiring S]

variable {R₂ : Type _} [Semiring R₂] {S₂ : Type _} [Semiring S₂]

variable {M : Type _} {N : Type _} {P : Type _}

variable {M₂ : Type _} {N₂ : Type _} {P₂ : Type _}

variable {Nₗ : Type _} {Pₗ : Type _}

variable {M' : Type _} {N' : Type _} {P' : Type _}

variable [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P]

variable [AddCommMonoid M₂] [AddCommMonoid N₂] [AddCommMonoid P₂]

variable [AddCommMonoid Nₗ] [AddCommMonoid Pₗ]

variable [AddCommGroup M'] [AddCommGroup N'] [AddCommGroup P']

variable [Module R M] [Module S N] [Module R₂ P] [Module S₂ P]

variable [Module R M₂] [Module S N₂] [Module R P₂] [Module S₂ P₂]

variable [Module R Pₗ] [Module S Pₗ]

variable [Module R M'] [Module S N'] [Module R₂ P'] [Module S₂ P']

variable [SMulCommClass S₂ R₂ P] [SMulCommClass S R Pₗ] [SMulCommClass S₂ R₂ P']

variable [SMulCommClass S₂ R P₂]

variable {ρ₁₂ : R →+* R₂} {σ₁₂ : S →+* S₂}

variable (ρ₁₂ σ₁₂)

/- warning: linear_map.mk₂'ₛₗ -> LinearMap.mk₂'ₛₗ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] (ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) (f : M -> N -> P), (forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u7} P (f (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toHasAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toHasAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : N), Eq.{succ u7} P (f (SMul.smul.{u1, u5} R M (SMulZeroClass.toHasSmul.{u1, u5} R M (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u5} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u5} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (Module.toMulActionWithZero.{u1, u5} R M _inst_1 _inst_5 _inst_16)))) c m) n) (SMul.smul.{u3, u7} R₂ P (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18)))) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (fun (_x : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) => R -> R₂) (RingHom.hasCoeToFun.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) ρ₁₂ c) (f m n))) -> (forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u7} P (f m (HAdd.hAdd.{u6, u6, u6} N N N (instHAdd.{u6} N (AddZeroClass.toHasAdd.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toHasAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m n₁) (f m n₂))) -> (forall (c : S) (m : M) (n : N), Eq.{succ u7} P (f m (SMul.smul.{u2, u6} S N (SMulZeroClass.toHasSmul.{u2, u6} S N (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (SMulWithZero.toSmulZeroClass.{u2, u6} S N (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (MulActionWithZero.toSMulWithZero.{u2, u6} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (Module.toMulActionWithZero.{u2, u6} S N _inst_2 _inst_6 _inst_17)))) c n)) (SMul.smul.{u4, u7} S₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) (fun (_x : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) => S -> S₂) (RingHom.hasCoeToFun.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) σ₁₂ c) (f m n))) -> (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30))
but is expected to have type
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toSMul.{u4, u7} S₂ P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u4, u7} S₂ P (MonoidWithZero.toZero.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u3, u7} R₂ P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u3, u7} R₂ P (MonoidWithZero.toZero.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] (ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) (f : M -> N -> P), (forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u7} P (f (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : N), Eq.{succ u7} P (f (HSMul.hSMul.{u1, u5, u5} R M M (instHSMul.{u1, u5} R M (SMulZeroClass.toSMul.{u1, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u5} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u5} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (Module.toMulActionWithZero.{u1, u5} R M _inst_1 _inst_5 _inst_16))))) c m) n) (HSMul.hSMul.{u3, u7, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P P (instHSMul.{u3, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (SMulZeroClass.toSMul.{u3, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u3, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) _inst_3)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u3, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) _inst_3) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u3, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P _inst_3 _inst_7 _inst_18))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) R R₂ (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u3} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R₂ (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) R R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R₂ (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3) (RingHom.instRingHomClassRingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3))))) ρ₁₂ c) (f m n))) -> (forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u7} P (f m (HAdd.hAdd.{u6, u6, u6} N N N (instHAdd.{u6} N (AddZeroClass.toAdd.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m n₁) (f m n₂))) -> (forall (c : S) (m : M) (n : N), Eq.{succ u7} P (f m (HSMul.hSMul.{u2, u6, u6} S N N (instHSMul.{u2, u6} S N (SMulZeroClass.toSMul.{u2, u6} S N (AddMonoid.toZero.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)) (SMulWithZero.toSMulZeroClass.{u2, u6} S N (MonoidWithZero.toZero.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)) (AddMonoid.toZero.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)) (MulActionWithZero.toSMulWithZero.{u2, u6} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddMonoid.toZero.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)) (Module.toMulActionWithZero.{u2, u6} S N _inst_2 _inst_6 _inst_17))))) c n)) (HSMul.hSMul.{u4, u7, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P P (instHSMul.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (SMulZeroClass.toSMul.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) _inst_4)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) _inst_4) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P _inst_4 _inst_7 _inst_19))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) S S₂ (NonUnitalNonAssocSemiring.toMul.{u2} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u4} S₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S₂ (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) S S₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S₂ (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4) (RingHom.instRingHomClassRingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4))))) σ₁₂ c) (f m n))) -> (LinearMap.{u1, u3, u5, max u7 u6} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30))
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂'ₛₗ LinearMap.mk₂'ₛₗₓ'. -/
/-- Create a bilinear map from a function that is semilinear in each component.
See `mk₂'` and `mk₂` for the linear case. -/
def mk₂'ₛₗ (f : M → N → P) (H1 : ∀ m₁ m₂ n, f (m₁ + m₂) n = f m₁ n + f m₂ n)
    (H2 : ∀ (c : R) (m n), f (c • m) n = ρ₁₂ c • f m n)
    (H3 : ∀ m n₁ n₂, f m (n₁ + n₂) = f m n₁ + f m n₂)
    (H4 : ∀ (c : S) (m n), f m (c • n) = σ₁₂ c • f m n) : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P
    where
  toFun m :=
    { toFun := f m
      map_add' := H3 m
      map_smul' := fun c => H4 c m }
  map_add' m₁ m₂ := LinearMap.ext <| H1 m₁ m₂
  map_smul' c m := LinearMap.ext <| H2 c m
#align linear_map.mk₂'ₛₗ LinearMap.mk₂'ₛₗ

variable {ρ₁₂ σ₁₂}

/- warning: linear_map.mk₂'ₛₗ_apply -> LinearMap.mk₂'ₛₗ_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : M -> N -> P) {H1 : forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u7} P (f (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toHasAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toHasAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : N), Eq.{succ u7} P (f (SMul.smul.{u1, u5} R M (SMulZeroClass.toHasSmul.{u1, u5} R M (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u5} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u5} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (Module.toMulActionWithZero.{u1, u5} R M _inst_1 _inst_5 _inst_16)))) c m) n) (SMul.smul.{u3, u7} R₂ P (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18)))) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (fun (_x : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) => R -> R₂) (RingHom.hasCoeToFun.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) ρ₁₂ c) (f m n))} {H3 : forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u7} P (f m (HAdd.hAdd.{u6, u6, u6} N N N (instHAdd.{u6} N (AddZeroClass.toHasAdd.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toHasAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m n₁) (f m n₂))} {H4 : forall (c : S) (m : M) (n : N), Eq.{succ u7} P (f m (SMul.smul.{u2, u6} S N (SMulZeroClass.toHasSmul.{u2, u6} S N (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (SMulWithZero.toSmulZeroClass.{u2, u6} S N (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (MulActionWithZero.toSMulWithZero.{u2, u6} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u6} N (AddMonoid.toAddZeroClass.{u6} N (AddCommMonoid.toAddMonoid.{u6} N _inst_6))) (Module.toMulActionWithZero.{u2, u6} S N _inst_2 _inst_6 _inst_17)))) c n)) (SMul.smul.{u4, u7} S₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) (fun (_x : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) => S -> S₂) (RingHom.hasCoeToFun.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)) σ₁₂ c) (f m n))} (m : M) (n : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.mk₂'ₛₗ.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f H1 H2 H3 H4) m) n) (f m n)
but is expected to have type
  forall {R : Type.{u5}} [_inst_1 : Semiring.{u5} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u4}} [_inst_3 : Semiring.{u4} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u6}} {N : Type.{u3}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u6} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u5, u6} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u4, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u4, u7} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u7} S₂ P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u7} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u7} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u1, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u4, u7} R₂ P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u4, u7} R₂ P (MonoidWithZero.toZero.{u4} R₂ (Semiring.toMonoidWithZero.{u4} R₂ _inst_3)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u4, u7} R₂ P (Semiring.toMonoidWithZero.{u4} R₂ _inst_3) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u4, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : M -> N -> P) {H1 : forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u7} P (f (HAdd.hAdd.{u6, u6, u6} M M M (instHAdd.{u6} M (AddZeroClass.toAdd.{u6} M (AddMonoid.toAddZeroClass.{u6} M (AddCommMonoid.toAddMonoid.{u6} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : N), Eq.{succ u7} P (f (HSMul.hSMul.{u5, u6, u6} R M M (instHSMul.{u5, u6} R M (SMulZeroClass.toSMul.{u5, u6} R M (AddMonoid.toZero.{u6} M (AddCommMonoid.toAddMonoid.{u6} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u5, u6} R M (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u6} M (AddCommMonoid.toAddMonoid.{u6} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u5, u6} R M (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u6} M (AddCommMonoid.toAddMonoid.{u6} M _inst_5)) (Module.toMulActionWithZero.{u5, u6} R M _inst_1 _inst_5 _inst_16))))) c m) n) (HSMul.hSMul.{u4, u7, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P P (instHSMul.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (SMulZeroClass.toSMul.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) _inst_3)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) _inst_3) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u4, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) c) P _inst_3 _inst_7 _inst_18))))) (FunLike.coe.{max (succ u5) (succ u4), succ u5, succ u4} (RingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) _x) (MulHomClass.toFunLike.{max u5 u4, u5, u4} (RingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)) R R₂ (NonUnitalNonAssocSemiring.toMul.{u5} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R₂ (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u5 u4, u5, u4} (RingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)) R R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R₂ (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u5 u4, u5, u4} (RingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3)) R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3) (RingHom.instRingHomClassRingHom.{u5, u4} R R₂ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₂ _inst_3))))) ρ₁₂ c) (f m n))} {H3 : forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u7} P (f m (HAdd.hAdd.{u3, u3, u3} N N N (instHAdd.{u3} N (AddZeroClass.toAdd.{u3} N (AddMonoid.toAddZeroClass.{u3} N (AddCommMonoid.toAddMonoid.{u3} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (f m n₁) (f m n₂))} {H4 : forall (c : S) (m : M) (n : N), Eq.{succ u7} P (f m (HSMul.hSMul.{u2, u3, u3} S N N (instHSMul.{u2, u3} S N (SMulZeroClass.toSMul.{u2, u3} S N (AddMonoid.toZero.{u3} N (AddCommMonoid.toAddMonoid.{u3} N _inst_6)) (SMulWithZero.toSMulZeroClass.{u2, u3} S N (MonoidWithZero.toZero.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)) (AddMonoid.toZero.{u3} N (AddCommMonoid.toAddMonoid.{u3} N _inst_6)) (MulActionWithZero.toSMulWithZero.{u2, u3} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddMonoid.toZero.{u3} N (AddCommMonoid.toAddMonoid.{u3} N _inst_6)) (Module.toMulActionWithZero.{u2, u3} S N _inst_2 _inst_6 _inst_17))))) c n)) (HSMul.hSMul.{u1, u7, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P P (instHSMul.{u1, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (SMulZeroClass.toSMul.{u1, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) _inst_4)) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) _inst_4) (AddMonoid.toZero.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)) (Module.toMulActionWithZero.{u1, u7} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) c) P _inst_4 _inst_7 _inst_19))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => S₂) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)) S S₂ (NonUnitalNonAssocSemiring.toMul.{u2} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u1} S₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S₂ (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)) S S₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S₂ (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)) S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4) (RingHom.instRingHomClassRingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4))))) σ₁₂ c) (f m n))} (m : M) (n : N), Eq.{succ u7} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) n) (FunLike.coe.{max (succ u3) (succ u7), succ u3, succ u7} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u6) (succ u3)) (succ u7), succ u6, max (succ u3) (succ u7)} (LinearMap.{u5, u4, u6, max u7 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u4, u3, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u6, max u3 u7} R R₂ M (LinearMap.{u2, u1, u3, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u4, u3, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.mk₂'ₛₗ.{u5, u2, u4, u1, u6, u3, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f H1 H2 H3 H4) m) n) (f m n)
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂'ₛₗ_apply LinearMap.mk₂'ₛₗ_applyₓ'. -/
@[simp]
theorem mk₂'ₛₗ_apply (f : M → N → P) {H1 H2 H3 H4} (m : M) (n : N) :
    (mk₂'ₛₗ ρ₁₂ σ₁₂ f H1 H2 H3 H4 : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) m n = f m n :=
  rfl
#align linear_map.mk₂'ₛₗ_apply LinearMap.mk₂'ₛₗ_apply

variable (R S)

/- warning: linear_map.mk₂' -> LinearMap.mk₂' is a dubious translation:
lean 3 declaration is
  forall (R : Type.{u1}) [_inst_1 : Semiring.{u1} R] (S : Type.{u2}) [_inst_2 : Semiring.{u2} S] {M : Type.{u3}} {N : Type.{u4}} {Pₗ : Type.{u5}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_6 : AddCommMonoid.{u4} N] [_inst_12 : AddCommMonoid.{u5} Pₗ] [_inst_16 : Module.{u1, u3} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u4} S N _inst_2 _inst_6] [_inst_24 : Module.{u1, u5} R Pₗ _inst_1 _inst_12] [_inst_25 : Module.{u2, u5} S Pₗ _inst_2 _inst_12] [_inst_31 : SMulCommClass.{u2, u1, u5} S R Pₗ (SMulZeroClass.toHasSmul.{u2, u5} S Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u2, u5} S Pₗ (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) (SMulZeroClass.toHasSmul.{u1, u5} R Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u1, u5} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24))))] (f : M -> N -> Pₗ), (forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u5} Pₗ (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toHasAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : N), Eq.{succ u5} Pₗ (f (SMul.smul.{u1, u3} R M (SMulZeroClass.toHasSmul.{u1, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u3} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_5 _inst_16)))) c m) n) (SMul.smul.{u1, u5} R Pₗ (SMulZeroClass.toHasSmul.{u1, u5} R Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u1, u5} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24)))) c (f m n))) -> (forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u5} Pₗ (f m (HAdd.hAdd.{u4, u4, u4} N N N (instHAdd.{u4} N (AddZeroClass.toHasAdd.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toHasAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m n₁) (f m n₂))) -> (forall (c : S) (m : M) (n : N), Eq.{succ u5} Pₗ (f m (SMul.smul.{u2, u4} S N (SMulZeroClass.toHasSmul.{u2, u4} S N (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (SMulWithZero.toSmulZeroClass.{u2, u4} S N (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (MulActionWithZero.toSMulWithZero.{u2, u4} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (Module.toMulActionWithZero.{u2, u4} S N _inst_2 _inst_6 _inst_17)))) c n)) (SMul.smul.{u2, u5} S Pₗ (SMulZeroClass.toHasSmul.{u2, u5} S Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u2, u5} S Pₗ (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) c (f m n))) -> (LinearMap.{u1, u1, u3, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) _inst_16 (LinearMap.module.{u2, u2, u1, u4, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) _inst_1 _inst_24 _inst_31))
but is expected to have type
  forall (R : Type.{u1}) [_inst_1 : Semiring.{u1} R] (S : Type.{u2}) [_inst_2 : Semiring.{u2} S] {M : Type.{u3}} {N : Type.{u4}} {Pₗ : Type.{u5}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_6 : AddCommMonoid.{u4} N] [_inst_12 : AddCommMonoid.{u5} Pₗ] [_inst_16 : Module.{u1, u3} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u4} S N _inst_2 _inst_6] [_inst_24 : Module.{u1, u5} R Pₗ _inst_1 _inst_12] [_inst_25 : Module.{u2, u5} S Pₗ _inst_2 _inst_12] [_inst_31 : SMulCommClass.{u2, u1, u5} S R Pₗ (SMulZeroClass.toSMul.{u2, u5} S Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u2, u5} S Pₗ (MonoidWithZero.toZero.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) (SMulZeroClass.toSMul.{u1, u5} R Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u1, u5} R Pₗ (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24))))] (f : M -> N -> Pₗ), (forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u5} Pₗ (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : N), Eq.{succ u5} Pₗ (f (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_5 _inst_16))))) c m) n) (HSMul.hSMul.{u1, u5, u5} R Pₗ Pₗ (instHSMul.{u1, u5} R Pₗ (SMulZeroClass.toSMul.{u1, u5} R Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u1, u5} R Pₗ (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24))))) c (f m n))) -> (forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u5} Pₗ (f m (HAdd.hAdd.{u4, u4, u4} N N N (instHAdd.{u4} N (AddZeroClass.toAdd.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m n₁) (f m n₂))) -> (forall (c : S) (m : M) (n : N), Eq.{succ u5} Pₗ (f m (HSMul.hSMul.{u2, u4, u4} S N N (instHSMul.{u2, u4} S N (SMulZeroClass.toSMul.{u2, u4} S N (AddMonoid.toZero.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)) (SMulWithZero.toSMulZeroClass.{u2, u4} S N (MonoidWithZero.toZero.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)) (AddMonoid.toZero.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)) (MulActionWithZero.toSMulWithZero.{u2, u4} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddMonoid.toZero.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)) (Module.toMulActionWithZero.{u2, u4} S N _inst_2 _inst_6 _inst_17))))) c n)) (HSMul.hSMul.{u2, u5, u5} S Pₗ Pₗ (instHSMul.{u2, u5} S Pₗ (SMulZeroClass.toSMul.{u2, u5} S Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u2, u5} S Pₗ (MonoidWithZero.toZero.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25))))) c (f m n))) -> (LinearMap.{u1, u1, u3, max u5 u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u1, u4, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) _inst_1 _inst_24 _inst_31))
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂' LinearMap.mk₂'ₓ'. -/
/-- Create a bilinear map from a function that is linear in each component.
See `mk₂` for the special case where both arguments come from modules over the same ring. -/
def mk₂' (f : M → N → Pₗ) (H1 : ∀ m₁ m₂ n, f (m₁ + m₂) n = f m₁ n + f m₂ n)
    (H2 : ∀ (c : R) (m n), f (c • m) n = c • f m n)
    (H3 : ∀ m n₁ n₂, f m (n₁ + n₂) = f m n₁ + f m n₂)
    (H4 : ∀ (c : S) (m n), f m (c • n) = c • f m n) : M →ₗ[R] N →ₗ[S] Pₗ :=
  mk₂'ₛₗ (RingHom.id R) (RingHom.id S) f H1 H2 H3 H4
#align linear_map.mk₂' LinearMap.mk₂'

variable {R S}

/- warning: linear_map.mk₂'_apply -> LinearMap.mk₂'_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {M : Type.{u3}} {N : Type.{u4}} {Pₗ : Type.{u5}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_6 : AddCommMonoid.{u4} N] [_inst_12 : AddCommMonoid.{u5} Pₗ] [_inst_16 : Module.{u1, u3} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u4} S N _inst_2 _inst_6] [_inst_24 : Module.{u1, u5} R Pₗ _inst_1 _inst_12] [_inst_25 : Module.{u2, u5} S Pₗ _inst_2 _inst_12] [_inst_31 : SMulCommClass.{u2, u1, u5} S R Pₗ (SMulZeroClass.toHasSmul.{u2, u5} S Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u2, u5} S Pₗ (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) (SMulZeroClass.toHasSmul.{u1, u5} R Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u1, u5} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24))))] (f : M -> N -> Pₗ) {H1 : forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u5} Pₗ (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toHasAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : N), Eq.{succ u5} Pₗ (f (SMul.smul.{u1, u3} R M (SMulZeroClass.toHasSmul.{u1, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u3} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5))) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_5 _inst_16)))) c m) n) (SMul.smul.{u1, u5} R Pₗ (SMulZeroClass.toHasSmul.{u1, u5} R Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u1, u5} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u1, u5} R Pₗ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u1, u5} R Pₗ _inst_1 _inst_12 _inst_24)))) c (f m n))} {H3 : forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u5} Pₗ (f m (HAdd.hAdd.{u4, u4, u4} N N N (instHAdd.{u4} N (AddZeroClass.toHasAdd.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toHasAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m n₁) (f m n₂))} {H4 : forall (c : S) (m : M) (n : N), Eq.{succ u5} Pₗ (f m (SMul.smul.{u2, u4} S N (SMulZeroClass.toHasSmul.{u2, u4} S N (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (SMulWithZero.toSmulZeroClass.{u2, u4} S N (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (MulActionWithZero.toSMulWithZero.{u2, u4} S N (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u4} N (AddMonoid.toAddZeroClass.{u4} N (AddCommMonoid.toAddMonoid.{u4} N _inst_6))) (Module.toMulActionWithZero.{u2, u4} S N _inst_2 _inst_6 _inst_17)))) c n)) (SMul.smul.{u2, u5} S Pₗ (SMulZeroClass.toHasSmul.{u2, u5} S Pₗ (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (SMulWithZero.toSmulZeroClass.{u2, u5} S Pₗ (MulZeroClass.toHasZero.{u2} S (MulZeroOneClass.toMulZeroClass.{u2} S (MonoidWithZero.toMulZeroOneClass.{u2} S (Semiring.toMonoidWithZero.{u2} S _inst_2)))) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (MulActionWithZero.toSMulWithZero.{u2, u5} S Pₗ (Semiring.toMonoidWithZero.{u2} S _inst_2) (AddZeroClass.toHasZero.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12))) (Module.toMulActionWithZero.{u2, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) c (f m n))} (m : M) (n : N), Eq.{succ u5} Pₗ (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) (fun (_x : LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) => N -> Pₗ) (LinearMap.hasCoeToFun.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) (coeFn.{max (succ u3) (succ (max u4 u5)), max (succ u3) (succ (max u4 u5))} (LinearMap.{u1, u1, u3, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) _inst_16 (LinearMap.module.{u2, u2, u1, u4, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) _inst_1 _inst_24 _inst_31)) (fun (_x : LinearMap.{u1, u1, u3, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) _inst_16 (LinearMap.module.{u2, u2, u1, u4, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) _inst_1 _inst_24 _inst_31)) => M -> (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25)) (LinearMap.hasCoeToFun.{u1, u1, u3, max u4 u5} R R M (LinearMap.{u2, u2, u4, u5} S S _inst_2 _inst_2 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_1 _inst_1 _inst_5 (LinearMap.addCommMonoid.{u2, u2, u4, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2))) _inst_16 (LinearMap.module.{u2, u2, u1, u4, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u2} S (Semiring.toNonAssocSemiring.{u2} S _inst_2)) _inst_1 _inst_24 _inst_31) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.mk₂'.{u1, u2, u3, u4, u5} R _inst_1 S _inst_2 M N Pₗ _inst_5 _inst_6 _inst_12 _inst_16 _inst_17 _inst_24 _inst_25 _inst_31 f H1 H2 H3 H4) m) n) (f m n)
but is expected to have type
  forall {R : Type.{u3}} [_inst_1 : Semiring.{u3} R] {S : Type.{u1}} [_inst_2 : Semiring.{u1} S] {M : Type.{u4}} {N : Type.{u2}} {Pₗ : Type.{u5}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_6 : AddCommMonoid.{u2} N] [_inst_12 : AddCommMonoid.{u5} Pₗ] [_inst_16 : Module.{u3, u4} R M _inst_1 _inst_5] [_inst_17 : Module.{u1, u2} S N _inst_2 _inst_6] [_inst_24 : Module.{u3, u5} R Pₗ _inst_1 _inst_12] [_inst_25 : Module.{u1, u5} S Pₗ _inst_2 _inst_12] [_inst_31 : SMulCommClass.{u1, u3, u5} S R Pₗ (SMulZeroClass.toSMul.{u1, u5} S Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u1, u5} S Pₗ (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_2)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u1, u5} S Pₗ (Semiring.toMonoidWithZero.{u1} S _inst_2) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u1, u5} S Pₗ _inst_2 _inst_12 _inst_25)))) (SMulZeroClass.toSMul.{u3, u5} R Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u3, u5} R Pₗ (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u3, u5} R Pₗ (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u3, u5} R Pₗ _inst_1 _inst_12 _inst_24))))] (f : M -> N -> Pₗ) {H1 : forall (m₁ : M) (m₂ : M) (n : N), Eq.{succ u5} Pₗ (f (HAdd.hAdd.{u4, u4, u4} M M M (instHAdd.{u4} M (AddZeroClass.toAdd.{u4} M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : N), Eq.{succ u5} Pₗ (f (HSMul.hSMul.{u3, u4, u4} R M M (instHSMul.{u3, u4} R M (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_5)) (Module.toMulActionWithZero.{u3, u4} R M _inst_1 _inst_5 _inst_16))))) c m) n) (HSMul.hSMul.{u3, u5, u5} R Pₗ Pₗ (instHSMul.{u3, u5} R Pₗ (SMulZeroClass.toSMul.{u3, u5} R Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u3, u5} R Pₗ (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u3, u5} R Pₗ (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u3, u5} R Pₗ _inst_1 _inst_12 _inst_24))))) c (f m n))} {H3 : forall (m : M) (n₁ : N) (n₂ : N), Eq.{succ u5} Pₗ (f m (HAdd.hAdd.{u2, u2, u2} N N N (instHAdd.{u2} N (AddZeroClass.toAdd.{u2} N (AddMonoid.toAddZeroClass.{u2} N (AddCommMonoid.toAddMonoid.{u2} N _inst_6)))) n₁ n₂)) (HAdd.hAdd.{u5, u5, u5} Pₗ Pₗ Pₗ (instHAdd.{u5} Pₗ (AddZeroClass.toAdd.{u5} Pₗ (AddMonoid.toAddZeroClass.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)))) (f m n₁) (f m n₂))} {H4 : forall (c : S) (m : M) (n : N), Eq.{succ u5} Pₗ (f m (HSMul.hSMul.{u1, u2, u2} S N N (instHSMul.{u1, u2} S N (SMulZeroClass.toSMul.{u1, u2} S N (AddMonoid.toZero.{u2} N (AddCommMonoid.toAddMonoid.{u2} N _inst_6)) (SMulWithZero.toSMulZeroClass.{u1, u2} S N (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_2)) (AddMonoid.toZero.{u2} N (AddCommMonoid.toAddMonoid.{u2} N _inst_6)) (MulActionWithZero.toSMulWithZero.{u1, u2} S N (Semiring.toMonoidWithZero.{u1} S _inst_2) (AddMonoid.toZero.{u2} N (AddCommMonoid.toAddMonoid.{u2} N _inst_6)) (Module.toMulActionWithZero.{u1, u2} S N _inst_2 _inst_6 _inst_17))))) c n)) (HSMul.hSMul.{u1, u5, u5} S Pₗ Pₗ (instHSMul.{u1, u5} S Pₗ (SMulZeroClass.toSMul.{u1, u5} S Pₗ (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (SMulWithZero.toSMulZeroClass.{u1, u5} S Pₗ (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_2)) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (MulActionWithZero.toSMulWithZero.{u1, u5} S Pₗ (Semiring.toMonoidWithZero.{u1} S _inst_2) (AddMonoid.toZero.{u5} Pₗ (AddCommMonoid.toAddMonoid.{u5} Pₗ _inst_12)) (Module.toMulActionWithZero.{u1, u5} S Pₗ _inst_2 _inst_12 _inst_25))))) c (f m n))} (m : M) (n : N), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => Pₗ) n) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u1, u1, u2, u5} S S _inst_2 _inst_2 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), succ u4, max (succ u2) (succ u5)} (LinearMap.{u3, u3, u4, max u5 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (LinearMap.{u1, u1, u2, u5} S S _inst_2 _inst_2 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u2, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2))) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u3, u2, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) _inst_1 _inst_24 _inst_31)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u1, u1, u2, u5} S S _inst_2 _inst_2 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, max u2 u5} R R M (LinearMap.{u1, u1, u2, u5} S S _inst_2 _inst_2 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) N Pₗ _inst_6 _inst_12 _inst_17 _inst_25) _inst_1 _inst_1 _inst_5 (LinearMap.addCommMonoid.{u1, u1, u2, u5} S S N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2))) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u3, u2, u5} S S R N Pₗ _inst_2 _inst_2 _inst_6 _inst_12 _inst_17 _inst_25 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_2)) _inst_1 _inst_24 _inst_31) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.mk₂'.{u3, u1, u4, u2, u5} R _inst_1 S _inst_2 M N Pₗ _inst_5 _inst_6 _inst_12 _inst_16 _inst_17 _inst_24 _inst_25 _inst_31 f H1 H2 H3 H4) m) n) (f m n)
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂'_apply LinearMap.mk₂'_applyₓ'. -/
@[simp]
theorem mk₂'_apply (f : M → N → Pₗ) {H1 H2 H3 H4} (m : M) (n : N) :
    (mk₂' R S f H1 H2 H3 H4 : M →ₗ[R] N →ₗ[S] Pₗ) m n = f m n :=
  rfl
#align linear_map.mk₂'_apply LinearMap.mk₂'_apply

/- warning: linear_map.ext₂ -> LinearMap.ext₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} {f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (forall (m : M) (n : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f m) n) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) g m) n)) -> (Eq.{max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g)
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} {f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (forall (m : M) (n : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) n) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f m) n) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) g m) n)) -> (Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g)
Case conversion may be inaccurate. Consider using '#align linear_map.ext₂ LinearMap.ext₂ₓ'. -/
theorem ext₂ {f g : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P} (H : ∀ m n, f m n = g m n) : f = g :=
  LinearMap.ext fun m => LinearMap.ext fun n => H m n
#align linear_map.ext₂ LinearMap.ext₂

/- warning: linear_map.congr_fun₂ -> LinearMap.congr_fun₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} {f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (Eq.{max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g) -> (forall (x : M) (y : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) y) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) g x) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} {f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g) -> (forall (x : M) (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) g x) y))
Case conversion may be inaccurate. Consider using '#align linear_map.congr_fun₂ LinearMap.congr_fun₂ₓ'. -/
theorem congr_fun₂ {f g : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P} (h : f = g) (x y) : f x y = g x y :=
  LinearMap.congr_fun (LinearMap.congr_fun h x) y
#align linear_map.congr_fun₂ LinearMap.congr_fun₂

section

attribute [local instance] SMulCommClass.symm

#print LinearMap.flip /-
/-- Given a linear map from `M` to linear maps from `N` to `P`, i.e., a bilinear map from `M × N` to
`P`, change the order of variables and get a linear map from `N` to linear maps from `M` to `P`. -/
def flip (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) : N →ₛₗ[σ₁₂] M →ₛₗ[ρ₁₂] P :=
  mk₂'ₛₗ σ₁₂ ρ₁₂ (fun n m => f m n) (fun n₁ n₂ m => (f m).map_add _ _)
    (fun c n m => (f m).map_smulₛₗ _ _) (fun n m₁ m₂ => by rw [f.map_add] <;> rfl) fun c n m => by
    rw [f.map_smulₛₗ] <;> rfl
#align linear_map.flip LinearMap.flip
-/

end

/- warning: linear_map.flip_apply -> LinearMap.flip_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (m : M) (n : N), Eq.{succ u7} P (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) (fun (_x : LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) => M -> P) (LinearMap.hasCoeToFun.{u1, u3, u5, u7} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u2, u4, u6, max u5 u7} S S₂ _inst_2 _inst_4 σ₁₂ N (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u5, u7} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.module.{u1, u3, u4, u5, u7} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (LinearMap.flip._proof_1.{u3, u4, u7} R₂ _inst_3 S₂ _inst_4 P _inst_7 _inst_18 _inst_19 _inst_30))) (fun (_x : LinearMap.{u2, u4, u6, max u5 u7} S S₂ _inst_2 _inst_4 σ₁₂ N (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u5, u7} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.module.{u1, u3, u4, u5, u7} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (LinearMap.flip._proof_1.{u3, u4, u7} R₂ _inst_3 S₂ _inst_4 P _inst_7 _inst_18 _inst_19 _inst_30))) => N -> (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18)) (LinearMap.hasCoeToFun.{u2, u4, u6, max u5 u7} S S₂ N (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_2 _inst_4 _inst_6 (LinearMap.addCommMonoid.{u1, u3, u5, u7} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.module.{u1, u3, u4, u5, u7} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (LinearMap.flip._proof_1.{u3, u4, u7} R₂ _inst_3 S₂ _inst_4 P _inst_7 _inst_18 _inst_19 _inst_30)) σ₁₂) (LinearMap.flip.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f) n) m) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f m) n)
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (m : M) (n : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) m) (FunLike.coe.{max (succ u5) (succ u4), succ u5, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => LinearMap.{u7, u6, u5, u4} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) n) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, u4} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u3, max (succ u5) (succ u4)} (LinearMap.{u2, u1, u3, max u4 u5} S S₂ _inst_2 _inst_4 σ₁₂ N (LinearMap.{u7, u6, u5, u4} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_6 (LinearMap.addCommMonoid.{u7, u6, u5, u4} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u6, u1, u5, u4} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (SMulCommClass.symm.{u4, u6, u1} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) _inst_30))) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => LinearMap.{u7, u6, u5, u4} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, max u5 u4} S S₂ N (LinearMap.{u7, u6, u5, u4} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_2 _inst_4 _inst_6 (LinearMap.addCommMonoid.{u7, u6, u5, u4} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u6, u1, u5, u4} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (SMulCommClass.symm.{u4, u6, u1} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) _inst_30)) σ₁₂) (LinearMap.flip.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f) n) m) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f m) n)
Case conversion may be inaccurate. Consider using '#align linear_map.flip_apply LinearMap.flip_applyₓ'. -/
@[simp]
theorem flip_apply (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (m : M) (n : N) : flip f n m = f m n :=
  rfl
#align linear_map.flip_apply LinearMap.flip_apply

/- warning: linear_map.flip_flip -> LinearMap.flip_flip is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} [_inst_34 : SMulCommClass.{u3, u4, u7} R₂ S₂ P (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18)))) (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19))))] (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)), Eq.{max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 (LinearMap.flip._proof_1.{u4, u3, u7} S₂ _inst_4 R₂ _inst_3 P _inst_7 _inst_19 _inst_18 _inst_34))) (LinearMap.flip.{u2, u1, u4, u3, u6, u5, u7} S _inst_2 R _inst_1 S₂ _inst_4 R₂ _inst_3 N M P _inst_6 _inst_5 _inst_7 _inst_17 _inst_16 _inst_19 _inst_18 _inst_34 σ₁₂ ρ₁₂ (LinearMap.flip.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f)) f
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (_inst_34 : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)), Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 (SMulCommClass.symm.{u4, u1, u6} R₂ S₂ P (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulCommClass.symm.{u4, u6, u1} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) _inst_30)))) (LinearMap.flip.{u2, u7, u1, u6, u3, u5, u4} S _inst_2 R _inst_1 S₂ _inst_4 R₂ _inst_3 N M P _inst_6 _inst_5 _inst_7 _inst_17 _inst_16 _inst_19 _inst_18 (SMulCommClass.symm.{u4, u6, u1} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) _inst_30) σ₁₂ ρ₁₂ (LinearMap.flip.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ _inst_34)) _inst_34
Case conversion may be inaccurate. Consider using '#align linear_map.flip_flip LinearMap.flip_flipₓ'. -/
@[simp]
theorem flip_flip [SMulCommClass R₂ S₂ P] (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) : f.flip.flip = f :=
  LinearMap.ext₂ fun x y => (f.flip.flip_apply _ _).trans (f.flip_apply _ _)
#align linear_map.flip_flip LinearMap.flip_flip

open BigOperators

variable {R}

/- warning: linear_map.flip_inj -> LinearMap.flip_inj is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} {f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (Eq.{max (succ u6) (succ (max u5 u7))} (LinearMap.{u2, u4, u6, max u5 u7} S S₂ _inst_2 _inst_4 σ₁₂ N (LinearMap.{u1, u3, u5, u7} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u5, u7} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.module.{u1, u3, u4, u5, u7} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (LinearMap.flip._proof_1.{u3, u4, u7} R₂ _inst_3 S₂ _inst_4 P _inst_7 _inst_18 _inst_19 _inst_30))) (LinearMap.flip.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f) (LinearMap.flip.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ g)) -> (Eq.{max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g)
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} {f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)} {g : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)}, (Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u2, u1, u3, max u4 u5} S S₂ _inst_2 _inst_4 σ₁₂ N (LinearMap.{u7, u6, u5, u4} R R₂ _inst_1 _inst_3 ρ₁₂ M P _inst_5 _inst_7 _inst_16 _inst_18) _inst_6 (LinearMap.addCommMonoid.{u7, u6, u5, u4} R R₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂) _inst_17 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u6, u1, u5, u4} R R₂ S₂ M P _inst_1 _inst_3 _inst_5 _inst_7 _inst_16 _inst_18 ρ₁₂ _inst_4 _inst_19 (SMulCommClass.symm.{u4, u6, u1} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18)))) _inst_30))) (LinearMap.flip.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f) (LinearMap.flip.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ g)) -> (Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) f g)
Case conversion may be inaccurate. Consider using '#align linear_map.flip_inj LinearMap.flip_injₓ'. -/
theorem flip_inj {f g : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P} (H : flip f = flip g) : f = g :=
  ext₂ fun m n => show flip f n m = flip g n m by rw [H]
#align linear_map.flip_inj LinearMap.flip_inj

/- warning: linear_map.map_zero₂ -> LinearMap.map_zero₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (y : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (OfNat.ofNat.{u5} M 0 (OfNat.mk.{u5} M 0 (Zero.zero.{u5} M (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))))))) y) (OfNat.ofNat.{u7} P 0 (OfNat.mk.{u7} P 0 (Zero.zero.{u7} P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))))))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))))) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))))) y) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_7))))
Case conversion may be inaccurate. Consider using '#align linear_map.map_zero₂ LinearMap.map_zero₂ₓ'. -/
theorem map_zero₂ (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (y) : f 0 y = 0 :=
  (flip f y).map_zero
#align linear_map.map_zero₂ LinearMap.map_zero₂

/- warning: linear_map.map_neg₂ -> LinearMap.map_neg₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {N : Type.{u5}} {M' : Type.{u6}} {P' : Type.{u7}} [_inst_6 : AddCommMonoid.{u5} N] [_inst_13 : AddCommGroup.{u6} M'] [_inst_15 : AddCommGroup.{u7} P'] [_inst_17 : Module.{u2, u5} S N _inst_2 _inst_6] [_inst_26 : Module.{u1, u6} R M' _inst_1 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13)] [_inst_28 : Module.{u3, u7} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)] [_inst_29 : Module.{u4, u7} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)] [_inst_32 : SMulCommClass.{u4, u3, u7} S₂ R₂ P' (SMulZeroClass.toHasSmul.{u4, u7} S₂ P' (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P' (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P' (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (Module.toMulActionWithZero.{u4, u7} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_29)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P' (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P' (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P' (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (Module.toMulActionWithZero.{u3, u7} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_28))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (x : M') (y : N), Eq.{succ u7} P' (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (fun (_x : LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) => N -> P') (LinearMap.hasCoeToFun.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (fun (_x : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) => M' -> (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29)) (LinearMap.hasCoeToFun.{u1, u3, u6, max u5 u7} R R₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f (Neg.neg.{u6} M' (SubNegMonoid.toHasNeg.{u6} M' (AddGroup.toSubNegMonoid.{u6} M' (AddCommGroup.toAddGroup.{u6} M' _inst_13))) x)) y) (Neg.neg.{u7} P' (SubNegMonoid.toHasNeg.{u7} P' (AddGroup.toSubNegMonoid.{u7} P' (AddCommGroup.toAddGroup.{u7} P' _inst_15))) (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (fun (_x : LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) => N -> P') (LinearMap.hasCoeToFun.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (fun (_x : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) => M' -> (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29)) (LinearMap.hasCoeToFun.{u1, u3, u6, max u5 u7} R R₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f x) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {N : Type.{u3}} {M' : Type.{u5}} {P' : Type.{u4}} [_inst_6 : AddCommMonoid.{u3} N] [_inst_13 : AddCommGroup.{u5} M'] [_inst_15 : AddCommGroup.{u4} P'] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_26 : Module.{u7, u5} R M' _inst_1 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13)] [_inst_28 : Module.{u6, u4} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15)] [_inst_29 : Module.{u1, u4} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15)] [_inst_32 : SMulCommClass.{u1, u6, u4} S₂ R₂ P' (SMulZeroClass.toSMul.{u1, u4} S₂ P' (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P' (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P' (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (Module.toMulActionWithZero.{u1, u4} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_29)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P' (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P' (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P' (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (Module.toMulActionWithZero.{u6, u4} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_28))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (x : M') (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (Neg.neg.{u5} M' (NegZeroClass.toNeg.{u5} M' (SubNegZeroMonoid.toNegZeroClass.{u5} M' (SubtractionMonoid.toSubNegZeroMonoid.{u5} M' (SubtractionCommMonoid.toSubtractionMonoid.{u5} M' (AddCommGroup.toDivisionAddCommMonoid.{u5} M' _inst_13))))) x)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) (FunLike.coe.{max (max (succ u3) (succ u5)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f (Neg.neg.{u5} M' (NegZeroClass.toNeg.{u5} M' (SubNegZeroMonoid.toNegZeroClass.{u5} M' (SubtractionMonoid.toSubNegZeroMonoid.{u5} M' (SubtractionCommMonoid.toSubtractionMonoid.{u5} M' (AddCommGroup.toDivisionAddCommMonoid.{u5} M' _inst_13))))) x)) y) (Neg.neg.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (NegZeroClass.toNeg.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (SubNegZeroMonoid.toNegZeroClass.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (SubtractionMonoid.toSubNegZeroMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (SubtractionCommMonoid.toSubtractionMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) (AddCommGroup.toDivisionAddCommMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') y) _inst_15))))) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) (FunLike.coe.{max (max (succ u3) (succ u5)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f x) y))
Case conversion may be inaccurate. Consider using '#align linear_map.map_neg₂ LinearMap.map_neg₂ₓ'. -/
theorem map_neg₂ (f : M' →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P') (x y) : f (-x) y = -f x y :=
  (flip f y).map_neg _
#align linear_map.map_neg₂ LinearMap.map_neg₂

/- warning: linear_map.map_sub₂ -> LinearMap.map_sub₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {N : Type.{u5}} {M' : Type.{u6}} {P' : Type.{u7}} [_inst_6 : AddCommMonoid.{u5} N] [_inst_13 : AddCommGroup.{u6} M'] [_inst_15 : AddCommGroup.{u7} P'] [_inst_17 : Module.{u2, u5} S N _inst_2 _inst_6] [_inst_26 : Module.{u1, u6} R M' _inst_1 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13)] [_inst_28 : Module.{u3, u7} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)] [_inst_29 : Module.{u4, u7} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)] [_inst_32 : SMulCommClass.{u4, u3, u7} S₂ R₂ P' (SMulZeroClass.toHasSmul.{u4, u7} S₂ P' (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P' (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P' (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (Module.toMulActionWithZero.{u4, u7} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_29)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P' (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P' (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P' (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P' (AddMonoid.toAddZeroClass.{u7} P' (AddCommMonoid.toAddMonoid.{u7} P' (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15)))) (Module.toMulActionWithZero.{u3, u7} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_28))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (x : M') (y : M') (z : N), Eq.{succ u7} P' (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (fun (_x : LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) => N -> P') (LinearMap.hasCoeToFun.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (fun (_x : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) => M' -> (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29)) (LinearMap.hasCoeToFun.{u1, u3, u6, max u5 u7} R R₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f (HSub.hSub.{u6, u6, u6} M' M' M' (instHSub.{u6} M' (SubNegMonoid.toHasSub.{u6} M' (AddGroup.toSubNegMonoid.{u6} M' (AddCommGroup.toAddGroup.{u6} M' _inst_13)))) x y)) z) (HSub.hSub.{u7, u7, u7} P' P' P' (instHSub.{u7} P' (SubNegMonoid.toHasSub.{u7} P' (AddGroup.toSubNegMonoid.{u7} P' (AddCommGroup.toAddGroup.{u7} P' _inst_15)))) (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (fun (_x : LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) => N -> P') (LinearMap.hasCoeToFun.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (fun (_x : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) => M' -> (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29)) (LinearMap.hasCoeToFun.{u1, u3, u6, max u5 u7} R R₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f x) z) (coeFn.{max (succ u5) (succ u7), max (succ u5) (succ u7)} (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (fun (_x : LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) => N -> P') (LinearMap.hasCoeToFun.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) (coeFn.{max (succ u6) (succ (max u5 u7)), max (succ u6) (succ (max u5 u7))} (LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (fun (_x : LinearMap.{u1, u3, u6, max u5 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) => M' -> (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29)) (LinearMap.hasCoeToFun.{u1, u3, u6, max u5 u7} R R₂ M' (LinearMap.{u2, u4, u5, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u6} M' _inst_13) (LinearMap.addCommMonoid.{u2, u4, u5, u7} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.module.{u2, u4, u3, u5, u7} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u7} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f y) z))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {N : Type.{u3}} {M' : Type.{u5}} {P' : Type.{u4}} [_inst_6 : AddCommMonoid.{u3} N] [_inst_13 : AddCommGroup.{u5} M'] [_inst_15 : AddCommGroup.{u4} P'] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_26 : Module.{u7, u5} R M' _inst_1 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13)] [_inst_28 : Module.{u6, u4} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15)] [_inst_29 : Module.{u1, u4} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15)] [_inst_32 : SMulCommClass.{u1, u6, u4} S₂ R₂ P' (SMulZeroClass.toSMul.{u1, u4} S₂ P' (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P' (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P' (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (Module.toMulActionWithZero.{u1, u4} S₂ P' _inst_4 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_29)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P' (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P' (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P' (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (NegZeroClass.toZero.{u4} P' (SubNegZeroMonoid.toNegZeroClass.{u4} P' (SubtractionMonoid.toSubNegZeroMonoid.{u4} P' (SubtractionCommMonoid.toSubtractionMonoid.{u4} P' (AddCommGroup.toDivisionAddCommMonoid.{u4} P' _inst_15))))) (Module.toMulActionWithZero.{u6, u4} R₂ P' _inst_3 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_28))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) (x : M') (y : M') (z : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (HSub.hSub.{u5, u5, u5} M' M' M' (instHSub.{u5} M' (SubNegMonoid.toSub.{u5} M' (AddGroup.toSubNegMonoid.{u5} M' (AddCommGroup.toAddGroup.{u5} M' _inst_13)))) x y)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) (FunLike.coe.{max (max (succ u3) (succ u5)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f (HSub.hSub.{u5, u5, u5} M' M' M' (instHSub.{u5} M' (SubNegMonoid.toSub.{u5} M' (AddGroup.toSubNegMonoid.{u5} M' (AddCommGroup.toAddGroup.{u5} M' _inst_13)))) x y)) z) (HSub.hSub.{u4, u4, u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) (instHSub.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) (SubNegMonoid.toSub.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) (AddGroup.toSubNegMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) (AddCommGroup.toAddGroup.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') z) _inst_15)))) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) (FunLike.coe.{max (max (succ u3) (succ u5)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f x) z) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) y) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P') _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) (FunLike.coe.{max (max (succ u3) (succ u5)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M' (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P' _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29) _inst_1 _inst_3 (AddCommGroup.toAddCommMonoid.{u5} M' _inst_13) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂) _inst_26 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P' _inst_2 _inst_4 _inst_6 (AddCommGroup.toAddCommMonoid.{u4} P' _inst_15) _inst_17 _inst_29 σ₁₂ _inst_3 _inst_28 _inst_32) ρ₁₂) f y) z))
Case conversion may be inaccurate. Consider using '#align linear_map.map_sub₂ LinearMap.map_sub₂ₓ'. -/
theorem map_sub₂ (f : M' →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P') (x y z) : f (x - y) z = f x z - f y z :=
  (flip f z).map_sub _ _
#align linear_map.map_sub₂ LinearMap.map_sub₂

/- warning: linear_map.map_add₂ -> LinearMap.map_add₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (x₁ : M) (x₂ : M) (y : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toHasAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) x₁ x₂)) y) (HAdd.hAdd.{u7, u7, u7} P P P (instHAdd.{u7} P (AddZeroClass.toHasAdd.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7)))) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x₁) y) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x₂) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (x₁ : M) (x₂ : M) (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) x₁ x₂)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (HAdd.hAdd.{u5, u5, u5} M M M (instHAdd.{u5} M (AddZeroClass.toAdd.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)))) x₁ x₂)) y) (HAdd.hAdd.{u4, u4, u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (instHAdd.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddZeroClass.toAdd.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddMonoid.toAddZeroClass.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_7)))) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x₁) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x₁) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x₂) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x₂) y))
Case conversion may be inaccurate. Consider using '#align linear_map.map_add₂ LinearMap.map_add₂ₓ'. -/
theorem map_add₂ (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (x₁ x₂ y) : f (x₁ + x₂) y = f x₁ y + f x₂ y :=
  (flip f y).map_add _ _
#align linear_map.map_add₂ LinearMap.map_add₂

/- warning: linear_map.map_smul₂ -> LinearMap.map_smul₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {S₂ : Type.{u3}} [_inst_4 : Semiring.{u3} S₂] {M₂ : Type.{u4}} {N₂ : Type.{u5}} {P₂ : Type.{u6}} [_inst_8 : AddCommMonoid.{u4} M₂] [_inst_9 : AddCommMonoid.{u5} N₂] [_inst_10 : AddCommMonoid.{u6} P₂] [_inst_20 : Module.{u1, u4} R M₂ _inst_1 _inst_8] [_inst_21 : Module.{u2, u5} S N₂ _inst_2 _inst_9] [_inst_22 : Module.{u1, u6} R P₂ _inst_1 _inst_10] [_inst_23 : Module.{u3, u6} S₂ P₂ _inst_4 _inst_10] [_inst_33 : SMulCommClass.{u3, u1, u6} S₂ R P₂ (SMulZeroClass.toHasSmul.{u3, u6} S₂ P₂ (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (SMulWithZero.toSmulZeroClass.{u3, u6} S₂ P₂ (MulZeroClass.toHasZero.{u3} S₂ (MulZeroOneClass.toMulZeroClass.{u3} S₂ (MonoidWithZero.toMulZeroOneClass.{u3} S₂ (Semiring.toMonoidWithZero.{u3} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (MulActionWithZero.toSMulWithZero.{u3, u6} S₂ P₂ (Semiring.toMonoidWithZero.{u3} S₂ _inst_4) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (Module.toMulActionWithZero.{u3, u6} S₂ P₂ _inst_4 _inst_10 _inst_23)))) (SMulZeroClass.toHasSmul.{u1, u6} R P₂ (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (SMulWithZero.toSmulZeroClass.{u1, u6} R P₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (MulActionWithZero.toSMulWithZero.{u1, u6} R P₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (Module.toMulActionWithZero.{u1, u6} R P₂ _inst_1 _inst_10 _inst_22))))] {σ₁₂ : RingHom.{u2, u3} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u3} S₂ _inst_4)} (f : LinearMap.{u1, u1, u4, max u5 u6} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) (r : R) (x : M₂) (y : N₂), Eq.{succ u6} P₂ (coeFn.{max (succ u5) (succ u6), max (succ u5) (succ u6)} (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) (fun (_x : LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) => N₂ -> P₂) (LinearMap.hasCoeToFun.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) (coeFn.{max (succ u4) (succ (max u5 u6)), max (succ u4) (succ (max u5 u6))} (LinearMap.{u1, u1, u4, max u5 u6} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) (fun (_x : LinearMap.{u1, u1, u4, max u5 u6} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) => M₂ -> (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23)) (LinearMap.hasCoeToFun.{u1, u1, u4, max u5 u6} R R M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_1 _inst_1 _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) f (SMul.smul.{u1, u4} R M₂ (SMulZeroClass.toHasSmul.{u1, u4} R M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_8))) (SMulWithZero.toSmulZeroClass.{u1, u4} R M₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_8))) (MulActionWithZero.toSMulWithZero.{u1, u4} R M₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_8))) (Module.toMulActionWithZero.{u1, u4} R M₂ _inst_1 _inst_8 _inst_20)))) r x)) y) (SMul.smul.{u1, u6} R P₂ (SMulZeroClass.toHasSmul.{u1, u6} R P₂ (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (SMulWithZero.toSmulZeroClass.{u1, u6} R P₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (MulActionWithZero.toSMulWithZero.{u1, u6} R P₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u6} P₂ (AddMonoid.toAddZeroClass.{u6} P₂ (AddCommMonoid.toAddMonoid.{u6} P₂ _inst_10))) (Module.toMulActionWithZero.{u1, u6} R P₂ _inst_1 _inst_10 _inst_22)))) r (coeFn.{max (succ u5) (succ u6), max (succ u5) (succ u6)} (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) (fun (_x : LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) => N₂ -> P₂) (LinearMap.hasCoeToFun.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) (coeFn.{max (succ u4) (succ (max u5 u6)), max (succ u4) (succ (max u5 u6))} (LinearMap.{u1, u1, u4, max u5 u6} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) (fun (_x : LinearMap.{u1, u1, u4, max u5 u6} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) => M₂ -> (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23)) (LinearMap.hasCoeToFun.{u1, u1, u4, max u5 u6} R R M₂ (LinearMap.{u2, u3, u5, u6} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_1 _inst_1 _inst_8 (LinearMap.addCommMonoid.{u2, u3, u5, u6} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.module.{u2, u3, u1, u5, u6} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) f x) y))
but is expected to have type
  forall {R : Type.{u6}} [_inst_1 : Semiring.{u6} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M₂ : Type.{u5}} {N₂ : Type.{u3}} {P₂ : Type.{u4}} [_inst_8 : AddCommMonoid.{u5} M₂] [_inst_9 : AddCommMonoid.{u3} N₂] [_inst_10 : AddCommMonoid.{u4} P₂] [_inst_20 : Module.{u6, u5} R M₂ _inst_1 _inst_8] [_inst_21 : Module.{u2, u3} S N₂ _inst_2 _inst_9] [_inst_22 : Module.{u6, u4} R P₂ _inst_1 _inst_10] [_inst_23 : Module.{u1, u4} S₂ P₂ _inst_4 _inst_10] [_inst_33 : SMulCommClass.{u1, u6, u4} S₂ R P₂ (SMulZeroClass.toSMul.{u1, u4} S₂ P₂ (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P₂ (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (Module.toMulActionWithZero.{u1, u4} S₂ P₂ _inst_4 _inst_10 _inst_23)))) (SMulZeroClass.toSMul.{u6, u4} R P₂ (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (SMulWithZero.toSMulZeroClass.{u6, u4} R P₂ (MonoidWithZero.toZero.{u6} R (Semiring.toMonoidWithZero.{u6} R _inst_1)) (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (MulActionWithZero.toSMulWithZero.{u6, u4} R P₂ (Semiring.toMonoidWithZero.{u6} R _inst_1) (AddMonoid.toZero.{u4} P₂ (AddCommMonoid.toAddMonoid.{u4} P₂ _inst_10)) (Module.toMulActionWithZero.{u6, u4} R P₂ _inst_1 _inst_10 _inst_22))))] {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u6, u6, u5, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) M₂ (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) (r : R) (x : M₂) (y : N₂), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M₂) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) (HSMul.hSMul.{u6, u5, u5} R M₂ M₂ (instHSMul.{u6, u5} R M₂ (SMulZeroClass.toSMul.{u6, u5} R M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (SMulWithZero.toSMulZeroClass.{u6, u5} R M₂ (MonoidWithZero.toZero.{u6} R (Semiring.toMonoidWithZero.{u6} R _inst_1)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (MulActionWithZero.toSMulWithZero.{u6, u5} R M₂ (Semiring.toMonoidWithZero.{u6} R _inst_1) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (Module.toMulActionWithZero.{u6, u5} R M₂ _inst_1 _inst_8 _inst_20))))) r x)) N₂ (fun (_x : N₂) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u6, u6, u5, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) M₂ (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) M₂ (fun (_x : M₂) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M₂) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u5, max u3 u4} R R M₂ (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_1 _inst_1 _inst_8 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) f (HSMul.hSMul.{u6, u5, u5} R M₂ M₂ (instHSMul.{u6, u5} R M₂ (SMulZeroClass.toSMul.{u6, u5} R M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (SMulWithZero.toSMulZeroClass.{u6, u5} R M₂ (MonoidWithZero.toZero.{u6} R (Semiring.toMonoidWithZero.{u6} R _inst_1)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (MulActionWithZero.toSMulWithZero.{u6, u5} R M₂ (Semiring.toMonoidWithZero.{u6} R _inst_1) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_8)) (Module.toMulActionWithZero.{u6, u5} R M₂ _inst_1 _inst_8 _inst_20))))) r x)) y) (HSMul.hSMul.{u6, u4, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (instHSMul.{u6, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (SMulZeroClass.toSMul.{u6, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) _inst_10)) (SMulWithZero.toSMulZeroClass.{u6, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (MonoidWithZero.toZero.{u6} R (Semiring.toMonoidWithZero.{u6} R _inst_1)) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) _inst_10)) (MulActionWithZero.toSMulWithZero.{u6, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (Semiring.toMonoidWithZero.{u6} R _inst_1) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) _inst_10)) (Module.toMulActionWithZero.{u6, u4} R ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) y) _inst_1 _inst_10 _inst_22))))) r (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M₂) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) x) N₂ (fun (_x : N₂) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N₂) => P₂) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u6, u6, u5, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) M₂ (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_8 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33)) M₂ (fun (_x : M₂) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M₂) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u5, max u3 u4} R R M₂ (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N₂ P₂ _inst_9 _inst_10 _inst_21 _inst_23) _inst_1 _inst_1 _inst_8 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂) _inst_20 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R N₂ P₂ _inst_2 _inst_4 _inst_9 _inst_10 _inst_21 _inst_23 σ₁₂ _inst_1 _inst_22 _inst_33) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) f x) y))
Case conversion may be inaccurate. Consider using '#align linear_map.map_smul₂ LinearMap.map_smul₂ₓ'. -/
theorem map_smul₂ (f : M₂ →ₗ[R] N₂ →ₛₗ[σ₁₂] P₂) (r : R) (x y) : f (r • x) y = r • f x y :=
  (flip f y).map_smul _ _
#align linear_map.map_smul₂ LinearMap.map_smul₂

/- warning: linear_map.map_smulₛₗ₂ -> LinearMap.map_smulₛₗ₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (r : R) (x : M) (y : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (SMul.smul.{u1, u5} R M (SMulZeroClass.toHasSmul.{u1, u5} R M (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u5} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u5} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u5} M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5))) (Module.toMulActionWithZero.{u1, u5} R M _inst_1 _inst_5 _inst_16)))) r x)) y) (SMul.smul.{u3, u7} R₂ P (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18)))) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) (fun (_x : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) => R -> R₂) (RingHom.hasCoeToFun.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)) ρ₁₂ r) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (r : R) (x : M) (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (HSMul.hSMul.{u7, u5, u5} R M M (instHSMul.{u7, u5} R M (SMulZeroClass.toSMul.{u7, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u7, u5} R M (MonoidWithZero.toZero.{u7} R (Semiring.toMonoidWithZero.{u7} R _inst_1)) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u7, u5} R M (Semiring.toMonoidWithZero.{u7} R _inst_1) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (Module.toMulActionWithZero.{u7, u5} R M _inst_1 _inst_5 _inst_16))))) r x)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (HSMul.hSMul.{u7, u5, u5} R M M (instHSMul.{u7, u5} R M (SMulZeroClass.toSMul.{u7, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u7, u5} R M (MonoidWithZero.toZero.{u7} R (Semiring.toMonoidWithZero.{u7} R _inst_1)) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u7, u5} R M (Semiring.toMonoidWithZero.{u7} R _inst_1) (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_5)) (Module.toMulActionWithZero.{u7, u5} R M _inst_1 _inst_5 _inst_16))))) r x)) y) (HSMul.hSMul.{u6, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (instHSMul.{u6, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (SMulZeroClass.toSMul.{u6, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (MonoidWithZero.toZero.{u6} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) (Semiring.toMonoidWithZero.{u6} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) _inst_3)) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (Semiring.toMonoidWithZero.{u6} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) _inst_3) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_7)) (Module.toMulActionWithZero.{u6, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) r) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) _inst_3 _inst_7 _inst_18))))) (FunLike.coe.{max (succ u7) (succ u6), succ u7, succ u6} (RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R₂) _x) (MulHomClass.toFunLike.{max u7 u6, u7, u6} (RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)) R R₂ (NonUnitalNonAssocSemiring.toMul.{u7} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u7} R (Semiring.toNonAssocSemiring.{u7} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u6} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u6} R₂ (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3))) (NonUnitalRingHomClass.toMulHomClass.{max u7 u6, u7, u6} (RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)) R R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u7} R (Semiring.toNonAssocSemiring.{u7} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u6} R₂ (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)) (RingHomClass.toNonUnitalRingHomClass.{max u7 u6, u7, u6} (RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)) R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3) (RingHom.instRingHomClassRingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3))))) ρ₁₂ r) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) y))
Case conversion may be inaccurate. Consider using '#align linear_map.map_smulₛₗ₂ LinearMap.map_smulₛₗ₂ₓ'. -/
theorem map_smulₛₗ₂ (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (r : R) (x y) : f (r • x) y = ρ₁₂ r • f x y :=
  (flip f y).map_smulₛₗ _ _
#align linear_map.map_smulₛₗ₂ LinearMap.map_smulₛₗ₂

/- warning: linear_map.map_sum₂ -> LinearMap.map_sum₂ is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} {ι : Type.{u8}} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (t : Finset.{u8} ι) (x : ι -> M) (y : N), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (Finset.sum.{u5, u8} M ι _inst_5 t (fun (i : ι) => x i))) y) (Finset.sum.{u7, u8} P ι _inst_7 t (fun (i : ι) => coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (x i)) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} {ι : Type.{u8}} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (t : Finset.{u8} ι) (x : ι -> M) (y : N), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (Finset.sum.{u5, u8} M ι _inst_5 t (fun (i : ι) => x i))) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (Finset.sum.{u5, u8} M ι _inst_5 t (fun (i : ι) => x i))) y) (Finset.sum.{u4, u8} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) y) ι _inst_7 t (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (x i)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (x i)) y))
Case conversion may be inaccurate. Consider using '#align linear_map.map_sum₂ LinearMap.map_sum₂ₓ'. -/
theorem map_sum₂ {ι : Type _} (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (t : Finset ι) (x : ι → M) (y) :
    f (∑ i in t, x i) y = ∑ i in t, f (x i) y :=
  (flip f y).map_sum
#align linear_map.map_sum₂ LinearMap.map_sum₂

#print LinearMap.domRestrict₂ /-
/-- Restricting a bilinear map in the second entry -/
def domRestrict₂ (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (q : Submodule S N) : M →ₛₗ[ρ₁₂] q →ₛₗ[σ₁₂] P
    where
  toFun m := (f m).domRestrict q
  map_add' m₁ m₂ := LinearMap.ext fun _ => by simp only [map_add, dom_restrict_apply, add_apply]
  map_smul' c m :=
    LinearMap.ext fun _ => by simp only [f.map_smulₛₗ, dom_restrict_apply, smul_apply]
#align linear_map.dom_restrict₂ LinearMap.domRestrict₂
-/

/- warning: linear_map.dom_restrict₂_apply -> LinearMap.domRestrict₂_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (q : Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) (x : M) (y : coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) => (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.domRestrict₂.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f q) x) y) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) ((fun (a : Type.{u6}) (b : Type.{u6}) [self : HasLiftT.{succ u6, succ u6} a b] => self.0) (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (HasLiftT.mk.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (CoeTCₓ.coe.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (coeBase.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (coeSubtype.{succ u6} N (fun (x : N) => Membership.Mem.{u6, u6} N (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) (SetLike.hasMem.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) x q))))) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (q : Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (x : M) (y : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) x) (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) (fun (_x : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.domRestrict₂.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f q) x) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) x) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f x) (Subtype.val.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Set.{u3} N) (Set.instMembershipSet.{u3} N) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17) q)) y))
Case conversion may be inaccurate. Consider using '#align linear_map.dom_restrict₂_apply LinearMap.domRestrict₂_applyₓ'. -/
theorem domRestrict₂_apply (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (q : Submodule S N) (x : M) (y : q) :
    f.domRestrict₂ q x y = f x y :=
  rfl
#align linear_map.dom_restrict₂_apply LinearMap.domRestrict₂_apply

#print LinearMap.domRestrict₁₂ /-
/-- Restricting a bilinear map in both components -/
def domRestrict₁₂ (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (p : Submodule R M) (q : Submodule S N) :
    p →ₛₗ[ρ₁₂] q →ₛₗ[σ₁₂] P :=
  (f.domRestrict p).domRestrict₂ q
#align linear_map.dom_restrict₁₂ LinearMap.domRestrict₁₂
-/

/- warning: linear_map.dom_restrict₁₂_apply -> LinearMap.domRestrict₁₂_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : Semiring.{u1} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u3}} [_inst_3 : Semiring.{u3} R₂] {S₂ : Type.{u4}} [_inst_4 : Semiring.{u4} S₂] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_16 : Module.{u1, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u6} S N _inst_2 _inst_6] [_inst_18 : Module.{u3, u7} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u4, u7} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u4, u3, u7} S₂ R₂ P (SMulZeroClass.toHasSmul.{u4, u7} S₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u4, u7} S₂ P (MulZeroClass.toHasZero.{u4} S₂ (MulZeroOneClass.toMulZeroClass.{u4} S₂ (MonoidWithZero.toMulZeroOneClass.{u4} S₂ (Semiring.toMonoidWithZero.{u4} S₂ _inst_4)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u4, u7} S₂ P (Semiring.toMonoidWithZero.{u4} S₂ _inst_4) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u4, u7} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toHasSmul.{u3, u7} R₂ P (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (SMulWithZero.toSmulZeroClass.{u3, u7} R₂ P (MulZeroClass.toHasZero.{u3} R₂ (MulZeroOneClass.toMulZeroClass.{u3} R₂ (MonoidWithZero.toMulZeroOneClass.{u3} R₂ (Semiring.toMonoidWithZero.{u3} R₂ _inst_3)))) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (MulActionWithZero.toSMulWithZero.{u3, u7} R₂ P (Semiring.toMonoidWithZero.{u3} R₂ _inst_3) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u1, u3} R R₂ (Semiring.toNonAssocSemiring.{u1} R _inst_1) (Semiring.toNonAssocSemiring.{u3} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u4} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u4} S₂ _inst_4)} (f : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (p : Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) (q : Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) (x : coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) (y : coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q), Eq.{succ u7} P (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) => (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) (Submodule.addCommMonoid.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (Submodule.module.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) (Submodule.addCommMonoid.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (Submodule.module.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_1 _inst_3 (Submodule.addCommMonoid.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (Submodule.module.{u1, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u6} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.domRestrict₁₂.{u1, u2, u3, u4, u5, u6, u7} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f p q) x) y) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (fun (_x : LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) => N -> P) (LinearMap.hasCoeToFun.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) => M -> (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₂ M (LinearMap.{u2, u4, u6, u7} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u4, u6, u7} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.module.{u2, u4, u3, u6, u7} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f ((fun (a : Type.{u5}) (b : Type.{u5}) [self : HasLiftT.{succ u5, succ u5} a b] => self.0) (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) M (HasLiftT.mk.{succ u5, succ u5} (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) M (CoeTCₓ.coe.{succ u5, succ u5} (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) M (coeBase.{succ u5, succ u5} (coeSort.{succ u5, succ (succ u5)} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) Type.{u5} (SetLike.hasCoeToSort.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) p) M (coeSubtype.{succ u5} M (fun (x : M) => Membership.Mem.{u5, u5} M (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.hasMem.{u5, u5} (Submodule.{u1, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u1, u5} R M _inst_1 _inst_5 _inst_16)) x p))))) x)) ((fun (a : Type.{u6}) (b : Type.{u6}) [self : HasLiftT.{succ u6, succ u6} a b] => self.0) (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (HasLiftT.mk.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (CoeTCₓ.coe.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (coeBase.{succ u6, succ u6} (coeSort.{succ u6, succ (succ u6)} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) Type.{u6} (SetLike.hasCoeToSort.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) q) N (coeSubtype.{succ u6} N (fun (x : N) => Membership.Mem.{u6, u6} N (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) (SetLike.hasMem.{u6, u6} (Submodule.{u2, u6} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u6} S N _inst_2 _inst_6 _inst_17)) x q))))) y))
but is expected to have type
  forall {R : Type.{u7}} [_inst_1 : Semiring.{u7} R] {S : Type.{u2}} [_inst_2 : Semiring.{u2} S] {R₂ : Type.{u6}} [_inst_3 : Semiring.{u6} R₂] {S₂ : Type.{u1}} [_inst_4 : Semiring.{u1} S₂] {M : Type.{u5}} {N : Type.{u3}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_16 : Module.{u7, u5} R M _inst_1 _inst_5] [_inst_17 : Module.{u2, u3} S N _inst_2 _inst_6] [_inst_18 : Module.{u6, u4} R₂ P _inst_3 _inst_7] [_inst_19 : Module.{u1, u4} S₂ P _inst_4 _inst_7] [_inst_30 : SMulCommClass.{u1, u6, u4} S₂ R₂ P (SMulZeroClass.toSMul.{u1, u4} S₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u1, u4} S₂ P (MonoidWithZero.toZero.{u1} S₂ (Semiring.toMonoidWithZero.{u1} S₂ _inst_4)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u1, u4} S₂ P (Semiring.toMonoidWithZero.{u1} S₂ _inst_4) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u1, u4} S₂ P _inst_4 _inst_7 _inst_19)))) (SMulZeroClass.toSMul.{u6, u4} R₂ P (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (SMulWithZero.toSMulZeroClass.{u6, u4} R₂ P (MonoidWithZero.toZero.{u6} R₂ (Semiring.toMonoidWithZero.{u6} R₂ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (MulActionWithZero.toSMulWithZero.{u6, u4} R₂ P (Semiring.toMonoidWithZero.{u6} R₂ _inst_3) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u6, u4} R₂ P _inst_3 _inst_7 _inst_18))))] {ρ₁₂ : RingHom.{u7, u6} R R₂ (Semiring.toNonAssocSemiring.{u7} R _inst_1) (Semiring.toNonAssocSemiring.{u6} R₂ _inst_3)} {σ₁₂ : RingHom.{u2, u1} S S₂ (Semiring.toNonAssocSemiring.{u2} S _inst_2) (Semiring.toNonAssocSemiring.{u1} S₂ _inst_4)} (f : LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (p : Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (q : Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (x : Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) (y : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => P) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) x) (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) (fun (_x : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ (Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) (Submodule.addCommMonoid.{u7, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (Submodule.module.{u7, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) (Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) (fun (_x : Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ (Subtype.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) (SetLike.instMembership.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16)) x p)) (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19) _inst_1 _inst_3 (Submodule.addCommMonoid.{u7, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂) (Submodule.module.{u7, u5} R M _inst_1 _inst_5 _inst_16 p) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ (Subtype.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17)) x q)) P _inst_2 _inst_4 (Submodule.addCommMonoid.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_7 (Submodule.module.{u2, u3} S N _inst_2 _inst_6 _inst_17 q) _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) (LinearMap.domRestrict₁₂.{u7, u2, u6, u1, u5, u3, u4} R _inst_1 S _inst_2 R₂ _inst_3 S₂ _inst_4 M N P _inst_5 _inst_6 _inst_7 _inst_16 _inst_17 _inst_18 _inst_19 _inst_30 ρ₁₂ σ₁₂ f p q) x) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) (Subtype.val.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Set.{u5} M) (Set.instMembershipSet.{u5} M) x (SetLike.coe.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16) p)) x)) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u7, u6, u5, max u4 u3} R R₂ _inst_1 _inst_3 ρ₁₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _x) (LinearMap.instFunLikeLinearMap.{u7, u6, u5, max u3 u4} R R₂ M (LinearMap.{u2, u1, u3, u4} S S₂ _inst_2 _inst_4 σ₁₂ N P _inst_6 _inst_7 _inst_17 _inst_19) _inst_1 _inst_3 _inst_5 (LinearMap.addCommMonoid.{u2, u1, u3, u4} S S₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂) _inst_16 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u1, u6, u3, u4} S S₂ R₂ N P _inst_2 _inst_4 _inst_6 _inst_7 _inst_17 _inst_19 σ₁₂ _inst_3 _inst_18 _inst_30) ρ₁₂) f (Subtype.val.{succ u5} M (fun (x : M) => Membership.mem.{u5, u5} M (Set.{u5} M) (Set.instMembershipSet.{u5} M) x (SetLike.coe.{u5, u5} (Submodule.{u7, u5} R M _inst_1 _inst_5 _inst_16) M (Submodule.setLike.{u7, u5} R M _inst_1 _inst_5 _inst_16) p)) x)) (Subtype.val.{succ u3} N (fun (x : N) => Membership.mem.{u3, u3} N (Set.{u3} N) (Set.instMembershipSet.{u3} N) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} S N _inst_2 _inst_6 _inst_17) N (Submodule.setLike.{u2, u3} S N _inst_2 _inst_6 _inst_17) q)) y))
Case conversion may be inaccurate. Consider using '#align linear_map.dom_restrict₁₂_apply LinearMap.domRestrict₁₂_applyₓ'. -/
theorem domRestrict₁₂_apply (f : M →ₛₗ[ρ₁₂] N →ₛₗ[σ₁₂] P) (p : Submodule R M) (q : Submodule S N)
    (x : p) (y : q) : f.domRestrict₁₂ p q x y = f x y :=
  rfl
#align linear_map.dom_restrict₁₂_apply LinearMap.domRestrict₁₂_apply

end Semiring

section CommSemiring

variable {R : Type _} [CommSemiring R] {R₂ : Type _} [CommSemiring R₂]

variable {R₃ : Type _} [CommSemiring R₃] {R₄ : Type _} [CommSemiring R₄]

variable {M : Type _} {N : Type _} {P : Type _} {Q : Type _}

variable {Mₗ : Type _} {Nₗ : Type _} {Pₗ : Type _} {Qₗ Qₗ' : Type _}

variable [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q]

variable [AddCommMonoid Mₗ] [AddCommMonoid Nₗ] [AddCommMonoid Pₗ]

variable [AddCommMonoid Qₗ] [AddCommMonoid Qₗ']

variable [Module R M] [Module R₂ N] [Module R₃ P] [Module R₄ Q]

variable [Module R Mₗ] [Module R Nₗ] [Module R Pₗ] [Module R Qₗ] [Module R Qₗ']

variable {σ₁₂ : R →+* R₂} {σ₂₃ : R₂ →+* R₃} {σ₁₃ : R →+* R₃}

variable {σ₄₂ : R₄ →+* R₂} {σ₄₃ : R₄ →+* R₃}

variable [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₄₂ σ₂₃ σ₄₃]

variable (R)

/- warning: linear_map.mk₂ -> LinearMap.mk₂ is a dubious translation:
lean 3 declaration is
  forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : M -> Nₗ -> Pₗ), (forall (m₁ : M) (m₂ : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toHasAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14)))) c m) n) (SMul.smul.{u1, u4} R Pₗ (SMulZeroClass.toHasSmul.{u1, u4} R Pₗ (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (SMulWithZero.toSmulZeroClass.{u1, u4} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) c (f m n))) -> (forall (m : M) (n₁ : Nₗ) (n₂ : Nₗ), Eq.{succ u4} Pₗ (f m (HAdd.hAdd.{u3, u3, u3} Nₗ Nₗ Nₗ (instHAdd.{u3} Nₗ (AddZeroClass.toHasAdd.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)))) n₁ n₂)) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toHasAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m n₁) (f m n₂))) -> (forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f m (SMul.smul.{u1, u3} R Nₗ (SMulZeroClass.toHasSmul.{u1, u3} R Nₗ (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (SMulWithZero.toSmulZeroClass.{u1, u3} R Nₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (MulActionWithZero.toSMulWithZero.{u1, u3} R Nₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (Module.toMulActionWithZero.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_19)))) c n)) (SMul.smul.{u1, u4} R Pₗ (SMulZeroClass.toHasSmul.{u1, u4} R Pₗ (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (SMulWithZero.toSmulZeroClass.{u1, u4} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) c (f m n))) -> (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.mk₂._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)))
but is expected to have type
  forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : M -> Nₗ -> Pₗ), (forall (m₁ : M) (m₂ : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m₁ n) (f m₂ n))) -> (forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14))))) c m) n) (HSMul.hSMul.{u1, u4, u4} R Pₗ Pₗ (instHSMul.{u1, u4} R Pₗ (SMulZeroClass.toSMul.{u1, u4} R Pₗ (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (SMulWithZero.toSMulZeroClass.{u1, u4} R Pₗ (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) c (f m n))) -> (forall (m : M) (n₁ : Nₗ) (n₂ : Nₗ), Eq.{succ u4} Pₗ (f m (HAdd.hAdd.{u3, u3, u3} Nₗ Nₗ Nₗ (instHAdd.{u3} Nₗ (AddZeroClass.toAdd.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)))) n₁ n₂)) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m n₁) (f m n₂))) -> (forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f m (HSMul.hSMul.{u1, u3, u3} R Nₗ Nₗ (instHSMul.{u1, u3} R Nₗ (SMulZeroClass.toSMul.{u1, u3} R Nₗ (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (SMulWithZero.toSMulZeroClass.{u1, u3} R Nₗ (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (MulActionWithZero.toSMulWithZero.{u1, u3} R Nₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_19))))) c n)) (HSMul.hSMul.{u1, u4, u4} R Pₗ Pₗ (instHSMul.{u1, u4} R Pₗ (SMulZeroClass.toSMul.{u1, u4} R Pₗ (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (SMulWithZero.toSMulZeroClass.{u1, u4} R Pₗ (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) c (f m n))) -> (LinearMap.{u1, u1, u2, max u4 u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))))
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂ LinearMap.mk₂ₓ'. -/
/-- Create a bilinear map from a function that is linear in each component.

This is a shorthand for `mk₂'` for the common case when `R = S`. -/
def mk₂ (f : M → Nₗ → Pₗ) (H1 : ∀ m₁ m₂ n, f (m₁ + m₂) n = f m₁ n + f m₂ n)
    (H2 : ∀ (c : R) (m n), f (c • m) n = c • f m n)
    (H3 : ∀ m n₁ n₂, f m (n₁ + n₂) = f m n₁ + f m n₂)
    (H4 : ∀ (c : R) (m n), f m (c • n) = c • f m n) : M →ₗ[R] Nₗ →ₗ[R] Pₗ :=
  mk₂' R R f H1 H2 H3 H4
#align linear_map.mk₂ LinearMap.mk₂

/- warning: linear_map.mk₂_apply -> LinearMap.mk₂_apply is a dubious translation:
lean 3 declaration is
  forall (R : Type.{u1}) [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : M -> Nₗ -> Pₗ) {H1 : forall (m₁ : M) (m₂ : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toHasAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14)))) c m) n) (SMul.smul.{u1, u4} R Pₗ (SMulZeroClass.toHasSmul.{u1, u4} R Pₗ (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (SMulWithZero.toSmulZeroClass.{u1, u4} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) c (f m n))} {H3 : forall (m : M) (n₁ : Nₗ) (n₂ : Nₗ), Eq.{succ u4} Pₗ (f m (HAdd.hAdd.{u3, u3, u3} Nₗ Nₗ Nₗ (instHAdd.{u3} Nₗ (AddZeroClass.toHasAdd.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)))) n₁ n₂)) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toHasAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m n₁) (f m n₂))} {H4 : forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f m (SMul.smul.{u1, u3} R Nₗ (SMulZeroClass.toHasSmul.{u1, u3} R Nₗ (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (SMulWithZero.toSmulZeroClass.{u1, u3} R Nₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (MulActionWithZero.toSMulWithZero.{u1, u3} R Nₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u3} Nₗ (AddMonoid.toAddZeroClass.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10))) (Module.toMulActionWithZero.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_19)))) c n)) (SMul.smul.{u1, u4} R Pₗ (SMulZeroClass.toHasSmul.{u1, u4} R Pₗ (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (SMulWithZero.toSmulZeroClass.{u1, u4} R Pₗ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (MulActionWithZero.toSMulWithZero.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) c (f m n))} (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => Nₗ -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u4)), max (succ u2) (succ (max u3 u4))} (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.mk₂._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.mk₂._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => M -> (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u4} R R M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.mk₂._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.mk₂.{u1, u2, u3, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f H1 H2 H3 H4) m) n) (f m n)
but is expected to have type
  forall (R : Type.{u2}) [_inst_1 : CommSemiring.{u2} R] {M : Type.{u3}} {Nₗ : Type.{u1}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_10 : AddCommMonoid.{u1} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_5] [_inst_19 : Module.{u2, u1} R Nₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10] [_inst_20 : Module.{u2, u4} R Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_11] (f : M -> Nₗ -> Pₗ) {H1 : forall (m₁ : M) (m₂ : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)))) m₁ m₂) n) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m₁ n) (f m₂ n))} {H2 : forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_5)) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_5 _inst_14))))) c m) n) (HSMul.hSMul.{u2, u4, u4} R Pₗ Pₗ (instHSMul.{u2, u4} R Pₗ (SMulZeroClass.toSMul.{u2, u4} R Pₗ (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (SMulWithZero.toSMulZeroClass.{u2, u4} R Pₗ (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (MulActionWithZero.toSMulWithZero.{u2, u4} R Pₗ (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u2, u4} R Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_11 _inst_20))))) c (f m n))} {H3 : forall (m : M) (n₁ : Nₗ) (n₂ : Nₗ), Eq.{succ u4} Pₗ (f m (HAdd.hAdd.{u1, u1, u1} Nₗ Nₗ Nₗ (instHAdd.{u1} Nₗ (AddZeroClass.toAdd.{u1} Nₗ (AddMonoid.toAddZeroClass.{u1} Nₗ (AddCommMonoid.toAddMonoid.{u1} Nₗ _inst_10)))) n₁ n₂)) (HAdd.hAdd.{u4, u4, u4} Pₗ Pₗ Pₗ (instHAdd.{u4} Pₗ (AddZeroClass.toAdd.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)))) (f m n₁) (f m n₂))} {H4 : forall (c : R) (m : M) (n : Nₗ), Eq.{succ u4} Pₗ (f m (HSMul.hSMul.{u2, u1, u1} R Nₗ Nₗ (instHSMul.{u2, u1} R Nₗ (SMulZeroClass.toSMul.{u2, u1} R Nₗ (AddMonoid.toZero.{u1} Nₗ (AddCommMonoid.toAddMonoid.{u1} Nₗ _inst_10)) (SMulWithZero.toSMulZeroClass.{u2, u1} R Nₗ (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} Nₗ (AddCommMonoid.toAddMonoid.{u1} Nₗ _inst_10)) (MulActionWithZero.toSMulWithZero.{u2, u1} R Nₗ (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u1} Nₗ (AddCommMonoid.toAddMonoid.{u1} Nₗ _inst_10)) (Module.toMulActionWithZero.{u2, u1} R Nₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_19))))) c n)) (HSMul.hSMul.{u2, u4, u4} R Pₗ Pₗ (instHSMul.{u2, u4} R Pₗ (SMulZeroClass.toSMul.{u2, u4} R Pₗ (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (SMulWithZero.toSMulZeroClass.{u2, u4} R Pₗ (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (MulActionWithZero.toSMulWithZero.{u2, u4} R Pₗ (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u2, u4} R Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_11 _inst_20))))) c (f m n))} (m : M) (n : Nₗ), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) n) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u2, u1, u4} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) m) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, max (succ u1) (succ u4)} (LinearMap.{u2, u2, u3, max u4 u1} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) M (LinearMap.{u2, u2, u1, u4} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u1, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_20 (smulCommClass_self.{u2, u4} R Pₗ (CommSemiring.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u4} R Pₗ (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u2, u4} R Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_11 _inst_20))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u2, u2, u1, u4} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u4} R R M (LinearMap.{u2, u2, u1, u4} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u2, u2, u1, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_20 (smulCommClass_self.{u2, u4} R Pₗ (CommSemiring.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u4} R Pₗ (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u2, u4} R Pₗ (CommSemiring.toSemiring.{u2} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (LinearMap.mk₂.{u2, u3, u1, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f H1 H2 H3 H4) m) n) (f m n)
Case conversion may be inaccurate. Consider using '#align linear_map.mk₂_apply LinearMap.mk₂_applyₓ'. -/
@[simp]
theorem mk₂_apply (f : M → Nₗ → Pₗ) {H1 H2 H3 H4} (m : M) (n : Nₗ) :
    (mk₂ R f H1 H2 H3 H4 : M →ₗ[R] Nₗ →ₗ[R] Pₗ) m n = f m n :=
  rfl
#align linear_map.mk₂_apply LinearMap.mk₂_apply

variable (R M N P)

#print LinearMap.lflip /-
/-- Given a linear map from `M` to linear maps from `N` to `P`, i.e., a bilinear map `M → N → P`,
change the order of variables and get a linear map from `N` to linear maps from `M` to `P`. -/
def lflip : (M →ₛₗ[σ₁₃] N →ₛₗ[σ₂₃] P) →ₗ[R₃] N →ₛₗ[σ₂₃] M →ₛₗ[σ₁₃] P
    where
  toFun := flip
  map_add' _ _ := rfl
  map_smul' _ _ := rfl
#align linear_map.lflip LinearMap.lflip
-/

variable {R M N P}

variable (f : M →ₛₗ[σ₁₃] N →ₛₗ[σ₂₃] P)

/- warning: linear_map.lflip_apply -> LinearMap.lflip_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {R₂ : Type.{u2}} [_inst_2 : CommSemiring.{u2} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {M : Type.{u4}} {N : Type.{u5}} {P : Type.{u6}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_6 : AddCommMonoid.{u5} N] [_inst_7 : AddCommMonoid.{u6} P] [_inst_14 : Module.{u1, u4} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_15 : Module.{u2, u5} R₂ N (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] {σ₂₃ : RingHom.{u2, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u1, u3} R R₃ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} (f : LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u6} P (AddMonoid.toAddZeroClass.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7))) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (m : M) (n : N), Eq.{succ u6} P (coeFn.{max (succ u4) (succ u6), max (succ u4) (succ u6)} (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (fun (_x : LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) => M -> P) (LinearMap.hasCoeToFun.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (coeFn.{max (succ u5) (succ (max u4 u6)), max (succ u5) (succ (max u4 u6))} (LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (fun (_x : LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) => N -> (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16)) (LinearMap.hasCoeToFun.{u2, u3, u5, max u4 u6} R₂ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃) (coeFn.{max (succ (max u4 u5 u6)) (succ (max u5 u4 u6)), max (succ (max u4 u5 u6)) (succ (max u5 u4 u6))} (LinearMap.{u3, u3, max u4 u5 u6, max u5 u4 u6} R₃ R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.addCommMonoid.{u1, u3, u4, max u5 u6} R R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃) (LinearMap.addCommMonoid.{u2, u3, u5, max u4 u6} R₂ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃) (LinearMap.module.{u1, u3, u3, u4, max u5 u6} R R₃ R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_3.{u2, u3, u5, u6} R₂ _inst_2 R₃ _inst_3 N P _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃)) (LinearMap.module.{u2, u3, u3, u5, max u4 u6} R₂ R₃ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_4.{u1, u3, u4, u6} R _inst_1 R₃ _inst_3 M P _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃))) (fun (_x : LinearMap.{u3, u3, max u4 u5 u6, max u5 u4 u6} R₃ R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.addCommMonoid.{u1, u3, u4, max u5 u6} R R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃) (LinearMap.addCommMonoid.{u2, u3, u5, max u4 u6} R₂ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃) (LinearMap.module.{u1, u3, u3, u4, max u5 u6} R R₃ R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_3.{u2, u3, u5, u6} R₂ _inst_2 R₃ _inst_3 N P _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃)) (LinearMap.module.{u2, u3, u3, u5, max u4 u6} R₂ R₃ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_4.{u1, u3, u4, u6} R _inst_1 R₃ _inst_3 M P _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃))) => (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) -> (LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)))) (LinearMap.hasCoeToFun.{u3, u3, max u4 u5 u6, max u5 u4 u6} R₃ R₃ (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.{u2, u3, u5, max u4 u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.addCommMonoid.{u1, u3, u4, max u5 u6} R R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃) (LinearMap.addCommMonoid.{u2, u3, u5, max u4 u6} R₂ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃) (LinearMap.module.{u1, u3, u3, u4, max u5 u6} R R₃ R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_3.{u2, u3, u5, u6} R₂ _inst_2 R₃ _inst_3 N P _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃)) (LinearMap.module.{u2, u3, u3, u5, max u4 u6} R₂ R₃ R₃ N (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lflip._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.lflip._proof_4.{u1, u3, u4, u6} R _inst_1 R₃ _inst_3 M P _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃)) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)))) (LinearMap.lflip.{u1, u2, u3, u4, u5, u6} R _inst_1 R₂ _inst_2 R₃ _inst_3 M N P _inst_5 _inst_6 _inst_7 _inst_14 _inst_15 _inst_16 σ₂₃ σ₁₃) f) n) m) (coeFn.{max (succ u5) (succ u6), max (succ u5) (succ u6)} (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (fun (_x : LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => N -> P) (LinearMap.hasCoeToFun.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (coeFn.{max (succ u4) (succ (max u5 u6)), max (succ u4) (succ (max u5 u6))} (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u6} P (AddMonoid.toAddZeroClass.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7))) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (fun (_x : LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u6} P (AddMonoid.toAddZeroClass.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7))) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) => M -> (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16)) (LinearMap.hasCoeToFun.{u1, u3, u4, max u5 u6} R R₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u6} P (AddMonoid.toAddZeroClass.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7))) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) f m) n)
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {R₂ : Type.{u1}} [_inst_2 : CommSemiring.{u1} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {M : Type.{u5}} {N : Type.{u2}} {P : Type.{u6}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u2} N] [_inst_7 : AddCommMonoid.{u6} P] [_inst_14 : Module.{u4, u5} R M (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5] [_inst_15 : Module.{u1, u2} R₂ N (CommSemiring.toSemiring.{u1} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] {σ₂₃ : RingHom.{u1, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u1} R₂ (CommSemiring.toSemiring.{u1} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u4, u3} R R₃ (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} (f : LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (m : M) (n : N), Eq.{succ u6} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) m) (FunLike.coe.{max (succ u5) (succ u6), succ u5, succ u6} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) n) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) _x) (LinearMap.instFunLikeLinearMap.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u6), succ u2, max (succ u5) (succ u6)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) => LinearMap.{u1, u3, u2, max u6 u5} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) f) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _x) (LinearMap.instFunLikeLinearMap.{u1, u3, u2, max u5 u6} R₂ R₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₂₃) (FunLike.coe.{max (max (succ u6) (succ u2)) (succ u5), max (max (succ u6) (succ u2)) (succ u5), max (max (succ u6) (succ u2)) (succ u5)} (LinearMap.{u3, u3, max (max u6 u2) u5, max (max u6 u5) u2} R₃ R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.{u1, u3, u2, max u6 u5} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.addCommMonoid.{u4, u3, u5, max u2 u6} R R₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) (LinearMap.addCommMonoid.{u1, u3, u2, max u5 u6} R₂ R₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₂₃) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, max u2 u6} R R₃ R₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u1, u3, u3, u3, u2, u6} R₂ R₃ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, max u5 u6} R₂ R₃ R₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u3, u3, u3, u5, u6} R R₃ R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))))) (LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (fun (_x : LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) => LinearMap.{u1, u3, u2, max u6 u5} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max (max u6 u2) u5, max (max u6 u2) u5} R₃ R₃ (LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.{u1, u3, u2, max u6 u5} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.addCommMonoid.{u4, u3, u5, max u2 u6} R R₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) (LinearMap.addCommMonoid.{u1, u3, u2, max u5 u6} R₂ R₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₂₃) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, max u2 u6} R R₃ R₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u1, u3, u3, u3, u2, u6} R₂ R₃ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, max u5 u6} R₂ R₃ R₃ N (LinearMap.{u4, u3, u5, u6} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 (LinearMap.addCommMonoid.{u4, u3, u5, u6} R R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) _inst_15 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u3, u3, u5, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u3, u3, u3, u5, u6} R R₃ R₃ R₃ M P (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (MonoidWithZero.toMonoid.{u3} R₃ (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (Module.toDistribMulAction.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))) (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)))) (LinearMap.lflip.{u4, u1, u3, u5, u2, u6} R _inst_1 R₂ _inst_2 R₃ _inst_3 M N P _inst_5 _inst_6 _inst_7 _inst_14 _inst_15 _inst_16 σ₂₃ σ₁₃) f) n) m) (FunLike.coe.{max (succ u2) (succ u6), succ u2, succ u6} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u6), succ u5, max (succ u2) (succ u6)} (LinearMap.{u4, u3, u5, max u6 u2} R R₃ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _x) (LinearMap.instFunLikeLinearMap.{u4, u3, u5, max u2 u6} R R₃ M (LinearMap.{u1, u3, u2, u6} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u1, u3, u2, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u3, u3, u2, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7)) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) f m) n)
Case conversion may be inaccurate. Consider using '#align linear_map.lflip_apply LinearMap.lflip_applyₓ'. -/
@[simp]
theorem lflip_apply (m : M) (n : N) : lflip R M N P f n m = f m n :=
  rfl
#align linear_map.lflip_apply LinearMap.lflip_apply

variable (R Pₗ)

#print LinearMap.lcomp /-
/-- Composing a linear map `M → N` and a linear map `N → P` to form a linear map `M → P`. -/
def lcomp (f : M →ₗ[R] Nₗ) : (Nₗ →ₗ[R] Pₗ) →ₗ[R] M →ₗ[R] Pₗ :=
  flip <| LinearMap.comp (flip id) f
#align linear_map.lcomp LinearMap.lcomp
-/

variable {R Pₗ}

/- warning: linear_map.lcomp_apply -> LinearMap.lcomp_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (g : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (x : M), Eq.{succ u4} Pₗ (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (fun (_x : LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) => M -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ (max u3 u4)) (succ (max u2 u4)), max (succ (max u3 u4)) (succ (max u2 u4))} (LinearMap.{u1, u1, max u3 u4, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u3 u4, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) -> (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, max u3 u4, max u2 u4} R R (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.lcomp.{u1, u2, u3, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f) g) x) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => Nₗ -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => M -> Nₗ) (LinearMap.hasCoeToFun.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) f x))
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {M : Type.{u3}} {Nₗ : Type.{u2}} {Pₗ : Type.{u1}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_10 : AddCommMonoid.{u2} Nₗ] [_inst_11 : AddCommMonoid.{u1} Pₗ] [_inst_14 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5] [_inst_19 : Module.{u4, u2} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10] [_inst_20 : Module.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11] (f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (g : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Pₗ) x) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) g) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u3, u1} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (succ u3) (succ u1)} (LinearMap.{u4, u4, max u1 u2, max u1 u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u2, u1} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u3, u1} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u2, u1} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u1} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u2 u1, max u3 u1} R R (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u2, u1} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u3, u1} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u2, u1} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u1} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.lcomp.{u4, u3, u2, u1} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f) g) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u2, u1} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) g (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Nₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u3, u2} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) f x))
Case conversion may be inaccurate. Consider using '#align linear_map.lcomp_apply LinearMap.lcomp_applyₓ'. -/
@[simp]
theorem lcomp_apply (f : M →ₗ[R] Nₗ) (g : Nₗ →ₗ[R] Pₗ) (x : M) : lcomp R Pₗ f g x = g (f x) :=
  rfl
#align linear_map.lcomp_apply LinearMap.lcomp_apply

/- warning: linear_map.lcomp_apply' -> LinearMap.lcomp_apply' is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (g : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20), Eq.{max (succ u2) (succ u4)} (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (coeFn.{max (succ (max u3 u4)) (succ (max u2 u4)), max (succ (max u3 u4)) (succ (max u2 u4))} (LinearMap.{u1, u1, max u3 u4, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u3 u4, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) -> (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, max u3 u4, max u2 u4} R R (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_1.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.lcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.lcomp.{u1, u2, u3, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f) g) (LinearMap.comp.{u1, u1, u1, u2, u3, u4} R R R M Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHomCompTriple.ids.{u1, u1} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g f)
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {M : Type.{u3}} {Nₗ : Type.{u2}} {Pₗ : Type.{u1}} [_inst_5 : AddCommMonoid.{u3} M] [_inst_10 : AddCommMonoid.{u2} Nₗ] [_inst_11 : AddCommMonoid.{u1} Pₗ] [_inst_14 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5] [_inst_19 : Module.{u4, u2} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10] [_inst_20 : Module.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11] (f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (g : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) g) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (succ u3) (succ u1)} (LinearMap.{u4, u4, max u1 u2, max u1 u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u2, u1} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u3, u1} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u2, u1} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u1} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u2 u1, max u3 u1} R R (LinearMap.{u4, u4, u2, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, u3, u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u2, u1} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u3, u1} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u2, u1} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u1} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u1} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u1} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u1} Pₗ (AddCommMonoid.toAddMonoid.{u1} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u1} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.lcomp.{u4, u3, u2, u1} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 f) g) (LinearMap.comp.{u4, u4, u4, u3, u2, u1} R R R M Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) g f)
Case conversion may be inaccurate. Consider using '#align linear_map.lcomp_apply' LinearMap.lcomp_apply'ₓ'. -/
theorem lcomp_apply' (f : M →ₗ[R] Nₗ) (g : Nₗ →ₗ[R] Pₗ) : lcomp R Pₗ f g = g ∘ₗ f :=
  rfl
#align linear_map.lcomp_apply' LinearMap.lcomp_apply'

variable (P σ₂₃)

#print LinearMap.lcompₛₗ /-
/-- Composing a semilinear map `M → N` and a semilinear map `N → P` to form a semilinear map
`M → P` is itself a linear map. -/
def lcompₛₗ (f : M →ₛₗ[σ₁₂] N) : (N →ₛₗ[σ₂₃] P) →ₗ[R₃] M →ₛₗ[σ₁₃] P :=
  flip <| LinearMap.comp (flip id) f
#align linear_map.lcompₛₗ LinearMap.lcompₛₗ
-/

variable {P σ₂₃}

include σ₁₃

/- warning: linear_map.lcompₛₗ_apply -> LinearMap.lcompₛₗ_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {R₂ : Type.{u2}} [_inst_2 : CommSemiring.{u2} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {M : Type.{u4}} {N : Type.{u5}} {P : Type.{u6}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_6 : AddCommMonoid.{u5} N] [_inst_7 : AddCommMonoid.{u6} P] [_inst_14 : Module.{u1, u4} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_15 : Module.{u2, u5} R₂ N (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] {σ₁₂ : RingHom.{u1, u2} R R₂ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2))} {σ₂₃ : RingHom.{u2, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u1, u3} R R₃ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} [_inst_23 : RingHomCompTriple.{u1, u2, u3} R R₂ R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₂ σ₂₃ σ₁₃] (f : LinearMap.{u1, u2, u4, u5} R R₂ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₁₂ M N _inst_5 _inst_6 _inst_14 _inst_15) (g : LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (x : M), Eq.{succ u6} P (coeFn.{max (succ u4) (succ u6), max (succ u4) (succ u6)} (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (fun (_x : LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) => M -> P) (LinearMap.hasCoeToFun.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (coeFn.{max (succ (max u5 u6)) (succ (max u4 u6)), max (succ (max u5 u6)) (succ (max u4 u6))} (LinearMap.{u3, u3, max u5 u6, max u4 u6} R₃ R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (fun (_x : LinearMap.{u3, u3, max u5 u6, max u4 u6} R₃ R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))) (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) => (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) -> (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16)) (LinearMap.hasCoeToFun.{u3, u3, max u5 u6, max u4 u6} R₃ R₃ (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (LinearMap.{u1, u3, u4, u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (CommSemiring.toSemiring.{u3} R₃ _inst_3) (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (LinearMap.addCommMonoid.{u1, u3, u4, u6} R R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_1.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (LinearMap.module.{u1, u3, u3, u4, u6} R R₃ R₃ M P (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.lcompₛₗ._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16)) (RingHom.id.{u3} R₃ (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)))) (LinearMap.lcompₛₗ.{u1, u2, u3, u4, u5, u6} R _inst_1 R₂ _inst_2 R₃ _inst_3 M N P _inst_5 _inst_6 _inst_7 _inst_14 _inst_15 _inst_16 σ₁₂ σ₂₃ σ₁₃ _inst_23 f) g) x) (coeFn.{max (succ u5) (succ u6), max (succ u5) (succ u6)} (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (fun (_x : LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => N -> P) (LinearMap.hasCoeToFun.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) g (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearMap.{u1, u2, u4, u5} R R₂ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₁₂ M N _inst_5 _inst_6 _inst_14 _inst_15) (fun (_x : LinearMap.{u1, u2, u4, u5} R R₂ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₁₂ M N _inst_5 _inst_6 _inst_14 _inst_15) => M -> N) (LinearMap.hasCoeToFun.{u1, u2, u4, u5} R R₂ M N (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_5 _inst_6 _inst_14 _inst_15 σ₁₂) f x))
but is expected to have type
  forall {R : Type.{u6}} [_inst_1 : CommSemiring.{u6} R] {R₂ : Type.{u5}} [_inst_2 : CommSemiring.{u5} R₂] {R₃ : Type.{u2}} [_inst_3 : CommSemiring.{u2} R₃] {M : Type.{u4}} {N : Type.{u3}} {P : Type.{u1}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_6 : AddCommMonoid.{u3} N] [_inst_7 : AddCommMonoid.{u1} P] [_inst_14 : Module.{u6, u4} R M (CommSemiring.toSemiring.{u6} R _inst_1) _inst_5] [_inst_15 : Module.{u5, u3} R₂ N (CommSemiring.toSemiring.{u5} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u2, u1} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7] {σ₁₂ : RingHom.{u6, u5} R R₂ (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (Semiring.toNonAssocSemiring.{u5} R₂ (CommSemiring.toSemiring.{u5} R₂ _inst_2))} {σ₂₃ : RingHom.{u5, u2} R₂ R₃ (Semiring.toNonAssocSemiring.{u5} R₂ (CommSemiring.toSemiring.{u5} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3))} {σ₁₃ : RingHom.{u6, u2} R R₃ (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3))} [_inst_23 : RingHomCompTriple.{u6, u5, u2} R R₂ R₃ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₂ σ₂₃ σ₁₃] (f : LinearMap.{u6, u5, u4, u3} R R₂ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u5} R₂ _inst_2) σ₁₂ M N _inst_5 _inst_6 _inst_14 _inst_15) (g : LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) x) (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => LinearMap.{u6, u2, u4, u1} R R₃ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) g) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => P) _x) (LinearMap.instFunLikeLinearMap.{u6, u2, u4, u1} R R₃ M P (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u1), max (succ u3) (succ u1), max (succ u4) (succ u1)} (LinearMap.{u2, u2, max u1 u3, max u1 u4} R₃ R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) (CommSemiring.toSemiring.{u2} R₃ _inst_3) (RingHom.id.{u2} R₃ (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3))) (LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (LinearMap.{u6, u2, u4, u1} R R₃ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (LinearMap.addCommMonoid.{u5, u2, u3, u1} R₂ R₃ N P (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (LinearMap.addCommMonoid.{u6, u2, u4, u1} R R₃ M P (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u2, u2, u3, u1} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u1} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u1} P (AddCommMonoid.toAddMonoid.{u1} P _inst_7)) (Module.toMulActionWithZero.{u2, u1} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u2, u2, u4, u1} R R₃ R₃ M P (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u1} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u1} P (AddCommMonoid.toAddMonoid.{u1} P _inst_7)) (Module.toMulActionWithZero.{u2, u1} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (fun (_x : LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => LinearMap.{u6, u2, u4, u1} R R₃ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u1, max u4 u1} R₃ R₃ (LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (LinearMap.{u6, u2, u4, u1} R R₃ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M P _inst_5 _inst_7 _inst_14 _inst_16) (CommSemiring.toSemiring.{u2} R₃ _inst_3) (CommSemiring.toSemiring.{u2} R₃ _inst_3) (LinearMap.addCommMonoid.{u5, u2, u3, u1} R₂ R₃ N P (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (LinearMap.addCommMonoid.{u6, u2, u4, u1} R R₃ M P (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u2, u2, u3, u1} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u1} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u1} P (AddCommMonoid.toAddMonoid.{u1} P _inst_7)) (Module.toMulActionWithZero.{u2, u1} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u2, u2, u4, u1} R R₃ R₃ M P (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_5 _inst_7 _inst_14 _inst_16 σ₁₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u1} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u1} P (AddCommMonoid.toAddMonoid.{u1} P _inst_7)) (Module.toMulActionWithZero.{u2, u1} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16)))) (RingHom.id.{u2} R₃ (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)))) (LinearMap.lcompₛₗ.{u6, u5, u2, u4, u3, u1} R _inst_1 R₂ _inst_2 R₃ _inst_3 M N P _inst_5 _inst_6 _inst_7 _inst_14 _inst_15 _inst_16 σ₁₂ σ₂₃ σ₁₃ _inst_23 f) g) x) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (LinearMap.{u5, u2, u3, u1} R₂ R₃ (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u5, u2, u3, u1} R₂ R₃ N P (CommSemiring.toSemiring.{u5} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) g (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u6, u5, u4, u3} R R₂ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u5} R₂ _inst_2) σ₁₂ M N _inst_5 _inst_6 _inst_14 _inst_15) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => N) _x) (LinearMap.instFunLikeLinearMap.{u6, u5, u4, u3} R R₂ M N (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u5} R₂ _inst_2) _inst_5 _inst_6 _inst_14 _inst_15 σ₁₂) f x))
Case conversion may be inaccurate. Consider using '#align linear_map.lcompₛₗ_apply LinearMap.lcompₛₗ_applyₓ'. -/
@[simp]
theorem lcompₛₗ_apply (f : M →ₛₗ[σ₁₂] N) (g : N →ₛₗ[σ₂₃] P) (x : M) :
    lcompₛₗ P σ₂₃ f g x = g (f x) :=
  rfl
#align linear_map.lcompₛₗ_apply LinearMap.lcompₛₗ_apply

omit σ₁₃

variable (R M Nₗ Pₗ)

#print LinearMap.llcomp /-
/-- Composing a linear map `M → N` and a linear map `N → P` to form a linear map `M → P`. -/
def llcomp : (Nₗ →ₗ[R] Pₗ) →ₗ[R] (M →ₗ[R] Nₗ) →ₗ[R] M →ₗ[R] Pₗ :=
  flip
    { toFun := lcomp R Pₗ
      map_add' := fun f f' => ext₂ fun g x => g.map_add _ _
      map_smul' := fun (c : R) f => ext₂ fun g x => g.map_smul _ _ }
#align linear_map.llcomp LinearMap.llcomp
-/

variable {R M Nₗ Pₗ}

section

/- warning: linear_map.llcomp_apply -> LinearMap.llcomp_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (g : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (x : M), Eq.{succ u4} Pₗ (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (fun (_x : LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) => M -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ (max u2 u3)) (succ (max u2 u4)), max (succ (max u2 u3)) (succ (max u2 u4))} (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) -> (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ (max u3 u4)) (succ (max (max u2 u3) u2 u4)), max (succ (max u3 u4)) (succ (max (max u2 u3) u2 u4))} (LinearMap.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20))) => (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) -> (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)))) (LinearMap.hasCoeToFun.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.llcomp.{u1, u2, u3, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20) f) g) x) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => Nₗ -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) f (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => M -> Nₗ) (LinearMap.hasCoeToFun.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g x))
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {M : Type.{u1}} {Nₗ : Type.{u3}} {Pₗ : Type.{u2}} [_inst_5 : AddCommMonoid.{u1} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u2} Pₗ] [_inst_14 : Module.{u4, u1} R M (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5] [_inst_19 : Module.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10] [_inst_20 : Module.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11] (f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (g : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (x : M), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Pₗ) x) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) g) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) f) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (fun (_x : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u3) (succ u2), max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u4, u4, max u2 u3, max (max u2 u1) u3 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, max u1 u3, max u1 u2} R R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u4, u4, u4, u1, u2} R R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u3 u2, max (max u1 u3) u2} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, max u1 u3, max u1 u2} R R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u4, u4, u4, u1, u2} R R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.llcomp.{u4, u1, u3, u2} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20) f) g) x) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u3, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Nₗ) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) g x))
Case conversion may be inaccurate. Consider using '#align linear_map.llcomp_apply LinearMap.llcomp_applyₓ'. -/
@[simp]
theorem llcomp_apply (f : Nₗ →ₗ[R] Pₗ) (g : M →ₗ[R] Nₗ) (x : M) :
    llcomp R M Nₗ Pₗ f g x = f (g x) :=
  rfl
#align linear_map.llcomp_apply LinearMap.llcomp_apply

/- warning: linear_map.llcomp_apply' -> LinearMap.llcomp_apply' is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (g : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19), Eq.{max (succ u2) (succ u4)} (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (coeFn.{max (succ (max u2 u3)) (succ (max u2 u4)), max (succ (max u2 u3)) (succ (max u2 u4))} (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) -> (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ (max u3 u4)) (succ (max (max u2 u3) u2 u4)), max (succ (max u3 u4)) (succ (max (max u2 u3) u2 u4))} (LinearMap.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20))) (fun (_x : LinearMap.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20))) => (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) -> (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)))) (LinearMap.hasCoeToFun.{u1, u1, max u3 u4, max (max u2 u3) u2 u4} R R (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u1, u1, max u2 u3, max u2 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, max u2 u3, max u2 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_3.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.module.{u1, u1, u1, max u2 u3, max u2 u4} R R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u1, u1, u2, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u4} R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_19 (LinearMap.llcomp._proof_1.{u1, u3} R _inst_1 Nₗ _inst_10 _inst_19)) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) (LinearMap.module.{u1, u1, u1, u2, u4} R R R M Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.llcomp._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (LinearMap.llcomp._proof_4.{u1, u4, u2} R _inst_1 M Pₗ _inst_5 _inst_11 _inst_14 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.llcomp.{u1, u2, u3, u4} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20) f) g) (LinearMap.comp.{u1, u1, u1, u2, u3, u4} R R R M Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (RingHomCompTriple.ids.{u1, u1} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) f g)
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {M : Type.{u1}} {Nₗ : Type.{u3}} {Pₗ : Type.{u2}} [_inst_5 : AddCommMonoid.{u1} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u2} Pₗ] [_inst_14 : Module.{u4, u1} R M (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5] [_inst_19 : Module.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10] [_inst_20 : Module.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11] (f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (g : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19), Eq.{max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) g) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), max (succ u1) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) f) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (fun (_x : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) => LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u3) (succ u2), max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u4, u4, max u2 u3, max (max u2 u1) u3 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, max u1 u3, max u1 u2} R R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u4, u4, u4, u1, u2} R R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) _x) (LinearMap.instFunLikeLinearMap.{u4, u4, max u3 u2, max (max u1 u3) u2} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (LinearMap.{u4, u4, max u3 u1, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, max u1 u3, max u1 u2} R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, max u1 u3, max u1 u2} R R R (LinearMap.{u4, u4, u1, u3} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Nₗ _inst_5 _inst_10 _inst_14 _inst_19) (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) M Pₗ _inst_5 _inst_11 _inst_14 _inst_20) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.addCommMonoid.{u4, u4, u1, u3} R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u3} R R R M Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_14 _inst_19 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_19 (smulCommClass_self.{u4, u3} R Nₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u3} R Nₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u3} Nₗ (AddCommMonoid.toAddMonoid.{u3} Nₗ _inst_10)) (Module.toMulActionWithZero.{u4, u3} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20)))) (LinearMap.instSMulCommClassLinearMapInstSMulLinearMapInstSMulLinearMap.{u4, u4, u4, u4, u1, u2} R R R R M Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_11 _inst_14 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (Module.toDistribMulAction.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))) (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) (LinearMap.llcomp.{u4, u1, u3, u2} R _inst_1 M Nₗ Pₗ _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20) f) g) (LinearMap.comp.{u4, u4, u4, u1, u3, u2} R R R M Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_5 _inst_10 _inst_11 _inst_14 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) f g)
Case conversion may be inaccurate. Consider using '#align linear_map.llcomp_apply' LinearMap.llcomp_apply'ₓ'. -/
theorem llcomp_apply' (f : Nₗ →ₗ[R] Pₗ) (g : M →ₗ[R] Nₗ) : llcomp R M Nₗ Pₗ f g = f ∘ₗ g :=
  rfl
#align linear_map.llcomp_apply' LinearMap.llcomp_apply'

end

#print LinearMap.compl₂ /-
/-- Composing a linear map `Q → N` and a bilinear map `M → N → P` to
form a bilinear map `M → Q → P`. -/
def compl₂ (g : Q →ₛₗ[σ₄₂] N) : M →ₛₗ[σ₁₃] Q →ₛₗ[σ₄₃] P :=
  (lcompₛₗ _ _ g).comp f
#align linear_map.compl₂ LinearMap.compl₂
-/

include σ₄₃

/- warning: linear_map.compl₂_apply -> LinearMap.compl₂_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {R₂ : Type.{u2}} [_inst_2 : CommSemiring.{u2} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {R₄ : Type.{u4}} [_inst_4 : CommSemiring.{u4} R₄] {M : Type.{u5}} {N : Type.{u6}} {P : Type.{u7}} {Q : Type.{u8}} [_inst_5 : AddCommMonoid.{u5} M] [_inst_6 : AddCommMonoid.{u6} N] [_inst_7 : AddCommMonoid.{u7} P] [_inst_8 : AddCommMonoid.{u8} Q] [_inst_14 : Module.{u1, u5} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_15 : Module.{u2, u6} R₂ N (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u7} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] [_inst_17 : Module.{u4, u8} R₄ Q (CommSemiring.toSemiring.{u4} R₄ _inst_4) _inst_8] {σ₂₃ : RingHom.{u2, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u1, u3} R R₃ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₄₂ : RingHom.{u4, u2} R₄ R₂ (Semiring.toNonAssocSemiring.{u4} R₄ (CommSemiring.toSemiring.{u4} R₄ _inst_4)) (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2))} {σ₄₃ : RingHom.{u4, u3} R₄ R₃ (Semiring.toNonAssocSemiring.{u4} R₄ (CommSemiring.toSemiring.{u4} R₄ _inst_4)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} [_inst_24 : RingHomCompTriple.{u4, u2, u3} R₄ R₂ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₂ σ₂₃ σ₄₃] (f : LinearMap.{u1, u3, u5, max u6 u7} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u6, u7} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u6, u7} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u7} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u7} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (g : LinearMap.{u4, u2, u8, u6} R₄ R₂ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₄₂ Q N _inst_8 _inst_6 _inst_17 _inst_15) (m : M) (q : Q), Eq.{succ u7} P (coeFn.{max (succ u8) (succ u7), max (succ u8) (succ u7)} (LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) (fun (_x : LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) => Q -> P) (LinearMap.hasCoeToFun.{u4, u3, u8, u7} R₄ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) (coeFn.{max (succ u5) (succ (max u8 u7)), max (succ u5) (succ (max u8 u7))} (LinearMap.{u1, u3, u5, max u8 u7} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u4, u3, u8, u7} R₄ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) _inst_14 (LinearMap.module.{u4, u3, u3, u8, u7} R₄ R₃ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.compl₂._proof_2.{u3, u7} R₃ _inst_3 P _inst_7 _inst_16))) (fun (_x : LinearMap.{u1, u3, u5, max u8 u7} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u4, u3, u8, u7} R₄ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) _inst_14 (LinearMap.module.{u4, u3, u3, u8, u7} R₄ R₃ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.compl₂._proof_2.{u3, u7} R₃ _inst_3 P _inst_7 _inst_16))) => M -> (LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u8 u7} R R₃ M (LinearMap.{u4, u3, u8, u7} R₄ R₃ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u4, u3, u8, u7} R₄ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) _inst_14 (LinearMap.module.{u4, u3, u3, u8, u7} R₄ R₃ R₃ Q P (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.compl₂._proof_2.{u3, u7} R₃ _inst_3 P _inst_7 _inst_16)) σ₁₃) (LinearMap.compl₂.{u1, u2, u3, u4, u5, u6, u7, u8} R _inst_1 R₂ _inst_2 R₃ _inst_3 R₄ _inst_4 M N P Q _inst_5 _inst_6 _inst_7 _inst_8 _inst_14 _inst_15 _inst_16 _inst_17 σ₂₃ σ₁₃ σ₄₂ σ₄₃ _inst_24 f g) m) q) (coeFn.{max (succ u6) (succ u7), max (succ u6) (succ u7)} (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (fun (_x : LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) => N -> P) (LinearMap.hasCoeToFun.{u2, u3, u6, u7} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (coeFn.{max (succ u5) (succ (max u6 u7)), max (succ u5) (succ (max u6 u7))} (LinearMap.{u1, u3, u5, max u6 u7} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u6, u7} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u6, u7} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u7} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u7} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (fun (_x : LinearMap.{u1, u3, u5, max u6 u7} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u6, u7} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u6, u7} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u7} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u7} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) => M -> (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16)) (LinearMap.hasCoeToFun.{u1, u3, u5, max u6 u7} R R₃ M (LinearMap.{u2, u3, u6, u7} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u6, u7} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u6, u7} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u7} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u7} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u7} P (AddMonoid.toAddZeroClass.{u7} P (AddCommMonoid.toAddMonoid.{u7} P _inst_7))) (Module.toMulActionWithZero.{u3, u7} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) f m) (coeFn.{max (succ u8) (succ u6), max (succ u8) (succ u6)} (LinearMap.{u4, u2, u8, u6} R₄ R₂ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₄₂ Q N _inst_8 _inst_6 _inst_17 _inst_15) (fun (_x : LinearMap.{u4, u2, u8, u6} R₄ R₂ (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u2} R₂ _inst_2) σ₄₂ Q N _inst_8 _inst_6 _inst_17 _inst_15) => Q -> N) (LinearMap.hasCoeToFun.{u4, u2, u8, u6} R₄ R₂ Q N (CommSemiring.toSemiring.{u4} R₄ _inst_4) (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_8 _inst_6 _inst_17 _inst_15 σ₄₂) g q))
but is expected to have type
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {R₂ : Type.{u7}} [_inst_2 : CommSemiring.{u7} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {R₄ : Type.{u8}} [_inst_4 : CommSemiring.{u8} R₄] {M : Type.{u2}} {N : Type.{u5}} {P : Type.{u4}} {Q : Type.{u6}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_6 : AddCommMonoid.{u5} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_8 : AddCommMonoid.{u6} Q] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_15 : Module.{u7, u5} R₂ N (CommSemiring.toSemiring.{u7} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] [_inst_17 : Module.{u8, u6} R₄ Q (CommSemiring.toSemiring.{u8} R₄ _inst_4) _inst_8] {σ₂₃ : RingHom.{u7, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u7} R₂ (CommSemiring.toSemiring.{u7} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u1, u3} R R₃ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₄₂ : RingHom.{u8, u7} R₄ R₂ (Semiring.toNonAssocSemiring.{u8} R₄ (CommSemiring.toSemiring.{u8} R₄ _inst_4)) (Semiring.toNonAssocSemiring.{u7} R₂ (CommSemiring.toSemiring.{u7} R₂ _inst_2))} {σ₄₃ : RingHom.{u8, u3} R₄ R₃ (Semiring.toNonAssocSemiring.{u8} R₄ (CommSemiring.toSemiring.{u8} R₄ _inst_4)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} [_inst_24 : RingHomCompTriple.{u8, u7, u3} R₄ R₂ R₃ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₂ σ₂₃ σ₄₃] (f : LinearMap.{u1, u3, u2, max u4 u5} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u7, u3, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u7, u3, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u3, u3, u5, u4} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u4} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u4} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) (g : LinearMap.{u8, u7, u6, u5} R₄ R₂ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u7} R₂ _inst_2) σ₄₂ Q N _inst_8 _inst_6 _inst_17 _inst_15) (m : M) (q : Q), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Q) => P) q) (FunLike.coe.{max (succ u4) (succ u6), succ u6, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u8, u3, u6, u4} R₄ R₃ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) m) Q (fun (_x : Q) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Q) => P) _x) (LinearMap.instFunLikeLinearMap.{u8, u3, u6, u4} R₄ R₃ Q P (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u6), succ u2, max (succ u4) (succ u6)} (LinearMap.{u1, u3, u2, max u4 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u8, u3, u6, u4} R₄ R₃ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u8, u3, u6, u4} R₄ R₃ Q P (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u8, u3, u3, u6, u4} R₄ R₃ R₃ Q P (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u4} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u4} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u8, u3, u6, u4} R₄ R₃ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) _x) (LinearMap.instFunLikeLinearMap.{u1, u3, u2, max u4 u6} R R₃ M (LinearMap.{u8, u3, u6, u4} R₄ R₃ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₄₃ Q P _inst_8 _inst_7 _inst_17 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u8, u3, u6, u4} R₄ R₃ Q P (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u8, u3, u3, u6, u4} R₄ R₃ R₃ Q P (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_8 _inst_7 _inst_17 _inst_16 σ₄₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u4} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u4} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) (LinearMap.compl₂.{u1, u7, u3, u8, u2, u5, u4, u6} R _inst_1 R₂ _inst_2 R₃ _inst_3 R₄ _inst_4 M N P Q _inst_5 _inst_6 _inst_7 _inst_8 _inst_14 _inst_15 _inst_16 _inst_17 σ₂₃ σ₁₃ σ₄₂ σ₄₃ _inst_24 f g) m) q) (FunLike.coe.{max (succ u5) (succ u4), succ u5, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u7, u3, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) m) N (fun (_x : N) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : N) => P) _x) (LinearMap.instFunLikeLinearMap.{u7, u3, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, max (succ u5) (succ u4)} (LinearMap.{u1, u3, u2, max u4 u5} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u7, u3, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u7, u3, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u3, u3, u5, u4} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u4} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u4} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u7, u3, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _x) (LinearMap.instFunLikeLinearMap.{u1, u3, u2, max u5 u4} R R₃ M (LinearMap.{u7, u3, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_5 (LinearMap.addCommMonoid.{u7, u3, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u7, u3, u3, u5, u4} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u7} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u4} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u4} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u3, u4} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16)))) σ₁₃) f m) (FunLike.coe.{max (succ u5) (succ u6), succ u6, succ u5} (LinearMap.{u8, u7, u6, u5} R₄ R₂ (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u7} R₂ _inst_2) σ₄₂ Q N _inst_8 _inst_6 _inst_17 _inst_15) Q (fun (_x : Q) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Q) => N) _x) (LinearMap.instFunLikeLinearMap.{u8, u7, u6, u5} R₄ R₂ Q N (CommSemiring.toSemiring.{u8} R₄ _inst_4) (CommSemiring.toSemiring.{u7} R₂ _inst_2) _inst_8 _inst_6 _inst_17 _inst_15 σ₄₂) g q))
Case conversion may be inaccurate. Consider using '#align linear_map.compl₂_apply LinearMap.compl₂_applyₓ'. -/
@[simp]
theorem compl₂_apply (g : Q →ₛₗ[σ₄₂] N) (m : M) (q : Q) : f.compl₂ g m q = f m (g q) :=
  rfl
#align linear_map.compl₂_apply LinearMap.compl₂_apply

omit σ₄₃

/- warning: linear_map.compl₂_id -> LinearMap.compl₂_id is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {R₂ : Type.{u2}} [_inst_2 : CommSemiring.{u2} R₂] {R₃ : Type.{u3}} [_inst_3 : CommSemiring.{u3} R₃] {M : Type.{u4}} {N : Type.{u5}} {P : Type.{u6}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_6 : AddCommMonoid.{u5} N] [_inst_7 : AddCommMonoid.{u6} P] [_inst_14 : Module.{u1, u4} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_15 : Module.{u2, u5} R₂ N (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7] {σ₂₃ : RingHom.{u2, u3} R₂ R₃ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} {σ₁₃ : RingHom.{u1, u3} R R₃ (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (Semiring.toNonAssocSemiring.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3))} (f : LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (smulCommClass_self.{u3, u6} R₃ P (CommSemiring.toCommMonoid.{u3} R₃ _inst_3) (MulActionWithZero.toMulAction.{u3, u6} R₃ P (Semiring.toMonoidWithZero.{u3} R₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3)) (AddZeroClass.toHasZero.{u6} P (AddMonoid.toAddZeroClass.{u6} P (AddCommMonoid.toAddMonoid.{u6} P _inst_7))) (Module.toMulActionWithZero.{u3, u6} R₃ P (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_7 _inst_16))))), Eq.{max (succ u4) (succ (max u5 u6))} (LinearMap.{u1, u3, u4, max u5 u6} R R₃ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₁₃ M (LinearMap.{u2, u3, u5, u6} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u2, u3, u5, u6} R₂ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.module.{u2, u3, u3, u5, u6} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u3} R₃ _inst_3) _inst_16 (LinearMap.compl₂._proof_2.{u3, u6} R₃ _inst_3 P _inst_7 _inst_16))) (LinearMap.compl₂.{u1, u2, u3, u2, u4, u5, u6, u5} R _inst_1 R₂ _inst_2 R₃ _inst_3 R₂ _inst_2 M N P N _inst_5 _inst_6 _inst_7 _inst_6 _inst_14 _inst_15 _inst_16 _inst_15 σ₂₃ σ₁₃ (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ _inst_2))) σ₂₃ (RingHomCompTriple.ids.{u2, u3} R₂ R₃ (CommSemiring.toSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u3} R₃ _inst_3) σ₂₃) f (LinearMap.id.{u2, u5} R₂ N (CommSemiring.toSemiring.{u2} R₂ _inst_2) _inst_6 _inst_15)) f
but is expected to have type
  forall {R : Type.{u3}} [_inst_1 : CommSemiring.{u3} R] {R₂ : Type.{u1}} [_inst_2 : CommSemiring.{u1} R₂] {R₃ : Type.{u2}} [_inst_3 : CommSemiring.{u2} R₃] {M : Type.{u6}} {N : Type.{u5}} {P : Type.{u4}} [_inst_5 : AddCommMonoid.{u6} M] [_inst_6 : AddCommMonoid.{u5} N] [_inst_7 : AddCommMonoid.{u4} P] [_inst_14 : Module.{u3, u6} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_5] [_inst_15 : Module.{u1, u5} R₂ N (CommSemiring.toSemiring.{u1} R₂ _inst_2) _inst_6] [_inst_16 : Module.{u2, u4} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7] {σ₂₃ : RingHom.{u1, u2} R₂ R₃ (Semiring.toNonAssocSemiring.{u1} R₂ (CommSemiring.toSemiring.{u1} R₂ _inst_2)) (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3))} {σ₁₃ : RingHom.{u3, u2} R R₃ (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Semiring.toNonAssocSemiring.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3))} (f : LinearMap.{u3, u2, u6, max u4 u5} R R₃ (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u2, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u2, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u2, u2, u5, u4} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u4} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u4} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u2, u4} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16))))), Eq.{max (max (succ u6) (succ u5)) (succ u4)} (LinearMap.{u3, u2, u6, max u4 u5} R R₃ (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₁₃ M (LinearMap.{u1, u2, u5, u4} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃ N P _inst_6 _inst_7 _inst_15 _inst_16) _inst_5 (LinearMap.addCommMonoid.{u1, u2, u5, u4} R₂ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u2, u2, u5, u4} R₂ R₃ R₃ N P (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_6 _inst_7 _inst_15 _inst_16 σ₂₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_16 (smulCommClass_self.{u2, u4} R₃ P (CommSemiring.toCommMonoid.{u2} R₃ _inst_3) (MulActionWithZero.toMulAction.{u2, u4} R₃ P (Semiring.toMonoidWithZero.{u2} R₃ (CommSemiring.toSemiring.{u2} R₃ _inst_3)) (AddMonoid.toZero.{u4} P (AddCommMonoid.toAddMonoid.{u4} P _inst_7)) (Module.toMulActionWithZero.{u2, u4} R₃ P (CommSemiring.toSemiring.{u2} R₃ _inst_3) _inst_7 _inst_16))))) (LinearMap.compl₂.{u3, u1, u2, u1, u6, u5, u4, u5} R _inst_1 R₂ _inst_2 R₃ _inst_3 R₂ _inst_2 M N P N _inst_5 _inst_6 _inst_7 _inst_6 _inst_14 _inst_15 _inst_16 _inst_15 σ₂₃ σ₁₃ (RingHom.id.{u1} R₂ (Semiring.toNonAssocSemiring.{u1} R₂ (CommSemiring.toSemiring.{u1} R₂ _inst_2))) σ₂₃ (RingHomCompTriple.ids.{u1, u2} R₂ R₃ (CommSemiring.toSemiring.{u1} R₂ _inst_2) (CommSemiring.toSemiring.{u2} R₃ _inst_3) σ₂₃) f (LinearMap.id.{u1, u5} R₂ N (CommSemiring.toSemiring.{u1} R₂ _inst_2) _inst_6 _inst_15)) f
Case conversion may be inaccurate. Consider using '#align linear_map.compl₂_id LinearMap.compl₂_idₓ'. -/
@[simp]
theorem compl₂_id : f.compl₂ LinearMap.id = f :=
  by
  ext
  rw [compl₂_apply, id_coe, id.def]
#align linear_map.compl₂_id LinearMap.compl₂_id

#print LinearMap.compl₁₂ /-
/-- Composing linear maps `Q → M` and `Q' → N` with a bilinear map `M → N → P` to
form a bilinear map `Q → Q' → P`. -/
def compl₁₂ (f : Mₗ →ₗ[R] Nₗ →ₗ[R] Pₗ) (g : Qₗ →ₗ[R] Mₗ) (g' : Qₗ' →ₗ[R] Nₗ) :
    Qₗ →ₗ[R] Qₗ' →ₗ[R] Pₗ :=
  (f.comp g).compl₂ g'
#align linear_map.compl₁₂ LinearMap.compl₁₂
-/

/- warning: linear_map.compl₁₂_apply -> LinearMap.compl₁₂_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {Mₗ : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} {Qₗ : Type.{u5}} {Qₗ' : Type.{u6}} [_inst_9 : AddCommMonoid.{u2} Mₗ] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_12 : AddCommMonoid.{u5} Qₗ] [_inst_13 : AddCommMonoid.{u6} Qₗ'] [_inst_18 : Module.{u1, u2} R Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_9] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] [_inst_21 : Module.{u1, u5} R Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12] [_inst_22 : Module.{u1, u6} R Qₗ' (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13] (f : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) (g : LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) (g' : LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) (x : Qₗ) (y : Qₗ'), Eq.{succ u4} Pₗ (coeFn.{max (succ u6) (succ u4), max (succ u6) (succ u4)} (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) (fun (_x : LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) => Qₗ' -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u6, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u5) (succ (max u6 u4)), max (succ u5) (succ (max u6 u4))} (LinearMap.{u1, u1, u5, max u6 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _inst_12 (LinearMap.addCommMonoid.{u1, u1, u6, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_21 (LinearMap.module.{u1, u1, u1, u6, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.compl₁₂._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (fun (_x : LinearMap.{u1, u1, u5, max u6 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _inst_12 (LinearMap.addCommMonoid.{u1, u1, u6, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_21 (LinearMap.module.{u1, u1, u1, u6, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.compl₁₂._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) => Qₗ -> (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, u5, max u6 u4} R R Qₗ (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12 (LinearMap.addCommMonoid.{u1, u1, u6, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_21 (LinearMap.module.{u1, u1, u1, u6, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.compl₁₂._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.compl₁₂.{u1, u2, u3, u4, u5, u6} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f g g') x) y) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => Nₗ -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u4)), max (succ u2) (succ (max u3 u4))} (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) => Mₗ -> (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u4} R R Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) f (coeFn.{max (succ u5) (succ u2), max (succ u5) (succ u2)} (LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) (fun (_x : LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) => Qₗ -> Mₗ) (LinearMap.hasCoeToFun.{u1, u1, u5, u2} R R Qₗ Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12 _inst_9 _inst_21 _inst_18 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g x)) (coeFn.{max (succ u6) (succ u3), max (succ u6) (succ u3)} (LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) (fun (_x : LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) => Qₗ' -> Nₗ) (LinearMap.hasCoeToFun.{u1, u1, u6, u3} R R Qₗ' Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_10 _inst_22 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g' y))
but is expected to have type
  forall {R : Type.{u6}} [_inst_1 : CommSemiring.{u6} R] {Mₗ : Type.{u5}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} {Qₗ : Type.{u2}} {Qₗ' : Type.{u1}} [_inst_9 : AddCommMonoid.{u5} Mₗ] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_12 : AddCommMonoid.{u2} Qₗ] [_inst_13 : AddCommMonoid.{u1} Qₗ'] [_inst_18 : Module.{u6, u5} R Mₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_9] [_inst_19 : Module.{u6, u3} R Nₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10] [_inst_20 : Module.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11] [_inst_21 : Module.{u6, u2} R Qₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12] [_inst_22 : Module.{u6, u1} R Qₗ' (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13] (f : LinearMap.{u6, u6, u5, max u4 u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))) (g : LinearMap.{u6, u6, u2, u5} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) (g' : LinearMap.{u6, u6, u1, u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) (x : Qₗ) (y : Qₗ'), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ') => Pₗ) y) (FunLike.coe.{max (succ u4) (succ u1), succ u1, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ) => LinearMap.{u6, u6, u1, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) x) Qₗ' (fun (_x : Qₗ') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ') => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u1, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u1), succ u2, max (succ u4) (succ u1)} (LinearMap.{u6, u6, u2, max u4 u1} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ (LinearMap.{u6, u6, u1, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _inst_12 (LinearMap.addCommMonoid.{u6, u6, u1, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_21 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u1, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))) Qₗ (fun (_x : Qₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ) => LinearMap.{u6, u6, u1, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u2, max u4 u1} R R Qₗ (LinearMap.{u6, u6, u1, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12 (LinearMap.addCommMonoid.{u6, u6, u1, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_21 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u1, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) (LinearMap.compl₁₂.{u6, u5, u3, u4, u2, u1} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f g g') x) y) (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Mₗ) => LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (FunLike.coe.{max (succ u5) (succ u2), succ u2, succ u5} (LinearMap.{u6, u6, u2, u5} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) Qₗ (fun (a : Qₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ) => Mₗ) a) (LinearMap.instFunLikeLinearMap.{u6, u6, u2, u5} R R Qₗ Mₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12 _inst_9 _inst_21 _inst_18 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) g x)) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) (FunLike.coe.{max (max (succ u5) (succ u3)) (succ u4), succ u5, max (succ u3) (succ u4)} (LinearMap.{u6, u6, u5, max u4 u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))) Mₗ (fun (_x : Mₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Mₗ) => LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u5, max u3 u4} R R Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) f (FunLike.coe.{max (succ u5) (succ u2), succ u2, succ u5} (LinearMap.{u6, u6, u2, u5} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) Qₗ (fun (_x : Qₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ) => Mₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u2, u5} R R Qₗ Mₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12 _inst_9 _inst_21 _inst_18 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) g x)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u6, u6, u1, u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) Qₗ' (fun (_x : Qₗ') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ') => Nₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u1, u3} R R Qₗ' Nₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_10 _inst_22 _inst_19 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) g' y))
Case conversion may be inaccurate. Consider using '#align linear_map.compl₁₂_apply LinearMap.compl₁₂_applyₓ'. -/
@[simp]
theorem compl₁₂_apply (f : Mₗ →ₗ[R] Nₗ →ₗ[R] Pₗ) (g : Qₗ →ₗ[R] Mₗ) (g' : Qₗ' →ₗ[R] Nₗ) (x : Qₗ)
    (y : Qₗ') : f.compl₁₂ g g' x y = f (g x) (g' y) :=
  rfl
#align linear_map.compl₁₂_apply LinearMap.compl₁₂_apply

/- warning: linear_map.compl₁₂_id_id -> LinearMap.compl₁₂_id_id is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {Mₗ : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} [_inst_9 : AddCommMonoid.{u2} Mₗ] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_18 : Module.{u1, u2} R Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_9] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] (f : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))), Eq.{max (succ u2) (succ (max u3 u4))} (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.compl₁₂._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.compl₁₂.{u1, u2, u3, u4, u2, u3} R _inst_1 Mₗ Nₗ Pₗ Mₗ Nₗ _inst_9 _inst_10 _inst_11 _inst_9 _inst_10 _inst_18 _inst_19 _inst_20 _inst_18 _inst_19 f (LinearMap.id.{u1, u2} R Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_9 _inst_18) (LinearMap.id.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_19)) f
but is expected to have type
  forall {R : Type.{u4}} [_inst_1 : CommSemiring.{u4} R] {Mₗ : Type.{u3}} {Nₗ : Type.{u1}} {Pₗ : Type.{u2}} [_inst_9 : AddCommMonoid.{u3} Mₗ] [_inst_10 : AddCommMonoid.{u1} Nₗ] [_inst_11 : AddCommMonoid.{u2} Pₗ] [_inst_18 : Module.{u4, u3} R Mₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_9] [_inst_19 : Module.{u4, u1} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10] [_inst_20 : Module.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11] (f : LinearMap.{u4, u4, u3, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Mₗ (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))), Eq.{max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u4, u4, u3, max u2 u1} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Mₗ (LinearMap.{u4, u4, u1, u2} R R (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u4, u4, u1, u2} R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u1, u2} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1))) (CommSemiring.toSemiring.{u4} R _inst_1) _inst_20 (smulCommClass_self.{u4, u2} R Pₗ (CommSemiring.toCommMonoid.{u4} R _inst_1) (MulActionWithZero.toMulAction.{u4, u2} R Pₗ (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R _inst_1)) (AddMonoid.toZero.{u2} Pₗ (AddCommMonoid.toAddMonoid.{u2} Pₗ _inst_11)) (Module.toMulActionWithZero.{u4, u2} R Pₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_11 _inst_20))))) (LinearMap.compl₁₂.{u4, u3, u1, u2, u3, u1} R _inst_1 Mₗ Nₗ Pₗ Mₗ Nₗ _inst_9 _inst_10 _inst_11 _inst_9 _inst_10 _inst_18 _inst_19 _inst_20 _inst_18 _inst_19 f (LinearMap.id.{u4, u3} R Mₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_9 _inst_18) (LinearMap.id.{u4, u1} R Nₗ (CommSemiring.toSemiring.{u4} R _inst_1) _inst_10 _inst_19)) f
Case conversion may be inaccurate. Consider using '#align linear_map.compl₁₂_id_id LinearMap.compl₁₂_id_idₓ'. -/
@[simp]
theorem compl₁₂_id_id (f : Mₗ →ₗ[R] Nₗ →ₗ[R] Pₗ) : f.compl₁₂ LinearMap.id LinearMap.id = f :=
  by
  ext
  simp_rw [compl₁₂_apply, id_coe, id.def]
#align linear_map.compl₁₂_id_id LinearMap.compl₁₂_id_id

/- warning: linear_map.compl₁₂_inj -> LinearMap.compl₁₂_inj is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {Mₗ : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} {Qₗ : Type.{u5}} {Qₗ' : Type.{u6}} [_inst_9 : AddCommMonoid.{u2} Mₗ] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_12 : AddCommMonoid.{u5} Qₗ] [_inst_13 : AddCommMonoid.{u6} Qₗ'] [_inst_18 : Module.{u1, u2} R Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_9] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] [_inst_21 : Module.{u1, u5} R Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12] [_inst_22 : Module.{u1, u6} R Qₗ' (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13] {f₁ : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))} {f₂ : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))} {g : LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18} {g' : LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19}, (Function.Surjective.{succ u5, succ u2} Qₗ Mₗ (coeFn.{max (succ u5) (succ u2), max (succ u5) (succ u2)} (LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) (fun (_x : LinearMap.{u1, u1, u5, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) => Qₗ -> Mₗ) (LinearMap.hasCoeToFun.{u1, u1, u5, u2} R R Qₗ Mₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12 _inst_9 _inst_21 _inst_18 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g)) -> (Function.Surjective.{succ u6, succ u3} Qₗ' Nₗ (coeFn.{max (succ u6) (succ u3), max (succ u6) (succ u3)} (LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) (fun (_x : LinearMap.{u1, u1, u6, u3} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) => Qₗ' -> Nₗ) (LinearMap.hasCoeToFun.{u1, u1, u6, u3} R R Qₗ' Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_10 _inst_22 _inst_19 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g')) -> (Iff (Eq.{max (succ u5) (succ (max u6 u4))} (LinearMap.{u1, u1, u5, max u6 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ (LinearMap.{u1, u1, u6, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _inst_12 (LinearMap.addCommMonoid.{u1, u1, u6, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_21 (LinearMap.module.{u1, u1, u1, u6, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (LinearMap.compl₁₂._proof_2.{u1, u4} R _inst_1 Pₗ _inst_11 _inst_20))) (LinearMap.compl₁₂.{u1, u2, u3, u4, u5, u6} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f₁ g g') (LinearMap.compl₁₂.{u1, u2, u3, u4, u5, u6} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f₂ g g')) (Eq.{max (succ u2) (succ (max u3 u4))} (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Mₗ (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_18 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) f₁ f₂))
but is expected to have type
  forall {R : Type.{u6}} [_inst_1 : CommSemiring.{u6} R] {Mₗ : Type.{u5}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} {Qₗ : Type.{u2}} {Qₗ' : Type.{u1}} [_inst_9 : AddCommMonoid.{u5} Mₗ] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_12 : AddCommMonoid.{u2} Qₗ] [_inst_13 : AddCommMonoid.{u1} Qₗ'] [_inst_18 : Module.{u6, u5} R Mₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_9] [_inst_19 : Module.{u6, u3} R Nₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10] [_inst_20 : Module.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11] [_inst_21 : Module.{u6, u2} R Qₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12] [_inst_22 : Module.{u6, u1} R Qₗ' (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13] {f₁ : LinearMap.{u6, u6, u5, max u4 u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))} {f₂ : LinearMap.{u6, u6, u5, max u4 u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))} {g : LinearMap.{u6, u6, u2, u5} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18} {g' : LinearMap.{u6, u6, u1, u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19}, (Function.Surjective.{succ u2, succ u5} Qₗ Mₗ (FunLike.coe.{max (succ u5) (succ u2), succ u2, succ u5} (LinearMap.{u6, u6, u2, u5} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ Mₗ _inst_12 _inst_9 _inst_21 _inst_18) Qₗ (fun (_x : Qₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ) => Mₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u2, u5} R R Qₗ Mₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_12 _inst_9 _inst_21 _inst_18 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) g)) -> (Function.Surjective.{succ u1, succ u3} Qₗ' Nₗ (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u6, u6, u1, u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Nₗ _inst_13 _inst_10 _inst_22 _inst_19) Qₗ' (fun (_x : Qₗ') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Qₗ') => Nₗ) _x) (LinearMap.instFunLikeLinearMap.{u6, u6, u1, u3} R R Qₗ' Nₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_10 _inst_22 _inst_19 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) g')) -> (Iff (Eq.{max (max (succ u4) (succ u2)) (succ u1)} (LinearMap.{u6, u6, u2, max u4 u1} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ (LinearMap.{u6, u6, u1, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Qₗ' Pₗ _inst_13 _inst_11 _inst_22 _inst_20) _inst_12 (LinearMap.addCommMonoid.{u6, u6, u1, u4} R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_21 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u1, u4} R R R Qₗ' Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_13 _inst_11 _inst_22 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))) (LinearMap.compl₁₂.{u6, u5, u3, u4, u2, u1} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f₁ g g') (LinearMap.compl₁₂.{u6, u5, u3, u4, u2, u1} R _inst_1 Mₗ Nₗ Pₗ Qₗ Qₗ' _inst_9 _inst_10 _inst_11 _inst_12 _inst_13 _inst_18 _inst_19 _inst_20 _inst_21 _inst_22 f₂ g g')) (Eq.{max (max (succ u5) (succ u3)) (succ u4)} (LinearMap.{u6, u6, u5, max u4 u3} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Mₗ (LinearMap.{u6, u6, u3, u4} R R (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_9 (LinearMap.addCommMonoid.{u6, u6, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)))) _inst_18 (LinearMap.instModuleLinearMapAddCommMonoid.{u6, u6, u6, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1))) (CommSemiring.toSemiring.{u6} R _inst_1) _inst_20 (smulCommClass_self.{u6, u4} R Pₗ (CommSemiring.toCommMonoid.{u6} R _inst_1) (MulActionWithZero.toMulAction.{u6, u4} R Pₗ (Semiring.toMonoidWithZero.{u6} R (CommSemiring.toSemiring.{u6} R _inst_1)) (AddMonoid.toZero.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11)) (Module.toMulActionWithZero.{u6, u4} R Pₗ (CommSemiring.toSemiring.{u6} R _inst_1) _inst_11 _inst_20))))) f₁ f₂))
Case conversion may be inaccurate. Consider using '#align linear_map.compl₁₂_inj LinearMap.compl₁₂_injₓ'. -/
theorem compl₁₂_inj {f₁ f₂ : Mₗ →ₗ[R] Nₗ →ₗ[R] Pₗ} {g : Qₗ →ₗ[R] Mₗ} {g' : Qₗ' →ₗ[R] Nₗ}
    (hₗ : Function.Surjective g) (hᵣ : Function.Surjective g') :
    f₁.compl₁₂ g g' = f₂.compl₁₂ g g' ↔ f₁ = f₂ :=
  by
  constructor <;> intro h
  · -- B₁.comp l r = B₂.comp l r → B₁ = B₂
    ext (x y)
    cases' hₗ x with x' hx
    subst hx
    cases' hᵣ y with y' hy
    subst hy
    convert LinearMap.congr_fun₂ h x' y'
  ·-- B₁ = B₂ → B₁.comp l r = B₂.comp l r
    subst h
#align linear_map.compl₁₂_inj LinearMap.compl₁₂_inj

#print LinearMap.compr₂ /-
/-- Composing a linear map `P → Q` and a bilinear map `M → N → P` to
form a bilinear map `M → N → Q`. -/
def compr₂ (f : M →ₗ[R] Nₗ →ₗ[R] Pₗ) (g : Pₗ →ₗ[R] Qₗ) : M →ₗ[R] Nₗ →ₗ[R] Qₗ :=
  llcomp R Nₗ Pₗ Qₗ g ∘ₗ f
#align linear_map.compr₂ LinearMap.compr₂
-/

/- warning: linear_map.compr₂_apply -> LinearMap.compr₂_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} {Nₗ : Type.{u3}} {Pₗ : Type.{u4}} {Qₗ : Type.{u5}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_10 : AddCommMonoid.{u3} Nₗ] [_inst_11 : AddCommMonoid.{u4} Pₗ] [_inst_12 : AddCommMonoid.{u5} Qₗ] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] [_inst_19 : Module.{u1, u3} R Nₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10] [_inst_20 : Module.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11] [_inst_21 : Module.{u1, u5} R Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_12] (f : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) (g : LinearMap.{u1, u1, u4, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Pₗ Qₗ _inst_11 _inst_12 _inst_20 _inst_21) (m : M) (n : Nₗ), Eq.{succ u5} Qₗ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) (fun (_x : LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) => Nₗ -> Qₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u5} R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u5)), max (succ u2) (succ (max u3 u5))} (LinearMap.{u1, u1, u2, max u3 u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u5} R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u5} R R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_21 (LinearMap.compr₂._proof_2.{u1, u5} R _inst_1 Qₗ _inst_12 _inst_21))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u5} R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u5} R R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_21 (LinearMap.compr₂._proof_2.{u1, u5} R _inst_1 Qₗ _inst_12 _inst_21))) => M -> (LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21)) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u5} R R M (LinearMap.{u1, u1, u3, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u5} R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u5} R R R Nₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_21 (LinearMap.compr₂._proof_2.{u1, u5} R _inst_1 Qₗ _inst_12 _inst_21)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.compr₂.{u1, u2, u3, u4, u5} R _inst_1 M Nₗ Pₗ Qₗ _inst_5 _inst_10 _inst_11 _inst_12 _inst_14 _inst_19 _inst_20 _inst_21 f g) m) n) (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearMap.{u1, u1, u4, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Pₗ Qₗ _inst_11 _inst_12 _inst_20 _inst_21) (fun (_x : LinearMap.{u1, u1, u4, u5} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Pₗ Qₗ _inst_11 _inst_12 _inst_20 _inst_21) => Pₗ -> Qₗ) (LinearMap.hasCoeToFun.{u1, u1, u4, u5} R R Pₗ Qₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_12 _inst_20 _inst_21 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) g (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (fun (_x : LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) => Nₗ -> Pₗ) (LinearMap.hasCoeToFun.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u4)), max (succ u2) (succ (max u3 u4))} (LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20))))) => M -> (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20)) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u4} R R M (LinearMap.{u1, u1, u3, u4} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u1, u1, u3, u4} R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) _inst_14 (LinearMap.module.{u1, u1, u1, u3, u4} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_20 (smulCommClass_self.{u1, u4} R Pₗ (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u4} R Pₗ (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u4} Pₗ (AddMonoid.toAddZeroClass.{u4} Pₗ (AddCommMonoid.toAddMonoid.{u4} Pₗ _inst_11))) (Module.toMulActionWithZero.{u1, u4} R Pₗ (CommSemiring.toSemiring.{u1} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) f m) n))
but is expected to have type
  forall {R : Type.{u5}} [_inst_1 : CommSemiring.{u5} R] {M : Type.{u4}} {Nₗ : Type.{u2}} {Pₗ : Type.{u3}} {Qₗ : Type.{u1}} [_inst_5 : AddCommMonoid.{u4} M] [_inst_10 : AddCommMonoid.{u2} Nₗ] [_inst_11 : AddCommMonoid.{u3} Pₗ] [_inst_12 : AddCommMonoid.{u1} Qₗ] [_inst_14 : Module.{u5, u4} R M (CommSemiring.toSemiring.{u5} R _inst_1) _inst_5] [_inst_19 : Module.{u5, u2} R Nₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10] [_inst_20 : Module.{u5, u3} R Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_11] [_inst_21 : Module.{u5, u1} R Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_12] (f : LinearMap.{u5, u5, u4, max u3 u2} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) M (LinearMap.{u5, u5, u2, u3} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u5, u5, u2, u3} R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u5, u2, u3} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_20 (smulCommClass_self.{u5, u3} R Pₗ (CommSemiring.toCommMonoid.{u5} R _inst_1) (MulActionWithZero.toMulAction.{u5, u3} R Pₗ (Semiring.toMonoidWithZero.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)) (AddMonoid.toZero.{u3} Pₗ (AddCommMonoid.toAddMonoid.{u3} Pₗ _inst_11)) (Module.toMulActionWithZero.{u5, u3} R Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_11 _inst_20))))) (g : LinearMap.{u5, u5, u3, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Pₗ Qₗ _inst_11 _inst_12 _inst_20 _inst_21) (m : M) (n : Nₗ), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Qₗ) n) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u5, u5, u2, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) m) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Qₗ) _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u2, u1} R R Nₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearMap.{u5, u5, u4, max u1 u2} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) M (LinearMap.{u5, u5, u2, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) _inst_5 (LinearMap.addCommMonoid.{u5, u5, u2, u1} R R Nₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u5, u2, u1} R R R Nₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_21 (smulCommClass_self.{u5, u1} R Qₗ (CommSemiring.toCommMonoid.{u5} R _inst_1) (MulActionWithZero.toMulAction.{u5, u1} R Qₗ (Semiring.toMonoidWithZero.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)) (AddMonoid.toZero.{u1} Qₗ (AddCommMonoid.toAddMonoid.{u1} Qₗ _inst_12)) (Module.toMulActionWithZero.{u5, u1} R Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_12 _inst_21))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u5, u5, u2, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, max u2 u1} R R M (LinearMap.{u5, u5, u2, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Qₗ _inst_10 _inst_12 _inst_19 _inst_21) (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u5, u5, u2, u1} R R Nₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u5, u2, u1} R R R Nₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_12 _inst_19 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_21 (smulCommClass_self.{u5, u1} R Qₗ (CommSemiring.toCommMonoid.{u5} R _inst_1) (MulActionWithZero.toMulAction.{u5, u1} R Qₗ (Semiring.toMonoidWithZero.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)) (AddMonoid.toZero.{u1} Qₗ (AddCommMonoid.toAddMonoid.{u1} Qₗ _inst_12)) (Module.toMulActionWithZero.{u5, u1} R Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_12 _inst_21)))) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) (LinearMap.compr₂.{u5, u4, u2, u3, u1} R _inst_1 M Nₗ Pₗ Qₗ _inst_5 _inst_10 _inst_11 _inst_12 _inst_14 _inst_19 _inst_20 _inst_21 f g) m) n) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (LinearMap.{u5, u5, u3, u1} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Pₗ Qₗ _inst_11 _inst_12 _inst_20 _inst_21) Pₗ (fun (_x : Pₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Pₗ) => Qₗ) _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u3, u1} R R Pₗ Qₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_11 _inst_12 _inst_20 _inst_21 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) g (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u5, u5, u2, u3} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) m) Nₗ (fun (_x : Nₗ) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Nₗ) => Pₗ) _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u2, u3} R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, max (succ u2) (succ u3)} (LinearMap.{u5, u5, u4, max u3 u2} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) M (LinearMap.{u5, u5, u2, u3} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _inst_5 (LinearMap.addCommMonoid.{u5, u5, u2, u3} R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u5, u2, u3} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_20 (smulCommClass_self.{u5, u3} R Pₗ (CommSemiring.toCommMonoid.{u5} R _inst_1) (MulActionWithZero.toMulAction.{u5, u3} R Pₗ (Semiring.toMonoidWithZero.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)) (AddMonoid.toZero.{u3} Pₗ (AddCommMonoid.toAddMonoid.{u3} Pₗ _inst_11)) (Module.toMulActionWithZero.{u5, u3} R Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_11 _inst_20))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => LinearMap.{u5, u5, u2, u3} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, max u2 u3} R R M (LinearMap.{u5, u5, u2, u3} R R (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) Nₗ Pₗ _inst_10 _inst_11 _inst_19 _inst_20) (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_5 (LinearMap.addCommMonoid.{u5, u5, u2, u3} R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) _inst_14 (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u5, u2, u3} R R R Nₗ Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_10 _inst_11 _inst_19 _inst_20 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1))) (CommSemiring.toSemiring.{u5} R _inst_1) _inst_20 (smulCommClass_self.{u5, u3} R Pₗ (CommSemiring.toCommMonoid.{u5} R _inst_1) (MulActionWithZero.toMulAction.{u5, u3} R Pₗ (Semiring.toMonoidWithZero.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)) (AddMonoid.toZero.{u3} Pₗ (AddCommMonoid.toAddMonoid.{u3} Pₗ _inst_11)) (Module.toMulActionWithZero.{u5, u3} R Pₗ (CommSemiring.toSemiring.{u5} R _inst_1) _inst_11 _inst_20)))) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R (CommSemiring.toSemiring.{u5} R _inst_1)))) f m) n))
Case conversion may be inaccurate. Consider using '#align linear_map.compr₂_apply LinearMap.compr₂_applyₓ'. -/
@[simp]
theorem compr₂_apply (f : M →ₗ[R] Nₗ →ₗ[R] Pₗ) (g : Pₗ →ₗ[R] Qₗ) (m : M) (n : Nₗ) :
    f.compr₂ g m n = g (f m n) :=
  rfl
#align linear_map.compr₂_apply LinearMap.compr₂_apply

variable (R M)

#print LinearMap.lsmul /-
/-- Scalar multiplication as a bilinear map `R → M → M`. -/
def lsmul : R →ₗ[R] M →ₗ[R] M :=
  mk₂ R (· • ·) add_smul (fun _ _ _ => mul_smul _ _ _) smul_add fun r s m => by
    simp only [smul_smul, smul_eq_mul, mul_comm]
#align linear_map.lsmul LinearMap.lsmul
-/

variable {R M}

/- warning: linear_map.lsmul_apply -> LinearMap.lsmul_apply is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] (r : R) (m : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) R (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_14 (LinearMap.lsmul._proof_1.{u1, u2} R _inst_1 M _inst_5 _inst_14))) (fun (_x : LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) R (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_14 (LinearMap.lsmul._proof_1.{u1, u2} R _inst_1 M _inst_5 _inst_14))) => R -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14)) (LinearMap.hasCoeToFun.{u1, u1, u1, u2} R R R (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_14 (LinearMap.lsmul._proof_1.{u1, u2} R _inst_1 M _inst_5 _inst_14)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.lsmul.{u1, u2} R _inst_1 M _inst_5 _inst_14) r) m) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5))) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14)))) r m)
but is expected to have type
  forall {R : Type.{u1}} [_inst_1 : CommSemiring.{u1} R] {M : Type.{u2}} [_inst_5 : AddCommMonoid.{u2} M] [_inst_14 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5] (r : R) (m : M), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) m) (FunLike.coe.{succ u2, succ u2, succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : R) => LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) r) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) R (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_14 (smulCommClass_self.{u1, u2} R M (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : R) => LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u1, u2} R R R (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) M M _inst_5 _inst_5 _inst_14 _inst_14) (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_5 _inst_14 _inst_14 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1))) (CommSemiring.toSemiring.{u1} R _inst_1) _inst_14 (smulCommClass_self.{u1, u2} R M (CommSemiring.toCommMonoid.{u1} R _inst_1) (MulActionWithZero.toMulAction.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)))) (LinearMap.lsmul.{u1, u2} R _inst_1 M _inst_5 _inst_14) r) m) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_5)) (Module.toMulActionWithZero.{u1, u2} R M (CommSemiring.toSemiring.{u1} R _inst_1) _inst_5 _inst_14))))) r m)
Case conversion may be inaccurate. Consider using '#align linear_map.lsmul_apply LinearMap.lsmul_applyₓ'. -/
@[simp]
theorem lsmul_apply (r : R) (m : M) : lsmul R M r m = r • m :=
  rfl
#align linear_map.lsmul_apply LinearMap.lsmul_apply

end CommSemiring

section CommRing

variable {R R₂ S S₂ M N P : Type _}

variable {Mₗ Nₗ Pₗ : Type _}

variable [CommRing R] [CommRing S] [CommRing R₂] [CommRing S₂]

section AddCommGroup

variable [AddCommGroup M] [AddCommGroup N] [AddCommGroup P]

variable [Module R M] [Module S N] [Module R₂ P] [Module S₂ P]

/- warning: linear_map.lsmul_injective -> LinearMap.lsmul_injective is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : CommRing.{u1} R] [_inst_5 : AddCommGroup.{u2} M] [_inst_8 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)] [_inst_12 : NoZeroSMulDivisors.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_5))))) (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))))] {x : R}, (Ne.{succ u1} R x (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)))))))))) -> (Function.Injective.{succ u2, succ u2} M M (coeFn.{succ u2, succ 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) => M -> M) (LinearMap.hasCoeToFun.{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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))) (fun (_x : LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))) => 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8)) (LinearMap.hasCoeToFun.{u1, u1, u1, u2} R R 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.lsmul.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8) x)))
but is expected to have type
  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : CommRing.{u2} R] [_inst_5 : AddCommGroup.{u1} M] [_inst_8 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5)] [_inst_12 : NoZeroSMulDivisors.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8))))] {x : R}, (Ne.{succ u2} R x (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) -> (Function.Injective.{succ u1, succ u1} M M (FunLike.coe.{succ u1, succ u1, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) x) 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (LinearMap.{u2, u2, u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (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_8 (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_5))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u1} R R 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (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))))) (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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (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_8 (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_5))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.lsmul.{u2, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8) x)))
Case conversion may be inaccurate. Consider using '#align linear_map.lsmul_injective LinearMap.lsmul_injectiveₓ'. -/
theorem lsmul_injective [NoZeroSMulDivisors R M] {x : R} (hx : x ≠ 0) :
    Function.Injective (lsmul R M x) :=
  smul_right_injective _ hx
#align linear_map.lsmul_injective LinearMap.lsmul_injective

/- warning: linear_map.ker_lsmul -> LinearMap.ker_lsmul is a dubious translation:
lean 3 declaration is
  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : CommRing.{u1} R] [_inst_5 : AddCommGroup.{u2} M] [_inst_8 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)] [_inst_12 : NoZeroSMulDivisors.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_5))))) (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))))] {a : R}, (Ne.{succ u1} R a (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.{succ u2} (Submodule.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8) (LinearMap.ker.{u1, u1, u2, 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (LinearMap.semilinearMapClass.{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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))) (fun (_x : LinearMap.{u1, u1, u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8))) => 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8)) (LinearMap.hasCoeToFun.{u1, u1, u1, u2} R R 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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (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_5) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u1} R (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_8 (LinearMap.lsmul._proof_1.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.lsmul.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8) a)) (Bot.bot.{u2} (Submodule.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8) (Submodule.hasBot.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_5) _inst_8)))
but is expected to have type
  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : CommRing.{u2} R] [_inst_5 : AddCommGroup.{u1} M] [_inst_8 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5)] [_inst_12 : NoZeroSMulDivisors.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_5))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8))))] {a : R}, (Ne.{succ u2} R a (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) -> (Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8) (LinearMap.ker.{u2, u2, u1, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) a) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (LinearMap.{u2, u2, u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) (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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (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_8 (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_5))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u2, u1} R R 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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (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))))) (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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (RingHom.id.{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_5) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8 _inst_8 (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_8 (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_5))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.lsmul.{u2, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8) a)) (Bot.bot.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8) (Submodule.instBotSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_5) _inst_8)))
Case conversion may be inaccurate. Consider using '#align linear_map.ker_lsmul LinearMap.ker_lsmulₓ'. -/
theorem ker_lsmul [NoZeroSMulDivisors R M] {a : R} (ha : a ≠ 0) : (LinearMap.lsmul R M a).ker = ⊥ :=
  LinearMap.ker_eq_bot_of_injective (LinearMap.lsmul_injective ha)
#align linear_map.ker_lsmul LinearMap.ker_lsmul

end AddCommGroup

end CommRing

end LinearMap