Documentation

TauCeti.Algebra.Module.SpanRank

Generating families and the least number of generators #

For a finitely generated submodule, its least number of generators is at most n exactly when it has a generating family indexed by Fin n; a shorter family can be padded with zeros.

If p ≤ q are submodules with p finitely generated, the spanFinrank of q is bounded by those of p and the image of q in M ⧸ p. When q is finitely generated, this bounds its least number of generators: generators of p together with lifts of generators of the image generate q. For a non-finitely-generated submodule, spanFinrank is defined to be 0.

Main results #

References #

theorem Submodule.FG.spanFinrank_le_iff_exists_fin_generating_family {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {p : Submodule R M} (hp : p.FG) (n : ℕ) :
p.spanFinrank ≤ n ↔ ∃ (f : Fin n → M), span R (Set.range f) = p

A finitely generated submodule has at most n generators exactly when it is spanned by a family of length n. Zero entries may pad a shorter generating family.

theorem Submodule.spanFinrank_span_list_le_length {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] (l : List M) :

The span of the entries of a list needs at most as many generators as the list has entries.

Along a surjective algebraMap R S, restricting scalars does not change the least number of generators of an S-submodule.

theorem Submodule.spanFinrank_le_spanFinrank_map_mkQ_add_spanFinrank {R : Type u_1} {M : Type u_2} [Ring R] [AddCommGroup M] [Module R M] {p q : Submodule R M} (hpq : p ≤ q) (hp : p.FG) :

If p ≤ q are submodules with p finitely generated, then q.spanFinrank is at most the sum of the spanFinranks of p and of the image of q in M ⧸ p. When q is finitely generated, this is a generator bound: generators of p and lifts of generators of the image generate q. For non-finitely-generated q, q.spanFinrank is defined to be 0.