Documentation

DerivedAlgGeo.Topology.Sheaves.CohomologyPushforward

Cohomology is unchanged by pushforward along a closed embedding #

cohomologyPushforwardAddEquiv : Hⁿ(X, F) ≃+ Hⁿ(Y, f_* F) for f an inducing map with closed range. This is #572 step 3's statement, instantiated at an actual map of spaces.

Everything here is plumbing #

CategoryTheory/Sites/Sheaves/CohomologyPushforward.lean proves the comparison abstractly, for a continuous functor of sites whose pullback and pushforward are both exact. This composition-layer file discharges those hypotheses for Opens.map f. No mathematics happens: the one non-formal input, exactness of f_*, is PushforwardStalks.lean, and the rest is instance supply.

That was not obvious in advance and it is worth recording why. Three separate estimates of this step were wrong, each in the same direction:

What must be supplied by hand, and why #

Four instances that exist but that search will not find or cannot afford:

⊤_ is not ⊤ #

The abstract theorem wants IsTerminal ((Opens.map f).obj (⊤_ (Opens Y))). Opens.map sends ⊤ to ⊤ by rfl, but the categorical terminal ⊤_ (Opens Y) is not syntactically the lattice ⊤; terminal_opens_eq_top is the one-line antisymmetry that identifies them, and IsTerminal.ofUnique does not discharge the goal without it.

Scope #

Spaces, not schemes. A closed immersion of schemes induces a closed embedding of underlying spaces, so this applies to one — but that final step is not taken here, and #572's acceptance criterion is phrased about schemes.

Main results #

⊤ is terminal in Opens: morphisms are proofs of ≤, so le_top is the unique one.

Equations
Instances For

    The categorical terminal of Opens is the lattice ⊤. Needed because the two are not syntactically equal and the abstract theorem asks about the former.

    Opens.map f carries the categorical terminal open of Y to a terminal open of X: it sends ⊤ to ⊤. Named, because it is data that the comparison and its naturality statement have to share.

    Equations
    Instances For

      Cohomology is unchanged by pushforward along a closed embedding, at a chosen HasExt witness.

      #572 step 3, at a map of spaces. Every hypothesis of the abstract comparison is discharged here; the only one that is not an instance or an import is exactness of f_*, which is preservesFiniteColimits_pushforward.

      The HasExt witnesses are positional, as in the Čech lane: Sheaf.H lands in the HasExt universe, and a caller whose groups are named at HasExt.standard (the coherent-cohomology convention, HasExt.{u + 1}) cannot let instance search pick the Grothendieck-category HasExt.{u}, which names different groups.

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