Documentation

Mathlib.Algebra.FreeAbelianGroup.Finsupp

Isomorphism between FreeAbelianGroup X and X →₀ ℤ #

In this file we construct the canonical isomorphism between FreeAbelianGroup X and X →₀ ℤ. We use this to transport the notion of support from Finsupp to FreeAbelianGroup.

Main declarations #

The group homomorphism FreeAbelianGroup X →+ (X →₀ ℤ).

Equations
@[simp]
theorem FreeAbelianGroup.toFinsupp_of {X : Type u_1} (x : X) :

The additive equivalence between FreeAbelianGroup X and (X →₀ ℤ).

Equations

coeff x is the additive group homomorphism FreeAbelianGroup X →+ ℤ that sends a to the multiplicity of x : X in a.

Equations

support a for a : FreeAbelianGroup X is the finite set of x : X that occur in the formal sum a.

Equations
theorem FreeAbelianGroup.mem_support_iff {X : Type u_1} (x : X) (a : FreeAbelianGroup X) :
x a.support (coeff x) a 0
theorem FreeAbelianGroup.notMem_support_iff {X : Type u_1} (x : X) (a : FreeAbelianGroup X) :
xa.support (coeff x) a = 0
@[deprecated FreeAbelianGroup.notMem_support_iff (since := "2025-05-23")]
theorem FreeAbelianGroup.not_mem_support_iff {X : Type u_1} (x : X) (a : FreeAbelianGroup X) :
xa.support (coeff x) a = 0

Alias of FreeAbelianGroup.notMem_support_iff.

@[simp]
theorem FreeAbelianGroup.support_of {X : Type u_1} (x : X) :
(of x).support = {x}
@[simp]
theorem FreeAbelianGroup.support_zsmul {X : Type u_1} (k : ) (h : k 0) (a : FreeAbelianGroup X) :
@[simp]
theorem FreeAbelianGroup.support_nsmul {X : Type u_1} (k : ) (h : k 0) (a : FreeAbelianGroup X) :