ProCGroups.FoxDifferential.Discrete.FreeExpansion
The principal declarations in this module are:
freeCrossedDifferentialExpansionPrescribed values on the free generators determine the Fox-coordinate expansion. -freeCrossedDifferentialExpansionHomThe Fox-coordinate expansion is a crossed differential. -freeCrossedDifferentialExpansion_oneThe Fox-coordinate expansion of the identity word is zero. -freeCrossedDifferentialExpansion_ofThe Fox-coordinate expansion of a free generator returns its prescribed basis value.
def freeCrossedDifferentialExpansion (w : FreeGroup X) : A :=
∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X ψ w x • basisValue xPrescribed values on the free generators determine the Fox-coordinate expansion.
@[simp]
theorem freeCrossedDifferentialExpansion_one :
freeCrossedDifferentialExpansion (H := H) (A := A) ψ basisValue 1 = 0The Fox-coordinate expansion of the identity word is zero.
Show Lean proof
by
simp only [freeCrossedDifferentialExpansion, relativeFreeGroupFoxDerivative_one,
Pi.zero_apply, zero_smul,
Finset.sum_const_zero]
@[simp]
theorem freeCrossedDifferentialExpansion_of (x : X) :
freeCrossedDifferentialExpansion (H := H) (A := A) ψ basisValue (FreeGroup.of x) =
basisValue xThe Fox-coordinate expansion of a free generator returns its prescribed basis value.
Show Lean proof
by
rw [freeCrossedDifferentialExpansion]
rw [relativeFreeGroupFoxDerivative_of]
rw [Finset.sum_eq_single x]
· simp only [Pi.single_eq_same, one_smul]
· intro y _ hy
simp only [Pi.single_eq_of_ne hy, zero_smul]
· simp only [Finset.mem_univ, not_true_eq_false, Pi.single_eq_same, one_smul, IsEmpty.forall_iff]
def freeCrossedDifferentialExpansionHom : DifferentialHom ψ A where
toFun := freeCrossedDifferentialExpansion (H := H) (A := A) ψ basisValue
map_mul' := by
intro u v
simp only [scalarCrossedAction_apply, freeCrossedDifferentialExpansion]
change
(∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X ψ (u * v) x • basisValue x) =
(∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X ψ u x • basisValue x) +
(MonoidAlgebra.of ℤ H (ψ u) : GroupRing H) •
(∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X ψ v x • basisValue x)
rw [relativeFreeGroupFoxDerivative_mul]
simp only [MonoidAlgebra.of_apply, Pi.add_apply, Pi.smul_apply, smul_eq_mul,
add_smul, Finset.sum_add_distrib, Finset.smul_sum, smul_smul]The Fox-coordinate expansion is a crossed differential.
theorem freeCrossedDifferentialWithCoeff_groupRingScalar_eq_expansion (w : FreeGroup X) :
freeCrossedDifferentialWithCoeff (A := A) (groupRingScalar ψ) basisValue w =
freeCrossedDifferentialExpansion (H := H) (A := A) ψ basisValue wThe coefficient-generic free crossed differential over a group ring is the Fox-coordinate expansion of its generator values.
Show Lean proof
by
have h :=
freeCrossedHomWithCoeff_unique (A := A) (groupRingScalar ψ) basisValue
(freeCrossedDifferentialExpansionHom (H := H) (A := A) ψ basisValue)
(freeCrossedDifferentialExpansion_of (H := H) (A := A) ψ basisValue)
exact congrArg (fun d : DifferentialHom ψ A => d w) h.symm
omit [Fintype X] in
theorem freeCrossedDifferentialWithCoeffCoordinates_eq_relativeFreeGroupFoxDerivative
(w : FreeGroup X) :
freeCrossedDifferentialWithCoeffCoordinates
(X := X) (groupRingScalar ψ) w =
relativeFreeGroupFoxDerivative (H := H) X ψ wThe coefficient-generic coordinate crossed differential specializes to the usual relative Fox derivative over a group ring.
Show Lean proof
by
exact congrArg
(fun d : DifferentialHom ψ (RelativeFreeFoxCoordinates (H := H) X) => d w)
(relativeFreeGroupFoxHom_unique (H := H) X ψ
(freeCrossedHomWithCoeffCoordinates (X := X) (groupRingScalar ψ))
(freeCrossedDifferentialWithCoeffCoordinates_of
(X := X) (groupRingScalar ψ)))
theorem crossedHom_comp_relativeFreeGroupFoxDerivative
(ψ : FreeGroup Y →* H) (φ : FreeGroup X →* FreeGroup Y)
(delta : DifferentialHom ψ A) (w : FreeGroup X) :
delta (φ w) =
∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X (ψ.comp φ) w x •
delta (φ (FreeGroup.of x))Abstract Fox chain rule for an arbitrary crossed differential.
Show Lean proof
by
calc
delta (φ w) =
freeCrossedDifferentialWithCoeffExpansion
(X := X) (groupRingScalar (ψ.comp φ))
(fun x : X => delta (φ (FreeGroup.of x))) w := by
exact freeCrossedHomWithCoeff_comp_expansion
(X := X) (Y := Y) (B := A) (groupRingScalar ψ) φ delta w
_ =
∑ x : X,
relativeFreeGroupFoxDerivative (H := H) X (ψ.comp φ) w x •
delta (φ (FreeGroup.of x)) := by
rw [freeCrossedDifferentialWithCoeffExpansion,
freeCrossedDifferentialWithCoeffExpansionLinearMap_apply,
freeCrossedDifferentialWithCoeffCoordinates_eq_relativeFreeGroupFoxDerivative
(H := H) (X := X) (ψ.comp φ) w]