File: Mathlib/Algebra/Lie/BaseChange.lean

full_name: _private.Mathlib.Algebra.Lie.BaseChange.0.LieAlgebra.ExtendScalars.bracket'
code: /-- The Lie bracket on the extension of a Lie algebra `L` over `R` by an algebra `A` over `R`. -/
private def bracket' : A ⊗[R] L →ₗ[A] A ⊗[R] M →ₗ[A] A ⊗[R] M 
goal: A ⊗[R] L →ₗ[A] A ⊗[R] M →ₗ[A] A ⊗[R] M

full_name: _private.Mathlib.Algebra.Lie.BaseChange.0.LieAlgebra.ExtendScalars.bracket'_tmul
code: @[simp]
private theorem bracket'_tmul (s t : A) (x : L) (m : M) :
    bracket' R A L M (s ⊗ₜ[R] x) (t ⊗ₜ[R] m) = (s * t) ⊗ₜ ⁅x, m⁆ 
goal: ((LieAlgebra.ExtendScalars.bracket' R A L M) (s ⊗ₜ[R] x)) (t ⊗ₜ[R] m) = (s * t) ⊗ₜ[R] ⁅x, m⁆

full_name: LieAlgebra.ExtendScalars.instBracketTensorProduct
code: instance : Bracket (A ⊗[R] L) (A ⊗[R] M) 
goal: Bracket (A ⊗[R] L) (A ⊗[R] M)

full_name: _private.Mathlib.Algebra.Lie.BaseChange.0.LieAlgebra.ExtendScalars.bracket_def
code: private theorem bracket_def (x : A ⊗[R] L) (m : A ⊗[R] M) : ⁅x, m⁆ = bracket' R A L M x m 
goal: ⁅x, m⁆ = ((LieAlgebra.ExtendScalars.bracket' R A L M) x) m

full_name: LieAlgebra.ExtendScalars.bracket_tmul
code: @[simp]
theorem bracket_tmul (s t : A) (x : L) (y : M) : ⁅s ⊗ₜ[R] x, t ⊗ₜ[R] y⁆ = (s * t) ⊗ₜ ⁅x, y⁆ 
goal: ⁅s ⊗ₜ[R] x, t ⊗ₜ[R] y⁆ = (s * t) ⊗ₜ[R] ⁅x, y⁆

full_name: _private.Mathlib.Algebra.Lie.BaseChange.0.LieAlgebra.ExtendScalars.bracket_lie_self
code: private theorem bracket_lie_self (x : A ⊗[R] L) : ⁅x, x⁆ = 0 
goal: ⁅x, x⁆ = 0

full_name: _private.Mathlib.Algebra.Lie.BaseChange.0.LieAlgebra.ExtendScalars.bracket_leibniz_lie
code: private theorem bracket_leibniz_lie (x y : A ⊗[R] L) (z : A ⊗[R] M) :
    ⁅x, ⁅y, z⁆⁆ = ⁅⁅x, y⁆, z⁆ + ⁅y, ⁅x, z⁆⁆ 
goal: ⁅x, ⁅y, z⁆⁆ = ⁅⁅x, y⁆, z⁆ + ⁅y, ⁅x, z⁆⁆

full_name: LieAlgebra.ExtendScalars.instLieRing
code: instance instLieRing : LieRing (A ⊗[R] L) 
goal: LieRing (A ⊗[R] L)

full_name: LieAlgebra.ExtendScalars.instLieAlgebra
code: instance instLieAlgebra : LieAlgebra A (A ⊗[R] L) 
goal: LieAlgebra A (A ⊗[R] L)

full_name: LieAlgebra.ExtendScalars.instLieRingModule
code: instance instLieRingModule : LieRingModule (A ⊗[R] L) (A ⊗[R] M) 
goal: LieRingModule (A ⊗[R] L) (A ⊗[R] M)

full_name: LieAlgebra.ExtendScalars.instLieModule
code: instance instLieModule : LieModule A (A ⊗[R] L) (A ⊗[R] M) 
goal: LieModule A (A ⊗[R] L) (A ⊗[R] M)

full_name: LieAlgebra.RestrictScalars.instLieRingRestrictScalars
code: instance : LieRing (RestrictScalars R A L) 
goal: LieRing (RestrictScalars R A L)

full_name: LieAlgebra.RestrictScalars.lieAlgebra
code: instance lieAlgebra [CommRing R] [Algebra R A] : LieAlgebra R (RestrictScalars R A L) 
goal: LieAlgebra R (RestrictScalars R A L)

full_name: LieModule.toEnd_baseChange
code: @[simp]
lemma LieModule.toEnd_baseChange (x : L) :
    toEnd A (A ⊗[R] L) (A ⊗[R] M) (1 ⊗ₜ x) = (toEnd R L M x).baseChange A 
goal: (LieModule.toEnd A (A ⊗[R] L) (A ⊗[R] M)) (1 ⊗ₜ[R] x) = LinearMap.baseChange A ((LieModule.toEnd R L M) x)

full_name: LieSubmodule.baseChange
code: /-- If `A` is an `R`-algebra, any Lie submodule of a Lie module `M` with coefficients in `R` may be
pushed forward to a Lie submodule of `A ⊗ M` with coefficients in `A`.

This "base change" operation is also known as "extension of scalars". -/
def baseChange : LieSubmodule A (A ⊗[R] L) (A ⊗[R] M) 
goal: LieSubmodule A (A ⊗[R] L) (A ⊗[R] M)

full_name: LieSubmodule.coe_baseChange
code: @[simp]
lemma coe_baseChange :
    (N.baseChange A : Submodule A (A ⊗[R] M)) = (N : Submodule R M).baseChange A 
goal: ↑(LieSubmodule.baseChange A N) = Submodule.baseChange A ↑N

full_name: LieSubmodule.tmul_mem_baseChange_of_mem
code: lemma tmul_mem_baseChange_of_mem (a : A) {m : M} (hm : m ∈ N) :
    a ⊗ₜ[R] m ∈ N.baseChange A 
goal: a ⊗ₜ[R] m ∈ LieSubmodule.baseChange A N

full_name: LieSubmodule.mem_baseChange_iff
code: lemma mem_baseChange_iff {m : A ⊗[R] M} :
    m ∈ N.baseChange A ↔
    m ∈ Submodule.span A ((N : Submodule R M).map (TensorProduct.mk R A M 1)) 
goal: m ∈ LieSubmodule.baseChange A N ↔ m ∈ Submodule.span A ↑(Submodule.map ((TensorProduct.mk R A M) 1) ↑N)

full_name: LieSubmodule.baseChange_bot
code: @[simp]
lemma baseChange_bot : (⊥ : LieSubmodule R L M).baseChange A = ⊥ 
goal: LieSubmodule.baseChange A ⊥ = ⊥

full_name: LieSubmodule.baseChange_top
code: @[simp]
lemma baseChange_top : (⊤ : LieSubmodule R L M).baseChange A = ⊤ 
goal: LieSubmodule.baseChange A ⊤ = ⊤

full_name: LieSubmodule.lie_baseChange
code: lemma lie_baseChange {I : LieIdeal R L} {N : LieSubmodule R L M} :
    ⁅I, N⁆.baseChange A = ⁅I.baseChange A, N.baseChange A⁆ 
goal: LieSubmodule.baseChange A ⁅I, N⁆ = ⁅LieSubmodule.baseChange A I, LieSubmodule.baseChange A N⁆