ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LieEquiv.to_linearEquiv_mk
@[simp]
theorem to_linearEquiv_mk (f : L₁ →ₗ⁅R⁆ L₂) (g h₁ h₂) :
    (mk f g h₁ h₂ : L₁ ≃ₗ[R] L₂) =
      { f with
        invFun := g
        left_inv := h₁
        right_inv := h₂ } 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (f : L₁ →ₗ⁅R⁆ L₂) (g : L₂ → L₁) (h₁ : Function.LeftInverse g (↑f).toFun) (h₂ : Function.RightInverse g (↑f).toFun)
Goal: { toLieHom := f, invFun := g, left_inv := h₁, right_inv := h₂ }.toLinearEquiv =
  { toLinearMap := ↑f, invFun := g, left_inv := h₁, right_inv := h₂ }
-- LieEquiv.coe_linearEquiv_injective
theorem coe_linearEquiv_injective : Injective ((↑) : (L₁ ≃ₗ⁅R⁆ L₂) → L₁ ≃ₗ[R] L₂) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂]
Goal: Function.Injective LieEquiv.toLinearEquiv
-- LieEquiv.coe_injective
theorem coe_injective : @Injective (L₁ ≃ₗ⁅R⁆ L₂) (L₁ → L₂) (↑) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂]
Goal: Function.Injective DFunLike.coe
-- LieEquiv.ext
@[ext]
theorem ext {f g : L₁ ≃ₗ⁅R⁆ L₂} (h : ∀ x, f x = g x) : f = g 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] {f g : L₁ ≃ₗ⁅R⁆ L₂} (h : ∀ (x : L₁), f x = g x)
Goal: f = g
-- LieEquiv.one_apply
@[simp]
theorem one_apply (x : L₁) : (1 : L₁ ≃ₗ⁅R⁆ L₁) x = x 
Arguments: {R : Type u} {L₁ : Type v} [CommRing R] [LieRing L₁] [LieAlgebra R L₁] (x : L₁)
Goal: 1 x = x
-- LieEquiv.map_lie
lemma map_lie (e : L₁ ≃ₗ⁅R⁆ L₂) (x y : L₁) : e ⁅x, y⁆ = ⁅e x, e y⁆ 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂) (x y : L₁)
Goal: e ⁅x, y⁆ = ⁅e x, e y⁆
-- LieEquiv.refl_apply
@[simp]
theorem refl_apply (x : L₁) : (refl : L₁ ≃ₗ⁅R⁆ L₁) x = x 
Arguments: {R : Type u} {L₁ : Type v} [CommRing R] [LieRing L₁] [LieAlgebra R L₁] (x : L₁)
Goal: LieEquiv.refl x = x
-- LieEquiv.symm_symm
@[simp]
theorem symm_symm (e : L₁ ≃ₗ⁅R⁆ L₂) : e.symm.symm = e 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: e.symm.symm = e
-- LieEquiv.symm_bijective
theorem symm_bijective : Function.Bijective (LieEquiv.symm : (L₁ ≃ₗ⁅R⁆ L₂) → L₂ ≃ₗ⁅R⁆ L₁) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂]
Goal: Function.Bijective LieEquiv.symm
-- LieEquiv.apply_symm_apply
@[simp]
theorem apply_symm_apply (e : L₁ ≃ₗ⁅R⁆ L₂) : ∀ x, e (e.symm x) = x 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂) (x : L₂)
Goal: e (e.symm x) = x
-- LieEquiv.symm_apply_apply
@[simp]
theorem symm_apply_apply (e : L₁ ≃ₗ⁅R⁆ L₂) : ∀ x, e.symm (e x) = x 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂) (x : L₁)
Goal: e.symm (e x) = x
-- LieEquiv.refl_symm
@[simp]
theorem refl_symm : (refl : L₁ ≃ₗ⁅R⁆ L₁).symm = refl 
Arguments: {R : Type u} {L₁ : Type v} [CommRing R] [LieRing L₁] [LieAlgebra R L₁]
Goal: LieEquiv.refl.symm = LieEquiv.refl
-- LieEquiv.self_trans_symm
@[simp]
theorem self_trans_symm (e : L₁ ≃ₗ⁅R⁆ L₂) : e.trans e.symm = refl 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: e.trans e.symm = LieEquiv.refl
-- LieEquiv.symm_trans_self
@[simp]
theorem symm_trans_self (e : L₁ ≃ₗ⁅R⁆ L₂) : e.symm.trans e = refl 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: e.symm.trans e = LieEquiv.refl
-- LieEquiv.trans_apply
@[simp]
theorem trans_apply (e₁ : L₁ ≃ₗ⁅R⁆ L₂) (e₂ : L₂ ≃ₗ⁅R⁆ L₃) (x : L₁) : (e₁.trans e₂) x = e₂ (e₁ x) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} {L₃ : Type w₁} [CommRing R] [LieRing L₁] [LieRing L₂] [LieRing L₃] [LieAlgebra R L₁] [LieAlgebra R L₂] [LieAlgebra R L₃] (e₁ : L₁ ≃ₗ⁅R⁆ L₂) (e₂ : L₂ ≃ₗ⁅R⁆ L₃) (x : L₁)
Goal: (e₁.trans e₂) x = e₂ (e₁ x)
-- LieEquiv.symm_trans
@[simp]
theorem symm_trans (e₁ : L₁ ≃ₗ⁅R⁆ L₂) (e₂ : L₂ ≃ₗ⁅R⁆ L₃) :
    (e₁.trans e₂).symm = e₂.symm.trans e₁.symm 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} {L₃ : Type w₁} [CommRing R] [LieRing L₁] [LieRing L₂] [LieRing L₃] [LieAlgebra R L₁] [LieAlgebra R L₂] [LieAlgebra R L₃] (e₁ : L₁ ≃ₗ⁅R⁆ L₂) (e₂ : L₂ ≃ₗ⁅R⁆ L₃)
Goal: (e₁.trans e₂).symm = e₂.symm.trans e₁.symm
-- LieEquiv.bijective
protected theorem bijective (e : L₁ ≃ₗ⁅R⁆ L₂) : Function.Bijective ((e : L₁ →ₗ⁅R⁆ L₂) : L₁ → L₂) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: Function.Bijective ⇑e.toLieHom
-- LieEquiv.injective
protected theorem injective (e : L₁ ≃ₗ⁅R⁆ L₂) : Function.Injective ((e : L₁ →ₗ⁅R⁆ L₂) : L₁ → L₂) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: Function.Injective ⇑e.toLieHom
-- LieEquiv.surjective
protected theorem surjective (e : L₁ ≃ₗ⁅R⁆ L₂) :
    Function.Surjective ((e : L₁ →ₗ⁅R⁆ L₂) : L₁ → L₂) 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (e : L₁ ≃ₗ⁅R⁆ L₂)
Goal: Function.Surjective ⇑e.toLieHom
-- LieEquiv.ofBijective_toFun
@[simps!]
noncomputable def ofBijective (f : L₁ →ₗ⁅R⁆ L₂) (h : Function.Bijective f) : L₁ ≃ₗ⁅R⁆ L₂ 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (f : L₁ →ₗ⁅R⁆ L₂) (h : Function.Bijective ⇑f) (a : L₁)
Goal: (LieEquiv.ofBijective f h) a = f a
-- LieEquiv.ofBijective_invFun
@[simps!]
noncomputable def ofBijective (f : L₁ →ₗ⁅R⁆ L₂) (h : Function.Bijective f) : L₁ ≃ₗ⁅R⁆ L₂ 
Arguments: {R : Type u} {L₁ : Type v} {L₂ : Type w} [CommRing R] [LieRing L₁] [LieRing L₂] [LieAlgebra R L₁] [LieAlgebra R L₂] (f : L₁ →ₗ⁅R⁆ L₂) (h : Function.Bijective ⇑f)
Goal: ∀ (a : L₂), (LieEquiv.ofBijective f h).invFun a = (LinearEquiv.ofBijective (↑f) h).symm a
-- LieModuleHom.map_lie'
structure LieModuleHom extends M →ₗ[R] N where
    map_lie' : ∀ {x : L} {m : M}, toFun ⁅x, m⁆ = ⁅x, toFun m⁆
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (self : M →ₗ⁅R,L⁆ N) {x : L} {m : M}
Goal: (↑self).toFun ⁅x, m⁆ = ⁅x, (↑self).toFun m⁆
-- LieModuleHom.coe_toLinearMap
@[simp, norm_cast]
theorem coe_toLinearMap (f : M →ₗ⁅R,L⁆ N) : ((f : M →ₗ[R] N) : M → N) = f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N)
Goal: ⇑↑f = ⇑f
-- LieModuleHom.map_smul
@[simp]
theorem map_smul (f : M →ₗ⁅R,L⁆ N) (c : R) (x : M) : f (c • x) = c • f x 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (c : R) (x : M)
Goal: f (c • x) = c • f x
-- LieModuleHom.map_add
@[simp]
theorem map_add (f : M →ₗ⁅R,L⁆ N) (x y : M) : f (x + y) = f x + f y 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (x y : M)
Goal: f (x + y) = f x + f y
-- LieModuleHom.map_sub
@[simp]
theorem map_sub (f : M →ₗ⁅R,L⁆ N) (x y : M) : f (x - y) = f x - f y 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (x y : M)
Goal: f (x - y) = f x - f y
-- LieModuleHom.map_neg
@[simp]
theorem map_neg (f : M →ₗ⁅R,L⁆ N) (x : M) : f (-x) = -f x 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (x : M)
Goal: f (-x) = -f x
-- LieModuleHom.map_lie
@[simp]
theorem map_lie (f : M →ₗ⁅R,L⁆ N) (x : L) (m : M) : f ⁅x, m⁆ = ⁅x, f m⁆ 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (x : L) (m : M)
Goal: f ⁅x, m⁆ = ⁅x, f m⁆
-- LieModuleHom.map_lie₂
theorem map_lie₂ (f : M →ₗ⁅R,L⁆ N →ₗ[R] P) (x : L) (m : M) (n : N) :
    ⁅x, f m n⁆ = f ⁅x, m⁆ n + f m ⁅x, n⁆ 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} {P : Type w₂} [CommRing R] [LieRing L] [LieAlgebra R L] [AddCommGroup M] [AddCommGroup N] [AddCommGroup P] [Module R M] [Module R N] [Module R P] [LieRingModule L M] [LieRingModule L N] [LieRingModule L P] [LieModule R L N] [LieModule R L P] (f : M →ₗ⁅R,L⁆ N →ₗ[R] P) (x : L) (m : M) (n : N)
Goal: ⁅x, (f m) n⁆ = (f ⁅x, m⁆) n + (f m) ⁅x, n⁆
-- LieModuleHom.map_zero
@[simp]
theorem map_zero (f : M →ₗ⁅R,L⁆ N) : f 0 = 0 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N)
Goal: f 0 = 0
-- LieModuleHom.coe_id
@[simp]
theorem coe_id : ((id : M →ₗ⁅R,L⁆ M) : M → M) = _root_.id 
Arguments: {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M]
Goal: ⇑LieModuleHom.id = id
-- LieModuleHom.id_apply
theorem id_apply (x : M) : (id : M →ₗ⁅R,L⁆ M) x = x 
Arguments: {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (x : M)
Goal: LieModuleHom.id x = x
-- LieModuleHom.coe_zero
@[norm_cast, simp]
theorem coe_zero : ⇑(0 : M →ₗ⁅R,L⁆ N) = 0 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N]
Goal: ⇑0 = 0
-- LieModuleHom.zero_apply
theorem zero_apply (m : M) : (0 : M →ₗ⁅R,L⁆ N) m = 0 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (m : M)
Goal: 0 m = 0
-- LieModuleHom.coe_injective
theorem coe_injective : @Function.Injective (M →ₗ⁅R,L⁆ N) (M → N) (↑) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N]
Goal: Function.Injective DFunLike.coe
-- LieModuleHom.ext
@[ext]
theorem ext {f g : M →ₗ⁅R,L⁆ N} (h : ∀ m, f m = g m) : f = g 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] {f g : M →ₗ⁅R,L⁆ N} (h : ∀ (m : M), f m = g m)
Goal: f = g
-- LieModuleHom.ext_iff
theorem ext_iff {f g : M →ₗ⁅R,L⁆ N} : f = g ↔ ∀ m, f m = g m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] {f g : M →ₗ⁅R,L⁆ N}
Goal: f = g ↔ ∀ (m : M), f m = g m
-- LieModuleHom.congr_fun
theorem congr_fun {f g : M →ₗ⁅R,L⁆ N} (h : f = g) (x : M) : f x = g x 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] {f g : M →ₗ⁅R,L⁆ N} (h : f = g) (x : M)
Goal: f x = g x
-- LieModuleHom.mk_coe
@[simp]
theorem mk_coe (f : M →ₗ⁅R,L⁆ N) (h) : (⟨f, h⟩ : M →ₗ⁅R,L⁆ N) = f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (h : ∀ {x : L} {m : M}, (↑f).toFun ⁅x, m⁆ = ⁅x, (↑f).toFun m⁆)
Goal: { toLinearMap := ↑f, map_lie' := h } = f
-- LieModuleHom.coe_mk
@[simp]
theorem coe_mk (f : M →ₗ[R] N) (h) : ((⟨f, h⟩ : M →ₗ⁅R,L⁆ N) : M → N) = f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ[R] N) (h : ∀ {x : L} {m : M}, f.toFun ⁅x, m⁆ = ⁅x, f.toFun m⁆)
Goal: ⇑{ toLinearMap := f, map_lie' := h } = ⇑f
-- LieModuleHom.coe_linear_mk
@[norm_cast]
theorem coe_linear_mk (f : M →ₗ[R] N) (h) : ((⟨f, h⟩ : M →ₗ⁅R,L⁆ N) : M →ₗ[R] N) = f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ[R] N) (h : ∀ {x : L} {m : M}, f.toFun ⁅x, m⁆ = ⁅x, f.toFun m⁆)
Goal: ↑{ toLinearMap := f, map_lie' := h } = f
-- LieModuleHom.comp_apply
theorem comp_apply (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N) (m : M) : f.comp g m = f (g m) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} {P : Type w₂} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [AddCommGroup P] [Module R M] [Module R N] [Module R P] [LieRingModule L M] [LieRingModule L N] [LieRingModule L P] (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (f.comp g) m = f (g m)
-- LieModuleHom.coe_comp
@[norm_cast, simp]
theorem coe_comp (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N) : ⇑(f.comp g) = f ∘ g 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} {P : Type w₂} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [AddCommGroup P] [Module R M] [Module R N] [Module R P] [LieRingModule L M] [LieRingModule L N] [LieRingModule L P] (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N)
Goal: ⇑(f.comp g) = ⇑f ∘ ⇑g
-- LieModuleHom.coe_linearMap_comp
@[norm_cast, simp]
theorem coe_linearMap_comp (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N) :
    (f.comp g : M →ₗ[R] P) = (f : N →ₗ[R] P).comp (g : M →ₗ[R] N) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} {P : Type w₂} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [AddCommGroup P] [Module R M] [Module R N] [Module R P] [LieRingModule L M] [LieRingModule L N] [LieRingModule L P] (f : N →ₗ⁅R,L⁆ P) (g : M →ₗ⁅R,L⁆ N)
Goal: ↑(f.comp g) = ↑f ∘ₗ ↑g
-- LieModuleHom.coe_add
@[norm_cast, simp]
theorem coe_add (f g : M →ₗ⁅R,L⁆ N) : ⇑(f + g) = f + g 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f g : M →ₗ⁅R,L⁆ N)
Goal: ⇑(f + g) = ⇑f + ⇑g
-- LieModuleHom.add_apply
theorem add_apply (f g : M →ₗ⁅R,L⁆ N) (m : M) : (f + g) m = f m + g m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f g : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (f + g) m = f m + g m
-- LieModuleHom.coe_sub
@[norm_cast, simp]
theorem coe_sub (f g : M →ₗ⁅R,L⁆ N) : ⇑(f - g) = f - g 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f g : M →ₗ⁅R,L⁆ N)
Goal: ⇑(f - g) = ⇑f - ⇑g
-- LieModuleHom.sub_apply
theorem sub_apply (f g : M →ₗ⁅R,L⁆ N) (m : M) : (f - g) m = f m - g m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f g : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (f - g) m = f m - g m
-- LieModuleHom.coe_neg
@[norm_cast, simp]
theorem coe_neg (f : M →ₗ⁅R,L⁆ N) : ⇑(-f) = -f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N)
Goal: ⇑(-f) = -⇑f
-- LieModuleHom.neg_apply
theorem neg_apply (f : M →ₗ⁅R,L⁆ N) (m : M) : (-f) m = -f m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (-f) m = -f m
-- LieModuleHom.coe_nsmul
@[norm_cast, simp]
theorem coe_nsmul (n : ℕ) (f : M →ₗ⁅R,L⁆ N) : ⇑(n • f) = n • (⇑f) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (n : ℕ) (f : M →ₗ⁅R,L⁆ N)
Goal: ⇑(n • f) = n • ⇑f
-- LieModuleHom.nsmul_apply
theorem nsmul_apply (n : ℕ) (f : M →ₗ⁅R,L⁆ N) (m : M) : (n • f) m = n • f m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (n : ℕ) (f : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (n • f) m = n • f m
-- LieModuleHom.coe_zsmul
@[norm_cast, simp]
theorem coe_zsmul (z : ℤ) (f : M →ₗ⁅R,L⁆ N) : ⇑(z • f) = z • (⇑f) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (z : ℤ) (f : M →ₗ⁅R,L⁆ N)
Goal: ⇑(z • f) = z • ⇑f
-- LieModuleHom.zsmul_apply
theorem zsmul_apply (z : ℤ) (f : M →ₗ⁅R,L⁆ N) (m : M) : (z • f) m = z • f m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (z : ℤ) (f : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (z • f) m = z • f m
-- LieModuleHom.coe_smul
@[norm_cast, simp]
theorem coe_smul (t : R) (f : M →ₗ⁅R,L⁆ N) : ⇑(t • f) = t • (⇑f) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [LieAlgebra R L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] [LieModule R L N] (t : R) (f : M →ₗ⁅R,L⁆ N)
Goal: ⇑(t • f) = t • ⇑f
-- LieModuleHom.smul_apply
theorem smul_apply (t : R) (f : M →ₗ⁅R,L⁆ N) (m : M) : (t • f) m = t • f m 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [LieAlgebra R L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] [LieModule R L N] (t : R) (f : M →ₗ⁅R,L⁆ N) (m : M)
Goal: (t • f) m = t • f m
-- LieModuleEquiv.right_inv
structure LieModuleEquiv extends M →ₗ⁅R,L⁆ N where
    invFun : N → M
    left_inv : Function.LeftInverse invFun toFun
    right_inv : Function.RightInverse invFun toFun
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (self : M ≃ₗ⁅R,L⁆ N)
Goal: Function.RightInverse self.invFun (↑self.toLieModuleHom).toFun
-- LieModuleEquiv.left_inv
structure LieModuleEquiv extends M →ₗ⁅R,L⁆ N where
    invFun : N → M
    left_inv : Function.LeftInverse invFun toFun
    right_inv : Function.RightInverse invFun toFun
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (self : M ≃ₗ⁅R,L⁆ N)
Goal: Function.LeftInverse self.invFun (↑self.toLieModuleHom).toFun
-- LieModuleEquiv.coe_coe
@[simp] lemma coe_coe (e : M ≃ₗ⁅R,L⁆ N) : ⇑(e : M →ₗ⁅R,L⁆ N) = e 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N)
Goal: ⇑e.toLieModuleHom = ⇑e
-- LieModuleEquiv.injective
theorem injective (e : M ≃ₗ⁅R,L⁆ N) : Function.Injective e 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N)
Goal: Function.Injective ⇑e
-- LieModuleEquiv.surjective
theorem surjective (e : M ≃ₗ⁅R,L⁆ N) : Function.Surjective e 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N)
Goal: Function.Surjective ⇑e
-- LieModuleEquiv.toEquiv_mk
@[simp]
theorem toEquiv_mk (f : M →ₗ⁅R,L⁆ N) (g : N → M) (h₁ h₂) :
    toEquiv (mk f g h₁ h₂ : M ≃ₗ⁅R,L⁆ N) = Equiv.mk f g h₁ h₂ 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (g : N → M) (h₁ : Function.LeftInverse g (↑f).toFun) (h₂ : Function.RightInverse g (↑f).toFun)
Goal: { toLieModuleHom := f, invFun := g, left_inv := h₁, right_inv := h₂ }.toEquiv =
  { toFun := ⇑f, invFun := g, left_inv := h₁, right_inv := h₂ }
-- LieModuleEquiv.coe_mk
@[simp]
theorem coe_mk (f : M →ₗ⁅R,L⁆ N) (invFun h₁ h₂) :
    ((⟨f, invFun, h₁, h₂⟩ : M ≃ₗ⁅R,L⁆ N) : M → N) = f 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (f : M →ₗ⁅R,L⁆ N) (invFun : N → M) (h₁ : Function.LeftInverse invFun (↑f).toFun) (h₂ : Function.RightInverse invFun (↑f).toFun)
Goal: ⇑{ toLieModuleHom := f, invFun := invFun, left_inv := h₁, right_inv := h₂ } = ⇑f
-- LieModuleEquiv.coe_to_lieModuleHom
theorem coe_to_lieModuleHom (e : M ≃ₗ⁅R,L⁆ N) : ⇑(e : M →ₗ⁅R,L⁆ N) = e 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N)
Goal: ⇑e.toLieModuleHom = ⇑e
-- LieModuleEquiv.coe_to_linearEquiv
@[simp]
theorem coe_to_linearEquiv (e : M ≃ₗ⁅R,L⁆ N) : ((e : M ≃ₗ[R] N) : M → N) = e 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N)
Goal: ⇑e.toLinearEquiv = ⇑e
-- LieModuleEquiv.toEquiv_injective
theorem toEquiv_injective : Function.Injective (toEquiv : (M ≃ₗ⁅R,L⁆ N) → M ≃ N) 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N]
Goal: Function.Injective LieModuleEquiv.toEquiv
-- LieModuleEquiv.ext
@[ext]
theorem ext (e₁ e₂ : M ≃ₗ⁅R,L⁆ N) (h : ∀ m, e₁ m = e₂ m) : e₁ = e₂ 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e₁ e₂ : M ≃ₗ⁅R,L⁆ N) (h : ∀ (m : M), e₁ m = e₂ m)
Goal: e₁ = e₂
-- LieModuleEquiv.one_apply
@[simp]
theorem one_apply (m : M) : (1 : M ≃ₗ⁅R,L⁆ M) m = m 
Arguments: {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (m : M)
Goal: 1 m = m
-- LieModuleEquiv.refl_apply
@[simp]
theorem refl_apply (m : M) : (refl : M ≃ₗ⁅R,L⁆ M) m = m 
Arguments: {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (m : M)
Goal: LieModuleEquiv.refl m = m
-- LieModuleEquiv.apply_symm_apply
@[simp]
theorem apply_symm_apply (e : M ≃ₗ⁅R,L⁆ N) : ∀ x, e (e.symm x) = x 
Arguments: {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [LieRingModule L M] [LieRingModule L N] (e : M ≃ₗ⁅R,L⁆ N) (x : N)
Goal: e (e.symm x) = x