Module

QuotientFamily.lean

Nyll.ProCGroups.FoxDifferential.Completed.Comparison.QuotientFamily
16 declarations indexed from sourceView source ↗

Fox differential: completed — comparison — quotient family

The principal declarations in this module are:

  • ZCFiniteStageQuotientBundle

A bundled finite-stage quotient family for source-stage comparison theorems. The purpose is to carry the topology and topological-group structure on the quotient target once, instead of repeating these hypotheses at every comparison theorem.

  • Target

The target quotient carried by a finite-stage quotient bundle.

  • targetFiniteInstance

The finiteness instance certified by a genuine finite-stage quotient bundle.

  • targetDiscreteTopology

The genuine finite quotient stage has discrete topology.

Declarations

FoxDifferential.ZCFiniteStageQuotientBundle

A bundled finite-stage quotient family for source-stage comparison theorems. The purpose is to carry the topology and topological-group structure on the quotient target once, instead of repeating these hypotheses at every comparison theorem.

Source context 6 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
structure ZCFiniteStageQuotientBundle where
  /-- Finiteness of the algebraic Fox-stage target quotient. -/
  targetFinite : Finite (foxAlgebraicStageTargetQuotient (X := X) N)
FoxDifferential.ZCFiniteStageQuotientBundle.Target

The target quotient carried by a finite-stage quotient bundle.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
abbrev Target (_B : ZCFiniteStageQuotientBundle N) : Type u
FoxDifferential.ZCFiniteStageQuotientBundle.targetFiniteInstance

The finiteness instance certified by a genuine finite-stage quotient bundle.

Source context 10 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
omit [DecidableEq X] [N.Normal] in
theorem targetFiniteInstance (B : ZCFiniteStageQuotientBundle N) :
    Finite (Target (N := N) B)
FoxDifferential.ZCFiniteStageQuotientBundle.targetTopology

The canonical discrete topology on a genuine finite quotient stage.

This keeps the historical projection-style name while removing the former arbitrary-topology field.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
def targetTopology (_B : ZCFiniteStageQuotientBundle N) :
    TopologicalSpace (Target (N := N) _B)
FoxDifferential.ZCFiniteStageQuotientBundle.targetDiscreteTopology

The genuine finite quotient stage has discrete topology.

Source context 10 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
omit [DecidableEq X] [N.Normal] in
theorem targetDiscreteTopology (B : ZCFiniteStageQuotientBundle N) :
    @DiscreteTopology (Target (N := N) B) B.targetTopology
FoxDifferential.ZCFiniteStageQuotientBundle.targetIsTopologicalGroup

The canonical discrete topology makes the genuine finite quotient stage a topological group.

This keeps the historical projection-style name while deriving the structure rather than accepting it as unrelated input data.

Source context 10 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
omit [DecidableEq X] in
theorem targetIsTopologicalGroup (B : ZCFiniteStageQuotientBundle N) :
    @IsTopologicalGroup (Target (N := N) B) B.targetTopology inferInstance
FoxDifferential.ZCFiniteStageQuotientBundle.quotientMap

The canonical quotient morphism represented by a genuine finite-stage bundle.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
def quotientMap (_B : ZCFiniteStageQuotientBundle N) :
    FreeGroup X →* Target (N := N) _B
FoxDifferential.ZCFiniteStageQuotientBundle.quotientMap_surjective

The canonical quotient morphism of a genuine finite-stage bundle is surjective.

Source context 10 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
omit [DecidableEq X] in
theorem quotientMap_surjective (B : ZCFiniteStageQuotientBundle N) :
    Function.Surjective B.quotientMap
FoxDifferential.ZCFiniteStageQuotientBundle.ofFinite

Bundle an already known finite quotient using its canonical discrete topology.

Source context 10 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
omit [DecidableEq X] in
theorem ofFinite
    (N : Subgroup (FreeGroup X)) [N.Normal]
    [Finite (foxAlgebraicStageTargetQuotient (X := X) N)] :
    ZCFiniteStageQuotientBundle N
FoxDifferential.ZCFiniteStageQuotientBundle.Index

The completed pro-\(C\) stage indices for the bundled target quotient.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
abbrev Index (B : ZCFiniteStageQuotientBundle N) : Type u
FoxDifferential.ZCFiniteStageQuotientBundle.CompletedGroupAlgebra

The completed group algebra of the bundled target quotient.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
abbrev CompletedGroupAlgebra (B : ZCFiniteStageQuotientBundle N) : Type u
FoxDifferential.ZCFiniteStageQuotientBundle.scalarStage_apply

The scalar stage attached to the quotient bundle is evaluated at the corresponding finite quotient and coefficient stage.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
theorem scalarStage_apply
    (B : ZCFiniteStageQuotientBundle N)
    (j : B.Index C) (w : FreeGroup X) :
    letI : TopologicalSpace (Target (N := N) B) := B.targetTopology
    letI : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
    zcCompletedGroupAlgebraScalarStage C N j w =
      (letI : Fact (0 < j.1.modulus) := ⟨j.1.positive⟩
       modNCompletedGroupAlgebraStageMapInClass j.1.modulus
        (zcFiniteStageTarget X N) C j.2
        (foxAlgebraicStageCoefficient (X := X) N j.1.modulus w)) := by
  let : TopologicalSpace (Target (N := N) B) := B.targetTopology
  let : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
  exact zcCompletedGroupAlgebraScalarStage_apply (C := C) (X := X) N j w
FoxDifferential.ZCFiniteStageQuotientBundle.derivative_finiteStageProjection

Completed derivative projection theorem, using the bundled quotient-family hypotheses.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
theorem derivative_finiteStageProjection
    (B : ZCFiniteStageQuotientBundle N)
    (j : B.Index C) (i : X) (w : FreeGroup X) :
    letI : TopologicalSpace (Target (N := N) B) := B.targetTopology
    letI : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
    zcCompletedGroupAlgebraProjection C (zcFiniteStageTarget X N) j
        (zcFreeGroupFoxDerivative C (QuotientGroup.mk' N) i w) =
      (letI : Fact (0 < j.1.modulus) := ⟨j.1.positive⟩
       modNCompletedGroupAlgebraStageMapInClass j.1.modulus
        (zcFiniteStageTarget X N) C j.2
        (foxAlgebraicStageDerivative (X := X) N j.1.modulus i w)) := by
  let : TopologicalSpace (Target (N := N) B) := B.targetTopology
  let : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
  exact zcFreeGroupFoxDerivative_finiteStageProjection (C := C) (X := X) N j i w
FoxDifferential.ZCFiniteStageQuotientBundle.derivativeVector_finiteStageProjection

Completed derivative-vector projection theorem, using the bundled quotient-family hypotheses.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
theorem derivativeVector_finiteStageProjection
    (B : ZCFiniteStageQuotientBundle N)
    (j : B.Index C) (w : FreeGroup X) :
    letI : TopologicalSpace (Target (N := N) B) := B.targetTopology
    letI : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
    (fun i : X =>
      zcCompletedGroupAlgebraProjection C (zcFiniteStageTarget X N) j
        (zcFreeGroupFoxDerivativeVector C (QuotientGroup.mk' N) w i)) =
      fun i : X =>
        letI : Fact (0 < j.1.modulus) := ⟨j.1.positive⟩
        modNCompletedGroupAlgebraStageMapInClass j.1.modulus
          (zcFiniteStageTarget X N) C j.2
          (foxAlgebraicStageDerivative (X := X) N j.1.modulus i w) := by
  let : TopologicalSpace (Target (N := N) B) := B.targetTopology
  let : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
  exact zcFreeGroupFoxDerivativeVector_finiteStageProjection (C := C) (X := X) N j w
FoxDifferential.ZCFiniteStageQuotientBundle.derivative_finiteStageProjection_discreteReduction

Discrete-reduction derivative projection theorem, using the bundled quotient-family hypotheses.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
theorem derivative_finiteStageProjection_discreteReduction
    (B : ZCFiniteStageQuotientBundle N)
    (j : B.Index C) (i : X) (w : FreeGroup X) :
    letI : TopologicalSpace (Target (N := N) B) := B.targetTopology
    letI : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
    zcCompletedGroupAlgebraProjection C (zcFiniteStageTarget X N) j
        (zcFreeGroupFoxDerivative C (QuotientGroup.mk' N) i w) =
      (letI : Fact (0 < j.1.modulus) := ⟨j.1.positive⟩
       modNCompletedGroupAlgebraStageMapInClass j.1.modulus
        (zcFiniteStageTarget X N) C j.2
        (foxAlgebraicStageGroupRingReduction (X := X) N j.1.modulus
          (FoxCalculus.relativeFreeGroupFoxDerivative
            (H := zcFiniteStageTarget X N) X (QuotientGroup.mk' N) w i))) := by
  let : TopologicalSpace (Target (N := N) B) := B.targetTopology
  let : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
  exact zcFreeGroupFoxDerivative_finiteStageProjection_discreteReduction
    (C := C) (X := X) N i w j
FoxDifferential.ZCFiniteStageQuotientBundle.derivativeVector_finiteStageProjection_discreteReduction

Discrete-reduction derivative-vector projection theorem, using the bundled quotient-family hypotheses.

Source context 9 commands

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

namespace FoxDifferential
noncomputable section
universe u
section FiniteStageQuotientBundle
variable {X : Type u} [DecidableEq X]
variable (N : Subgroup (FreeGroup X)) [N.Normal]
namespace ZCFiniteStageQuotientBundle
variable {N}
variable (C : ProCGroups.FiniteGroupClass.{u})
theorem derivativeVector_finiteStageProjection_discreteReduction
    (B : ZCFiniteStageQuotientBundle N)
    (j : B.Index C) (w : FreeGroup X) :
    letI : TopologicalSpace (Target (N := N) B) := B.targetTopology
    letI : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
    (fun i : X =>
      zcCompletedGroupAlgebraProjection C (zcFiniteStageTarget X N) j
        (zcFreeGroupFoxDerivativeVector C (QuotientGroup.mk' N) w i)) =
      fun i : X =>
        letI : Fact (0 < j.1.modulus) := ⟨j.1.positive⟩
        modNCompletedGroupAlgebraStageMapInClass j.1.modulus
          (zcFiniteStageTarget X N) C j.2
          (foxAlgebraicStageGroupRingReduction (X := X) N j.1.modulus
            (FoxCalculus.relativeFreeGroupFoxDerivative
              (H := zcFiniteStageTarget X N) X (QuotientGroup.mk' N) w i)) := by
  let : TopologicalSpace (Target (N := N) B) := B.targetTopology
  let : IsTopologicalGroup (Target (N := N) B) := B.targetIsTopologicalGroup
  exact zcFreeGroupFoxDerivativeVector_finiteStageProjection_discreteReduction
    (C := C) (X := X) N w j