Module

BoundaryResidueCardinality.lean

Nyll.JacobianVarieties.Kummer.BoundaryResidueCardinality
4 declarations indexed from sourceView source ↗

Cardinality of the degree-zero boundary residue group

A nonempty finite boundary has one independent sum relation. This counts the actual kernel of the sum homomorphism, not a group postulated to model étale cohomology.

Imports5
  • Mathlib.Data.ZMod.Basic
  • Mathlib.Data.PNat.Defs
  • Mathlib.GroupTheory.QuotientGroup.Basic
  • Mathlib.GroupTheory.Coset.Card
  • Mathlib.Data.Fintype.Pi
Imported by3

Declarations

JacobianVarieties.Kummer.boundaryResidueSum

Sum the residues at the finitely many boundary points.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped BigOperators
namespace JacobianVarieties.Kummer
def boundaryResidueSum (ι : Type*) [Fintype ι] (n : ℕ+) :
    (ι → ZMod (n : ℕ)) →+ ZMod (n : ℕ) where
  toFun a := ∑ i, a i
  map_zero' := Finset.sum_const_zero
  map_add' _ _ := Finset.sum_add_distrib
JacobianVarieties.Kummer.boundaryResidueGroup

Residue vectors satisfying the degree-zero relation.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped BigOperators
namespace JacobianVarieties.Kummer
def boundaryResidueGroup (ι : Type*) [Fintype ι] (n : ℕ+) :
    AddSubgroup (ι → ZMod (n : ℕ))
JacobianVarieties.Kummer.boundaryResidueSum_surjective

Any residue can occur as the total, using one chosen boundary point.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped BigOperators
namespace JacobianVarieties.Kummer
theorem boundaryResidueSum_surjective
    {ι : Type*} [Fintype ι] (i₀ : ι) (n : ℕ+) :
    Function.Surjective (boundaryResidueSum ι n)
JacobianVarieties.Kummer.natCard_boundaryResidueGroup

A boundary of cardinality r greater than zero contributes n^(r-1) possible degree-zero residue vectors.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped BigOperators
namespace JacobianVarieties.Kummer
theorem natCard_boundaryResidueGroup
    {ι : Type*} [Fintype ι] (i₀ : ι) (n : ℕ+) :
    Nat.card (boundaryResidueGroup ι n) =
      (n : ℕ) ^ (Fintype.card ι - 1)