Documentation

DerivedAlgGeo.AlgebraicTopology.ExtraCodegeneracy

The alternating coface complex is the opposite of an alternating face complex #

Mathlib develops extra degeneracies, and the homotopy equivalence they induce, on the simplicial side: SimplicialObject.Augmented.ExtraDegeneracy.homotopyEquiv is stated against alternatingFaceMapComplex and lands in ChainComplex. Čech cohomology, in Mathlib/CategoryTheory/Sites/SheafCohomology/Cech.lean, is built from alternatingCofaceMapComplex and is cosimplicial. Nothing upstream connects the two, so no Čech vanishing argument can reach the machinery that would prove it.

This file supplies the connection: for a cosimplicial object Y in a preadditive category,

((alternatingCofaceMapComplex A).obj Y).op ≅ (alternatingFaceMapComplex Aᵒᵖ).obj Y.op

Both sides are Y.obj ⦋n⦌ in degree n — that much is rfl — and both differentials are ∑ i, (-1) ^ i • δ i. What is not rfl is that HomologicalComplex.op distributes over the sum and the zsmul; that is the content, such as it is, and op_sum and op_zsmul supply it.

Why this is the useful direction #

The alternative is to define an extra codegeneracy structure on augmented cosimplicial objects and redo the homotopy from scratch, roughly duplicating Mathlib/AlgebraicTopology/ExtraDegeneracy.lean. With this isomorphism that is unnecessary: a cosimplicial object in A is a simplicial object in Aᵒᵖ, the upstream extra-degeneracy theory applies there verbatim, and the isomorphism carries its conclusion back. In particular CategoryTheory.Limits.FormalCoproduct.extraDegeneracyCech — the Čech object of a family has an extra degeneracy once the terminal object maps into one of its members — is already upstream and can be used as it stands.

The payoff #

exactAt_succ_of_extraDegeneracy is what #13 consumes: an extra degeneracy on an augmented simplicial object in Aᵒᵖ whose underlying object is Y.op forces the alternating coface complex of Y to be exact in every positive degree. The chain is ExtraDegeneracy.homotopyEquiv (upstream) → quasi-isomorphism → exactAt_iff_of_quasiIsoAt → ChainComplex.exactAt_succ_single_obj, carried across opIso.

exactAt_succ_of_extraDegeneracy_map adds the contravariant transport. ExtraDegeneracy.map takes a covariant functor, while Čech cohomology applies FormalCoproduct.evalOp of a presheaf, which is contravariant on the site; Functor.rightOp turns one into the other, and this lemma is the composite in the form the caller wants.

Not done here #

An augmentation ε for alternatingCofaceMapComplex, dual to AlternatingFaceMapComplex.ε, was expected to be needed and is not. The augmentation is handled on the simplicial side by homotopyEquiv, and the coface complex only ever appears unaugmented, so adding one would be dead weight. Recorded because the issue asked for it.

DerivedAlgGeo/AlgebraicGeometry/Cohomology/Cech/Affine.lean now supplies the remaining affine argument: it identifies the restriction maps degreewise as localizations and descends exactness from a finite distinguished-open cover whose defining elements span the unit ideal.

The Abelian A hypothesis is stronger than the argument needs — Preadditive, a zero object and homology would do — but the two HasZeroMorphisms Aᵒᵖ instances (Preadditive's and Limits.hasZeroMorphismsOpposite) are only definitionally equal, and rw sees through neither. Assuming Abelian makes instance search pick one consistently. Every intended caller is abelian.

References #

The alternating coface map complex of a cosimplicial object Y in A, made opposite, is the alternating face map complex of Y viewed as a simplicial object in Aᵒᵖ.

Degreewise both sides are Y.obj ⦋n⦌, and both differentials are ∑ i, (-1) ^ i • δ i; the proof is that op distributes over that sum.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    Positive-degree exactness from an extra degeneracy. If the opposite of a cosimplicial object Y in A underlies an augmented simplicial object in Aᵒᵖ carrying an extra degeneracy, then the alternating coface complex of Y is exact in every positive degree.

    The augmentation is not visible in the conclusion, which is the point: it lives on the simplicial side, where ExtraDegeneracy.homotopyEquiv already handles it.

    The same, with the contravariant transport folded in.

    ExtraDegeneracy.map applies a covariant functor. Čech cohomology applies FormalCoproduct.evalOp of a presheaf, which is contravariant on the site; Functor.rightOp converts one to the other. This is the form a Čech vanishing argument calls.