The discrete Crowell sequence for a surjective group homomorphism. All three displayed maps are bundled as ℤ-linear maps so that the source, group-ring, and augmentation terms live in one canonical FourTermLinearSequence.
Source context 4 commands
Surrounding namespaces, section variables, and local commands at this declaration.
namespace CrowellExactSequence
noncomputable section
open FoxDifferential
variable {H : Type} [Group H]def discreteCrowellLinearSequence
{G : Type} [Group G]
(psi : MonoidHom G H) (hpsi : Function.Surjective psi) :
letI := kernelAbelianizationModuleOfSurjective psi hpsi
FourTermLinearSequence ℤ
(KernelAbelianizationAdd psi) (DifferentialModule psi) (GroupRing H) ℤ := by
letI := kernelAbelianizationModuleOfSurjective psi hpsi
refine FourTermLinearSequence.ofExact
((kernelAbelianizationBoundaryLinearOfSurjective
(H := H) psi hpsi).toAddMonoidHom.toIntLinearMap)
((toGroupRing psi).toAddMonoidHom.toIntLinearMap)
((augmentation H).toAddMonoidHom.toIntLinearMap) ?_
rcases Morishita2024.crowellExactSequence_of_surjective (H := H) psi hpsi with
⟨hinj, hhead, hmiddle, hsurj⟩
refine ⟨?_, ?_, ?_, ?_⟩
· intro x y hxy
change kernelAbelianizationBoundaryLinearOfSurjective (H := H) psi hpsi x =
kernelAbelianizationBoundaryLinearOfSurjective (H := H) psi hpsi y at hxy
exact hinj hxy
· intro y
change toGroupRing psi y = 0 ↔
∃ x, kernelAbelianizationBoundaryLinearOfSurjective (H := H) psi hpsi x = y
exact hhead y
· intro y
change augmentation H y = 0 ↔ ∃ x, toGroupRing psi x = y
exact hmiddle y
· intro z
rcases hsurj z with ⟨y, hy⟩
refine ⟨y, ?_⟩
change augmentation H y = z
exact hy