FoxDifferential.RightDerivative.Basic

8 Theorem | 2 Definition | 1 Structure | 1 Instance

This module develops Fox differentials and completed Fox coordinates for free, profinite, and pro-\(C\) group constructions.

import
Imported by

Declarations

structure RightDerivation (G : Type*) [Group G] where
  toAddHom : FoxDifferential.GroupRing G →+ FoxDifferential.GroupRing G
  map_mul' : ∀ u v : FoxDifferential.GroupRing G,
    toAddHom (u * v) =
      toAddHom u * v + FoxDifferential.augmentation G u • toAddHom v

A right derivation satisfies the right Fox Leibniz rule.

instance instCoeFunRightDerivation : CoeFun (RightDerivation G) (fun _ =>
    FoxDifferential.GroupRing G → FoxDifferential.GroupRing G) :=
  ⟨fun D => D.toAddHom⟩

@[simp]

A right derivation is coerced to its underlying function.

theorem map_zero (D : RightDerivation G) : D 0 = 0

The right derivation satisfies the corresponding group-ring formula.

Show proof
theorem map_add (D : RightDerivation G) (u v : FoxDifferential.GroupRing G) :
    D (u + v) = D u + D v

A right derivation preserves addition.

Show proof
theorem map_mul (D : RightDerivation G) (u v : FoxDifferential.GroupRing G) :
    D (u * v) = D u * v + FoxDifferential.augmentation G u • D v

A right derivation satisfies the product rule.

Show proof
theorem map_one (D : RightDerivation G) : D 1 = 0

A right derivation sends the identity element to zero.

Show proof
theorem map_inv_groupElement (D : RightDerivation G) (g : G) :
    D (MonoidAlgebra.of ℤ G g⁻¹ : FoxDifferential.GroupRing G) =
      -D (MonoidAlgebra.of ℤ G g : FoxDifferential.GroupRing G) *
        (MonoidAlgebra.of ℤ G g⁻¹ : FoxDifferential.GroupRing G)

A right derivation satisfies the inverse formula for group elements.

Show proof
theorem map_pow_groupElement (D : RightDerivation G) (g : G) :
    ∀ n : ℕ,
      D (MonoidAlgebra.of ℤ G (g ^ n) : FoxDifferential.GroupRing G) =
        D (MonoidAlgebra.of ℤ G g : FoxDifferential.GroupRing G) * geomSeries g n
  | 0 => by
      simp only [pow_zero, MonoidAlgebra.of_apply, geomSeries, Finset.range_zero, Finset.sum_empty, mul_zero]
      change D (1 : FoxDifferential.GroupRing G) = 0
      exact D.map_one
  | n + 1 => by
      rw [pow_succ]
      have hmul :
          (MonoidAlgebra.of ℤ G (g ^ n * g) : FoxDifferential.GroupRing G) =
            (MonoidAlgebra.of ℤ G (g ^ n) : FoxDifferential.GroupRing G) *
              MonoidAlgebra.of ℤ G g

A right derivation satisfies the power formula for group elements.

Show proof
def groupRingLinearExtension (δ : G → FoxDifferential.GroupRing G) :
    FoxDifferential.GroupRing G →ₗ[ℤ] FoxDifferential.GroupRing G :=
  Finsupp.linearCombination ℤ δ

@[simp]

A right derivation extends linearly to the group ring.

theorem groupRingLinearExtension_single (δ : G → FoxDifferential.GroupRing G) (g : G)
    (n : ℤ) :
    groupRingLinearExtension δ (MonoidAlgebra.single g n : FoxDifferential.GroupRing G) =
      n • δ g

The group-ring linear extension of a right derivation sends a single group element to the right-derivation value on that element.

Show proof
theorem groupRingLinearExtension_map_mul
    (δ : G → FoxDifferential.GroupRing G)
    (hδ : ∀ g h : G, δ (g * h) = δ g * MonoidAlgebra.of ℤ G h + δ h)
    (u v : FoxDifferential.GroupRing G) :
    groupRingLinearExtension δ (u * v) =
      groupRingLinearExtension δ u * v +
        FoxDifferential.augmentation G u • groupRingLinearExtension δ v

A right derivation satisfies the product rule.

Show proof
def ofGroupMap (δ : G → FoxDifferential.GroupRing G)
    (hδ : ∀ g h : G, δ (g * h) = δ g * MonoidAlgebra.of ℤ G h + δ h) :
    RightDerivation G where
  toAddHom := (groupRingLinearExtension δ).toAddMonoidHom
  map_mul' := groupRingLinearExtension_map_mul δ hδ

The group-map construction defines a right derivation.