The proof of Theorem 105: the local cover, the kernel pair, uniqueness of the extension #
Kollár's proof of the globalization theorem [Kol07, Theorem 105] for M = {open immersions}, in
this library the class openImmersionCoprods of coproducts of open immersions, has four moves:
(a) a global triple (X, I, E) is covered by finitely many local M-covers gₓᵢ : Uₓᵢ → X
(clause (i) of the data at every point, quasi-compactness of X), and X' := ∐ᵢ Uₓᵢ with
g : X' → X is a local triple by clause (ii); (b) X'' := X' ×_X X' with its projections
τ₁, τ₂ is a local triple (the hypothesis LocalCoversFibreClosed) and the τᵢ are surjective
members of M; (c) B commutes with the τᵢ, so τ₁^* B(X') = B(X'') = τ₂^* B(X'); (d) the
sequence B(X') descends to X along g (the gluing of Proposition 37,
Hironaka/Resolution/Algebraic/Kol07/Prop37/Prop37Descent.lean), and the extension is B̄(X) :=
that descent. This module proves (a), (b) and (c), the uniqueness of the extension, the instance of
the hypotheses for the classes of Proposition 37 (all triples, affine triples), and two lemmas on
the class; the descent (d) and the construction of B̄ are in
Hironaka/Resolution/Algebraic/Kol07/GlobalizeDescent.lean.
The class lemmas #
Composition (openImmersionCoprods_comp): if Y = ∐ᵢ Uᵢ maps to Z = ∐ⱼ Vⱼ by open immersions
on the summands and Z maps to W likewise, then Y is the coproduct of the Uᵢ ×_Z Vⱼ (open
subschemes of the Uᵢ, disjoint, covering) and each maps to W by an open immersion. Used for the
composite local cover Y' → Y → X of the commutation step.
Separatedness (openImmersionCoprods_isSeparated): a coproduct of open immersions f : Y → X is
separated. The diagonal Y → Y ×_X Y is an immersion (Mathlib), so it is a closed immersion as
soon as its range is closed; the complement of the range is the union of the opens
τ₁^{-1}(Uᵢ) ∩ τ₂^{-1}(Uⱼ) for i ≠ j — a point over (Uᵢ, Uᵢ) lies in the image of
Uᵢ ×_X Uᵢ → Y ×_X Y, and Uᵢ ×_X Uᵢ ≅ Uᵢ by the diagonal because Uᵢ → X is a monomorphism, so
such a point is on the diagonal; a point over (Uᵢ, Uⱼ) with i ≠ j is not, the summands being
disjoint. This is what makes X' and X'' triples: X' → Spec k factors through the separated
g, and X'' → Spec k through the separated τ₁.
The statements proved here #
- The local cover:
Triple.exists_finite_localCoveris clause (i) at every point plus a finite subcover (CompactSpace XfromQuasiCompact (X → Spec k), the ranges of members ofMbeing open);Triple.exists_isLocalCoverbuildsX' = ∐ Uₓᵢas the pullback tripleTriple.pullbackofTalongg = Sigma.desc, which is a coproduct of open immersions (sigmaDesc), smooth and separated, withX'quasi-compact (a finite coproduct of quasi-compact schemes) and of the relative dimension ofX(gétale), and showsX' ∈ LTby clause (ii):X'is the disjoint union of theUₓᵢwith the restricted data (IsSigmaOf). - The kernel pair:
Triple.exists_kernelPairtakes Mathlib'spullback g gwith its projections: they are inMby base change, surjective (a pointy'lifts to(y', y')), andX''isTriple.pullbackofX'alongτ₁; the data alongτ₂agree becauseτ₁ ≫ g = τ₂ ≫ g;X'' ∈ LTis the hypothesisLocalCoversFibreClosedapplied to the cover twice. - The descent datum:
OrderSeqAssignment.pullback_eq_of_kernelPairis two applications of the hypothesis onB. - Uniqueness (
OrderSeqAssignment.globalization_unique): for two extensions and a globalTwith a point,g^* B̄ᵢ(T) = B̄ᵢ(X') = B(X')along a local cover (X' ∈ GTbyhLG), and pullback along the surjective flatgis injective (pullback_injective_of_surjective); on an emptyT.X.leftboth values arenil, every center on the empty scheme being empty (eq_nil_of_noEmptyCenters). - The instance (
globalizationData_isAffineScheme,localCoversFibreClosed_isAffineScheme): every point of a triple lies in an affine open, whose triple is affine and local; the affine triples are closed under finite disjoint unions; and the fibre product of two affine local covers is affine becauseXis separated overk(g₂is then an affine morphism and the base change of an affine morphism to an affine scheme is affine). This is the setting of [Kol07, Proposition 37], recovered from Theorem 105.
Lemmas on the class of coproducts of open immersions #
The range of a coproduct of open immersions is open (the union of the ranges of the summands).
A coproduct of open immersions is smooth (it is étale, openImmersionCoprods_etale).
A coproduct of open immersions is flat: flatness is local on the source and the summand inclusions are open immersions.
A composite of coproducts of open immersions is a coproduct of open immersions: the summands of the source are cut along the summands of the middle scheme.
A coproduct of open immersions f : Y ⟶ X is separated: the diagonal Y → Y ×_X Y is an
immersion whose range is closed, its complement being the union of the opens
τ₁^{-1}(Uᵢ) ∩ τ₂^{-1}(Uⱼ), i ≠ j, since a point over (Uᵢ, Uᵢ) comes from Uᵢ ×_X Uᵢ ≅ Uᵢ
(Uᵢ → X is a monomorphism) and so lies on the diagonal. This is what makes X' → Spec k and
X'' → Spec k separated.
No empty centers on the empty scheme means nil #
On the empty scheme every ideal sheaf is ⊤ (two ideal sheaves with equal stalks are equal,
vacuously), so a blow-up sequence without empty centers is nil.
The finite local cover and X' = ∐ Uₓᵢ #
Clause (i) of the data of [Kol07, Theorem 105] at every point, and a finite subcover of the
quasi-compact T.X.left by the (open) ranges.
X' := ∐ᵢ Uₓᵢ with the induced g : X' → X is a local M-cover of a nonempty global triple
(the proof of [Kol07, Theorem 105]): the pullback triple along g, in LT by clause (ii) as the
disjoint union of the Uₓᵢ with the restricted data.
The kernel pair X'' = X' ×_X X' #
The kernel pair of a local M-cover as a local triple (the proof of [Kol07, Theorem 105]):
X'' = X' ×_X X' with its projections, in M by base change, surjective, with the pullback data
of X' along both projections, in LT by the hypothesis LocalCoversFibreClosed.
The classes of Proposition 37 as an instance #
The data of [Kol07, Theorem 105] for the classes of [Kol07, Proposition 37] (all triples, and the affine triples): every point of a triple has an affine open neighbourhood, whose triple (the pullback along the open immersion) is affine; the affine triples are closed under finite disjoint unions.
The fibre product over a triple of two affine local covers is affine (as isAffine_coverPair
of Hironaka/Resolution/Algebraic/Kol07/Prop37/Prop37Setting.lean): T.X.left is separated over
k, so g₂ is an affine morphism, and its base change to the affine T₁.X.left has affine source.
The descent datum (105.4) for whole sequences #
τ₁^* B(X') = B(X'') = τ₂^* B(X') (the compatibility (105.4) in the proof of
[Kol07, Theorem 105]), two applications of "B commutes with surjections in M".
Uniqueness of the extension #
"A unique extension" [Kol07, Theorem 105]: two functors on the global triples agreeing with
B on the local ones and commuting with surjections in M are equal. Along a local cover
g : X' → X (with X' ∈ GT by hLG) both pull back to B(X'), and pullback along the
surjective flat g is injective; on an empty scheme both are nil.