Refinement maps and global fppf cohomology in degree one #
Mathlib defines nonabelian H¹ on one indexed family, but at the pinned revision leaves its
globalization over covering families as a TODO. This file supplies the missing transition maps:
a refinement of indexed families pulls zero-cochains, one-cochains, cocycles, and cohomology
classes back. The construction is contravariantly functorial and sends the trivial class to the
trivial class.
For actual fppf covers of a scheme X, FppfHOne is the filtered-colimit quotient of all
cover-level classes by common refinement. Crucially, a cover component Uᵢ ⟶ X is regarded as
an object of Over X, and coefficients are presheaves on (Over X)ᵒᵖ. Thus the test morphisms in
a one-cochain are morphisms over X; the resulting overlaps are fibre products Uᵢ ×_X Uⱼ, not
absolute products of schemes.
We use the explicit quotient presentation of a colimit of types, rather than asking Lean for a
small category of all covers. The latter would require a smallness instance which the large
indexed-cover category does not possess. The relation is generated only by genuine
Scheme.Cover.Hom refinements. The final section checks the intended coefficient system:
the point presheaf represented by a finite-flat commutative group scheme over X.
A refinement of an indexed family U by an indexed family V.
- index : J → I
Index of the old family containing a member of the refined family.
The refinement morphism.
Instances For
Equality of one-cocycles is detected on the underlying one-cochain.
The identity refinement.
Equations
- CategoryTheory.PresheafOfGroups.FamilyRefinement.refl U = { index := id, map := fun (x : I) => CategoryTheory.CategoryStruct.id (U x) }
Instances For
Composition of refinements.
Equations
Instances For
Pull a zero-cochain back along a refinement.
Equations
- VU.pullbackZeroCochain a j = (CategoryTheory.ConcreteCategory.hom (G.map (VU.map j).op)) (a (VU.index j))
Instances For
Pull a one-cochain back along a refinement.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pull a one-cocycle back along a refinement.
Equations
- VU.pullbackOneCocycle c = { toOneCochain := VU.pullbackOneCochain c.toOneCochain, ev_trans := ⋯ }
Instances For
Pull a cover-level H¹ class back along a refinement.
Equations
- VU.pullbackHOne = Quot.lift (fun (c : CategoryTheory.PresheafOfGroups.OneCocycle G U) => (VU.pullbackOneCocycle c).class) ⋯
Instances For
The zero-cochain comparing the pullbacks of a cocycle along two refinement choices.
Instances For
Two choices of refinement map pull a cocycle back to cohomologous cocycles. This is the degree-one Čech homotopy which makes the global common-refinement relation transitive.
Cover-level H¹ pullback is independent of the chosen refinement morphism.
The indexed-family refinement underlying a morphism of pre-zero-hypercovers.
Instances For
Pull a family-level H¹ class back along a morphism of pre-zero-hypercovers.
Instances For
Regard the components of an fppf cover of X as objects in the slice category Over X.
Keeping the structure maps in the objects is essential: morphisms between components must commute
with their maps to X.
Equations
- 𝒰.overFamily i = CategoryTheory.Over.mk (𝒰.f i)
Instances For
A refinement of fppf covers induces a refinement of their component families in Over X.
The proof field r.w₀ is precisely what makes every component map a morphism over X.
Equations
- r.toOverFamilyRefinement = { index := r.s₀, map := fun (i : 𝒱.I₀) => CategoryTheory.Over.homMk (r.h₀ i) ⋯ }
Instances For
Pull a relative cover-level H¹ class back along a refinement of fppf covers.
Equations
Instances For
One cover-level representative of a prospective global fppf H¹ class.
- cover : Cover fppfPrecoverage X
The fppf covering family on which the cocycle is defined.
- value : CategoryTheory.PresheafOfGroups.H1 G self.cover.overFamily
Its relative cover-level nonabelian cohomology class.
Instances For
Two representatives agree if their classes agree after pullback to one genuine common fppf refinement.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The common-refinement relation is an equivalence relation, using intersections of actual
fppf covers and independence of refinement choices on cover-level H¹.
Global nonabelian fppf cohomology in degree one, presented as the filtered-colimit quotient of relative cover-level classes by genuine common refinement. The cover index universe is explicit.
Instances For
Send one cover-level class into global fppf H¹.
Equations
- AlgebraicGeometry.Scheme.FppfHOne.mk 𝒰 x = Quot.mk AlgebraicGeometry.Scheme.FppfHOneRepresentative.IsEquivalent { cover := 𝒰, value := x }
Instances For
The singleton identity cover, constructed directly from the checked fppf-cover theorem for an identity morphism.
Equations
Instances For
Every fppf cover refines the singleton identity cover.
Equations
- AlgebraicGeometry.Scheme.FppfHOne.toIdentityCover 𝒰 = { s₀ := fun (x : 𝒰.I₀) => PUnit.unit, h₀ := fun (i : 𝒰.I₀) => 𝒰.f i, w₀ := ⋯ }
Instances For
The distinguished trivial global fppf class.
The trivial cover-level class maps to the distinguished global class on every fppf cover.
A class and its pullback to a refinement define the same global fppf class.
Two cover-level classes have the same global class exactly when they agree after one common fppf refinement.
The eliminator expressing the colimit universal property at the level of types: a compatible
family of maps out of all cover-level H¹ types descends to global fppf H¹.
Equations
- AlgebraicGeometry.Scheme.FppfHOne.lift f compatible = Quot.lift (fun (a : X.FppfHOneRepresentative G) => f a.cover a.value) ⋯
Instances For
Maps out of global fppf H¹ are determined by all cover-level classes.
The presheaf of commutative groups on Over S represented by a finite-flat commutative
group scheme. Its value on T ⟶ S is the actual commutative group of S-morphisms T ⟶ G.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The representable point presheaf, forgotten from commutative groups to groups.
Equations
Instances For
The underlying type-valued point presheaf of a finite-flat group scheme is an fppf sheaf on the slice site. This records that the coefficient system used below is genuinely representable, not an arbitrary family of groups.
Global fppf H¹ of the representable point presheaf of a finite-flat commutative group
scheme. This is a pointed type; its canonical commutative group structure is separate work.
Equations
- G.FppfHOne = S.FppfHOne G.pointPresheaf
Instances For
Send an actual relative cover-level class for a finite-flat group scheme to global fppf
H¹. This is the representable downstream consumer of the globalization interface.
Equations
Instances For
Pulling a finite-flat group-scheme cocycle to a genuine refinement does not change its global fppf class.