Module

Core.lean

Nyll.ProCGroups.FoxDifferential.Completed.Residue.Core
15 declarations indexed from sourceView source ↗

Fox differential: completed — residue — core

The principal declarations in this module are:

  • ResidueGroupRing

The residue group ring \((\mathbb{Z}/n\mathbb{Z})[H]\).

  • residueGroupRingScalar

The coefficient homomorphism \(G \to (\mathbb{Z}/n\mathbb{Z})[H]\) induced by a group homomorphism \(\psi: G \to H\).

  • residueGroupRingScalar_apply

The residue coefficient homomorphism sends a group element to the residue group-ring basis element of its image.

  • residueGroupRingBoundary_one

The residue Fox boundary vanishes at the identity.

Declarations

FoxDifferential.ResidueGroupRing

The residue group ring \((\mathbb{Z}/n\mathbb{Z})[H]\).

Source context 4 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
abbrev ResidueGroupRing (n : ℕ) (H : Type*) : Type _
FoxDifferential.residueGroupRingScalar

The coefficient homomorphism \(G \to (\mathbb{Z}/n\mathbb{Z})[H]\) induced by a group homomorphism \(\psi: G \to H\).

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
def residueGroupRingScalar (n : ℕ) (ψ : G →* H) : G →* ResidueGroupRing n H
FoxDifferential.residueGroupRingScalar_apply

The residue coefficient homomorphism sends a group element to the residue group-ring basis element of its image.

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
theorem residueGroupRingScalar_apply (n : ℕ) (ψ : G →* H) (g : G) :
    residueGroupRingScalar n ψ g =
      (MonoidAlgebra.of (ModNCompletedCoeff n) H (ψ g) : ResidueGroupRing n H)
FoxDifferential.ResidueDifferentialModule

The residue universal differential module attached to \(\psi : G \to H\).

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
abbrev ResidueDifferentialModule (n : ℕ) (ψ : G →* H) : Type _
FoxDifferential.residueUniversalDifferential

The universal residue crossed homomorphism.

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
def residueUniversalDifferential (n : ℕ) (ψ : G →* H) :
    ScalarCrossedHom (residueGroupRingScalar n ψ) (ResidueDifferentialModule n ψ)
FoxDifferential.residueGroupRingBoundary

The residue Fox boundary \(g \mapsto [\psi(g)] - 1\), bundled as a crossed homomorphism.

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
def residueGroupRingBoundary (n : ℕ) (ψ : G →* H) :
    ScalarCrossedHom (residueGroupRingScalar n ψ) (ResidueGroupRing n H) where
  toFun g := MonoidAlgebra.of (ModNCompletedCoeff n) H (ψ g) - 1
  map_mul' := by
    intro g h
    simp only [scalarCrossedAction_apply, map_mul, MonoidAlgebra.of_apply,
      MonoidAlgebra.single_mul_single, mul_one, sub_eq_add_neg, add_comm,
      residueGroupRingScalar_apply, smul_eq_mul, mul_add, mul_neg, add_assoc,
      add_neg_cancel_comm_assoc]
FoxDifferential.residueGroupRingBoundary_one

The residue Fox boundary vanishes at the identity.

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
theorem residueGroupRingBoundary_one (n : ℕ) (ψ : G →* H) :
    residueGroupRingBoundary n ψ (1 : G) = 0
FoxDifferential.residueDifferentialModuleLift

The universal linear map induced by a residue crossed differential.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
def residueDifferentialModuleLift
    (ψ : G →* H)
    (delta : ScalarCrossedHom (residueGroupRingScalar n ψ) A) :
    ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] A
FoxDifferential.residueDifferentialModuleLift_universal

The residue universal lift evaluates on the universal differential as the original crossed differential.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
theorem residueDifferentialModuleLift_universal
    (ψ : G →* H) (delta : ScalarCrossedHom (residueGroupRingScalar n ψ) A)
    (g : G) :
    residueDifferentialModuleLift (A := A) n ψ delta
        (residueUniversalDifferential n ψ g) =
      delta g
FoxDifferential.residueDifferentialModuleHom_ext

Linear maps out of the residue universal module are equal when they agree on universal residue differentials.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
theorem residueDifferentialModuleHom_ext
    (ψ : G →* H)
    {f h : ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] A}
    (hfh : ∀ g, f (residueUniversalDifferential n ψ g) =
      h (residueUniversalDifferential n ψ g)) :
    f = h
FoxDifferential.existsUnique_residueDifferentialModuleLift

Existence and uniqueness of the linear map representing a residue crossed differential.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
theorem existsUnique_residueDifferentialModuleLift
    (ψ : G →* H) (delta : ScalarCrossedHom (residueGroupRingScalar n ψ) A) :
    ∃! f : ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] A,
      ∀ g, f (residueUniversalDifferential n ψ g) = delta g
FoxDifferential.residueCrossedHomEquivLinearMap

Residue crossed homomorphisms are represented by the corresponding universal residue module.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
def residueCrossedHomEquivLinearMap (ψ : G →* H) :
    ScalarCrossedHom (residueGroupRingScalar n ψ) A ≃
      (ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] A)
FoxDifferential.residueToGroupRing

The universal residue Fox boundary map from the residue differential module to the residue group ring.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
def residueToGroupRing (ψ : G →* H) :
    ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] ResidueGroupRing n H
FoxDifferential.residueToGroupRing_universal

The universal residue Fox boundary sends \(d g\) to \([\psi(g)] - 1\).

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
theorem residueToGroupRing_universal (ψ : G →* H) (g : G) :
    residueToGroupRing n ψ (residueUniversalDifferential n ψ g) =
      residueGroupRingBoundary n ψ g
FoxDifferential.existsUnique_residueToGroupRing

Existence and uniqueness of the universal residue Fox boundary map.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
open scoped BigOperators
universe u v
section Basic
variable {G : Type u} {H : Type v} [Group G] [Group H]
section UniversalProperty
variable (n : ℕ)
variable {A : Type*} [AddCommGroup A] [Module (ResidueGroupRing n H) A]
theorem existsUnique_residueToGroupRing (ψ : G →* H) :
    ∃! f : ResidueDifferentialModule n ψ →ₗ[ResidueGroupRing n H] ResidueGroupRing n H,
      ∀ g, f (residueUniversalDifferential n ψ g) =
        residueGroupRingBoundary n ψ g