Properties of the module α →₀ M #
Finsupp.linearEquivFunOnFinite:α →₀ βanda → βare equivalent ifαis finiteFunOnFinite.map: the map(X → M) → (Y → M)induced by a mapf : X ⟶ YwhenXandYare finite.FunOnFinite.linearMmap: the linear map(X → M) →ₗ[R] (Y → M)induced by a mapf : X ⟶ YwhenXandYare finite.
Tags #
function with finite support, module, linear algebra
@[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]
:
Forget that a function is finitely supported.
This is the linear version of Finsupp.toFun.
Instances For
@[simp]
theorem
Finsupp.lcoeFun_comp_lsingle
{α : Type u_1}
{M : Type u_2}
{R : Type u_5}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[DecidableEq α]
(x : α)
:
noncomputable def
LinearMap.prodOfFinsuppNat
{R : Type u_1}
{M : Type u_2}
{P : Type u_4}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid P]
[Module R P]
(f : P × M →ₗ[R] M)
:
A linear map from a product module P × M to M induces a linear map from P^(ℕ) to M,
where the nth component is given by P —ι₁→ P × M composed with P × M —f→ M —ι₂→ P × M
n times.
Instances For
theorem
LinearMap.fst_prodOfFinsuppNat
{R : Type u_1}
{M : Type u_2}
{P : Type u_4}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid P]
[Module R P]
(f : P × M →ₗ[R] M)
(x : ℕ →₀ P)
:
theorem
LinearMap.snd_prodOfFinsuppNat
{R : Type u_1}
{M : Type u_2}
{P : Type u_4}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid P]
[Module R P]
(f : P × M →ₗ[R] M)
(x : ℕ →₀ P)
:
theorem
LinearMap.prodOfFinsuppNat_injective
{R : Type u_1}
{M : Type u_2}
{P : Type u_4}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid P]
[Module R P]
{f : P × M →ₗ[R] M}
(inj : Function.Injective ⇑f)
:
theorem
LinearMap.exists_finsupp_nat_of_prod_injective
{R : Type u_1}
{M : Type u_2}
{P : Type u_4}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid P]
[Module R P]
{f : P × M →ₗ[R] M}
(inj : Function.Injective ⇑f)
:
∃ (g : (ℕ →₀ P) →ₗ[R] M), Function.Injective ⇑g
theorem
LinearMap.exists_finsupp_nat_of_fin_fun_injective
{R : Type u_1}
{P : Type u_4}
[Semiring R]
[AddCommMonoid P]
[Module R P]
{n : ℕ}
{f : (Fin (n + 1) → P) →ₗ[R] Fin n → P}
(inj : Function.Injective ⇑f)
:
noncomputable def
LinearMap.splittingOfFunOnFintypeSurjective
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{α : Type u_5}
[Finite α]
(f : M →ₗ[R] α → R)
(s : Function.Surjective ⇑f)
:
A surjective linear map to functions on a finite type has a splitting.
Instances For
theorem
LinearMap.splittingOfFunOnFintypeSurjective_splits
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{α : Type u_5}
[Finite α]
(f : M →ₗ[R] α → R)
(s : Function.Surjective ⇑f)
:
theorem
LinearMap.leftInverse_splittingOfFunOnFintypeSurjective
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{α : Type u_5}
[Finite α]
(f : M →ₗ[R] α → R)
(s : Function.Surjective ⇑f)
:
theorem
LinearMap.splittingOfFunOnFintypeSurjective_injective
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{α : Type u_5}
[Finite α]
(f : M →ₗ[R] α → R)
(s : Function.Surjective ⇑f)
:
def
Finsupp.submodule
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{α : Type u_5}
(S : α → Submodule R M)
:
Given a family Sᵢ of R-submodules of M indexed by a type α, this is the R-submodule
of α →₀ M of functions f such that f i ∈ Sᵢ for all i : α.
Instances For
theorem
Finsupp.ker_mapRange
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
[Semiring R]
[AddCommMonoid M]
[Module R M]
[AddCommMonoid N]
[Module R N]
(f : M →ₗ[R] N)
(I : Type u_6)
:
noncomputable def
FunOnFinite.map
{M : Type u_5}
[AddCommMonoid M]
{X : Type u_6}
{Y : Type u_7}
[Finite X]
[Finite Y]
(f : X → Y)
(s : X → M)
:
Y → M
The map (X → M) → (Y → M) induced by a map X → Y between finite types.
Instances For
theorem
FunOnFinite.map_apply_apply
{M : Type u_5}
[AddCommMonoid M]
{X : Type u_6}
{Y : Type u_7}
[Fintype X]
[Finite Y]
[DecidableEq Y]
(f : X → Y)
(s : X → M)
(y : Y)
:
@[simp]
theorem
FunOnFinite.map_piSingle
{M : Type u_5}
[AddCommMonoid M]
{X : Type u_6}
{Y : Type u_7}
[Finite X]
[Finite Y]
[DecidableEq X]
[DecidableEq Y]
(f : X → Y)
(x : X)
(m : M)
:
@[simp]
theorem
FunOnFinite.linearMap_piSingle
(R : Type u_5)
(M : Type u_6)
[Semiring R]
[AddCommMonoid M]
[Module R M]
{X : Type u_7}
{Y : Type u_8}
[Finite X]
[Finite Y]
[DecidableEq X]
[DecidableEq Y]
(f : X → Y)
(x : X)
(m : M)
:
@[simp]
theorem
FunOnFinite.linearMap_id
(R : Type u_5)
(M : Type u_6)
[Semiring R]
[AddCommMonoid M]
[Module R M]
(X : Type u_7)
[Finite X]
: