HepLean Documentation

Mathlib.LinearAlgebra.Finsupp.Pi

Properties of the module α →₀ M #

Tags #

function with finite support, module, linear algebra

noncomputable def Finsupp.LinearEquiv.finsuppUnique (R : Type u_1) (M : Type u_3) [AddCommMonoid M] [Semiring R] [Module R M] (α : Type u_4) [Unique α] :
(α →₀ M) ≃ₗ[R] M

If α has a unique term, then the type of finitely supported functions α →₀ M is R-linearly equivalent to M.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem Finsupp.LinearEquiv.finsuppUnique_apply {R : Type u_1} {M : Type u_3} [AddCommMonoid M] [Semiring R] [Module R M] (α : Type u_4) [Unique α] (f : α →₀ M) :
    @[simp]
    theorem Finsupp.LinearEquiv.finsuppUnique_symm_apply {R : Type u_1} {M : Type u_3} [AddCommMonoid M] [Semiring R] [Module R M] {α : Type u_4} [Unique α] (m : M) :
    def Finsupp.lcoeFun {α : Type u_1} {M : Type u_2} {R : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] :
    (α →₀ M) →ₗ[R] αM

    Forget that a function is finitely supported.

    This is the linear version of Finsupp.toFun.

    Equations
    • Finsupp.lcoeFun = { toFun := DFunLike.coe, map_add' := , map_smul' := }
    Instances For
      @[simp]
      theorem Finsupp.lcoeFun_apply {α : Type u_1} {M : Type u_2} {R : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] (a✝ : α →₀ M) (a : α) :
      Finsupp.lcoeFun a✝ a = a✝ a
      def LinearMap.splittingOfFunOnFintypeSurjective {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {α : Type u_4} [Finite α] (f : M →ₗ[R] αR) (s : Function.Surjective f) :
      (αR) →ₗ[R] M

      A surjective linear map to functions on a finite type has a splitting.

      Equations
      Instances For
        theorem LinearMap.splittingOfFunOnFintypeSurjective_splits {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {α : Type u_4} [Finite α] (f : M →ₗ[R] αR) (s : Function.Surjective f) :
        f ∘ₗ f.splittingOfFunOnFintypeSurjective s = LinearMap.id
        theorem LinearMap.leftInverse_splittingOfFunOnFintypeSurjective {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {α : Type u_4} [Finite α] (f : M →ₗ[R] αR) (s : Function.Surjective f) :
        Function.LeftInverse f (f.splittingOfFunOnFintypeSurjective s)
        theorem LinearMap.splittingOfFunOnFintypeSurjective_injective {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {α : Type u_4} [Finite α] (f : M →ₗ[R] αR) (s : Function.Surjective f) :
        Function.Injective (f.splittingOfFunOnFintypeSurjective s)