Blow-up sequences: stages, composites, smoothness, and the deletion of empty blow-ups #
A blow-up sequence on a scheme X in the sense of [Kol07, Definition 29] is a chain
X_r → X_{r-1} → ⋯ → X_1 → X_0 = X of blow-ups π_i : X_{i+1} → X_i with centers Z_i ⊆ X_i
and exceptional divisors F_{i+1} ⊆ X_{i+1}. In this library it is a term of the inductive
family AlgebraicGeometry.Scheme.BlowUpSequence X: nil X, and cons X D rest with
rest : BlowUpSequence (D.blowUp). Everything Kollár attaches to a sequence is a recursive
function of that list of centers: the stages X_i, the centers Z_i, the composites Π_i, the
deletion of empty blow-ups, and the notions this module defines — the blow-up maps π_i
(step), the composites Π_{ij} = π_j ∘ ⋯ ∘ π_{i-1} (stageMapBetween), the exceptional
divisors F_{i+1} (exceptionalAt), the predicates "smooth" (IsSmooth,
IsSmoothOfRelativeDimension), "trivial" (IsTrivialAt) and "empty" (IsEmptyAt,
NoEmptyCenters), and the marked transforms (I_i, m) along the sequence (markedTransformSeq).
This module proves the basic identities about them.
The recursion. Every proof here is an induction on the sequence and, on the shape
cons X D rest, a case split on the index: index 0 speaks about the first blow-up, X_0 = X,
Z_0 = D, π_0 = D.blowUpπ, F_1 = D.comap π_0; index j + 1 speaks about the tail rest,
a sequence on D.blowUp, to which the induction hypothesis applies with the structure morphism
D.blowUpπ ≫ f in place of f. Two features of the inductive definition drive the
bookkeeping. First, S.stage 0 is X only after S is split into nil or cons
(stage_zero); so the equalities Π_0 = 𝟙 and Π_{i0} = Π_i are proved on the constructor
shapes, and π_0 on the cons shape carries the cast eqToHom (stage_zero rest)
(step_cons_zero). Second, the composite Π_{i+1} = Π_i ∘ π_i (stageMap_succ) and the cocycle
Π_{jl} ∘ Π_{ij} = Π_{il} (stageMapBetween_comp) are the associativity of composition threaded
through the recursion. The inductions are run with the indices in the form ⟨j, h⟩, where the
recursive definitions unfold; the Fin.succ/Fin.castSucc forms of the statements are recovered
at the end by definitional unfolding.
Smoothness ([Kol07, Notation 19 and Definition 29]). A sequence is smooth when each center
Z_i ⊆ X_i is smooth over k (IsSmooth). In the equidimensional form
(IsSmoothOfRelativeDimension: X of pure relative dimension n, each Z_i of pure
codimension r_i ≤ n) the stages are smooth of relative dimension n, because the blow-up of a
smooth center of pure codimension is (AlgebraicGeometry.smoothOfRelativeDimension_blowUpπ_comp),
and the exceptional divisors are smooth of relative dimension n − 1, because the exceptional
divisor of such a blow-up is (AlgebraicGeometry.smoothOfRelativeDimension_exceptional), by
induction along the sequence.
Trivial and empty blow-ups ([Kol07, Warning 20 and 32]). A trivial blow-up has an invertible
center and its π_i is an isomorphism
(AlgebraicGeometry.Scheme.IdealSheafData.blowUp.isIso_π_of_isInvertible); the empty blow-up,
center ⊤, is trivial with exceptional divisor ⊤.comap π_i = ⊤, and under the isomorphism the
exceptional divisor of a trivial blow-up is the center (Warning 20 (2):
comap_inv_step_exceptionalAt). eraseEmpty deletes the empty blow-ups by carrying each tail back
along the inverse of its empty blow-up through pullback; pulling back along an isomorphism neither
creates nor removes empty centers (noEmptyCenters_pullback_iff, from the pullback square of
blow-up maps AlgebraicGeometry.isPullback_blowUpMap and comap_eq_top_iff_of_isIso), which gives
noEmptyCenters_eraseEmpty, eraseEmpty_eq_self_iff, idempotence, and the length count r' + #{i : Z_i = ∅} = r (length_eraseEmpty_add_card).
length_pullback (pulling back does not change the length) is proved here because that count
needs it; the theory of the pullback is in Hironaka/Scheme/BlowUpSequence/Pullback.lean.
The blow-up maps, predicates and marked transforms of a sequence #
The i-th monoidal transformation π_i = π_{Z_i, X_i} : X_{i+1} ⟶ X_i of the succession,
0 ≤ i < r [Kol07, Definition 29]: the projection D_i.blowUpπ, composed with the
identification X_1 = D.blowUp of the tail's zeroth stage (an eqToHom; the recursion stage
exposes X_1 = D.blowUp only once the tail's constructor is known).
Equations
- (AlgebraicGeometry.Scheme.BlowUpSequence.nil x✝).step i = i.elim0
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).step ⟨0, isLt⟩ = CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) D.blowUpπ
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).step ⟨j.succ, h⟩ = rest.step ⟨j, ⋯⟩
Instances For
Π_{ij} := π_j ∘ ⋯ ∘ π_{i-1} : X_i ⟶ X_j for j ≤ i [Kol07, Definition 29]; Π_{i0} = Π_i is
stageMap.
Equations
- (AlgebraicGeometry.Scheme.BlowUpSequence.nil x✝).stageMapBetween x_6 x_7 x_8 = CategoryTheory.CategoryStruct.id ((AlgebraicGeometry.Scheme.BlowUpSequence.nil x✝).stage x_6)
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).stageMapBetween ⟨0, isLt⟩ ⟨0, isLt_1⟩ x_5 = CategoryTheory.CategoryStruct.id x✝
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).stageMapBetween ⟨0, isLt⟩ ⟨n.succ, isLt_1⟩ h = ⋯.elim
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).stageMapBetween ⟨i.succ, hi⟩ ⟨0, isLt⟩ x_5 = CategoryTheory.CategoryStruct.comp (rest.stageMap ⟨i, ⋯⟩) D.blowUpπ
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝ D rest).stageMapBetween ⟨i.succ, hi⟩ ⟨j.succ, hj⟩ h = rest.stageMapBetween ⟨i, ⋯⟩ ⟨j, ⋯⟩ ⋯
Instances For
The exceptional divisor F_{i+1} := π_i⁻¹(Z_i) ⊂ X_{i+1} of the i-th monoidal transformation
[Kol07, Definition 29 and Notation 19], as the inverse image ideal sheaf of the centre.
Equations
- S.exceptionalAt i = (S.center i).comap (S.step i)
Instances For
A smooth blow-up sequence over f : X ⟶ Spec k [Kol07, Definition 29 and Notation 19]: one
whose every centre Z_i ⊂ X_i is smooth over k, that is, every π_i is a smooth blow-up with its
specified centre (that the stages and the exceptional divisors are then smooth is a theorem, not
part of the definition).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The equidimensional form of IsSmooth [Kol07, Notation 64 (1)]: the ambient scheme is of pure
relative dimension n over k, and every centre is smooth of relative dimension n − r_i over k
for some r_i ≤ n.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The i-th blow-up is trivial [Kol07, Warning 20] if its centre is a Cartier divisor of its
stage (an invertible ideal sheaf); π_i is then an isomorphism.
Equations
- S.IsTrivialAt i = (S.center i).IsInvertible
Instances For
The i-th blow-up is empty [Kol07, Warning 20] if its centre is empty, Z_i = ⊤.
Instances For
No centre is empty [Kol07, 32].
Instances For
The marked ideals (I_i, m) induced along the succession, I_0 = I and
I_{i+1} = (π_i)_*^{-1}(I_i, m) [Kol07, Warning 63, (63.1)]; [Kol07, Definition 66, (66.1′)].
This is a function of the succession — its list of centres — and not of the composite Π alone,
as Kollár's Warning 63 stresses. Defined for every succession; Kollár's order and normal-crossing
conditions at each stage are BlowUpSequence.IsOrderGeSeq
(Hironaka/Scheme/BlowUpSequence/FunctorVocabulary.lean).
Equations
- (AlgebraicGeometry.Scheme.BlowUpSequence.nil x✝²).markedTransformSeq x✝¹ x✝ x_7 = x✝¹
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝² D rest).markedTransformSeq x✝¹ x✝ ⟨0, isLt⟩ = x✝¹
- (AlgebraicGeometry.Scheme.BlowUpSequence.cons x✝² D rest).markedTransformSeq x✝¹ x✝ ⟨j.succ, h⟩ = rest.markedTransformSeq (x✝¹.markedTransform D x✝) x✝ ⟨j, ⋯⟩
Instances For
The stages and composites of Definition 29 #
The first stage of a blow-up sequence is the scheme it starts with, X_0 = X
[Kol07, Definition 29].
On the empty sequence every composite Π_i is the identity.
Π_0 = 𝟙 X on the cons shape.
π_0 on the cons shape, with the cast X_1 = D.blowUp made explicit: the definition of
step splits on the tail's constructor, because rest.stage 0 reduces to D.blowUp only
then.
Π_{i+1} = Π_i ∘ π_i [Kol07, Definition 29].
Π_i = Π_{i0} on the empty sequence [Kol07, Definition 29].
Π_i = Π_{i0} on the cons shape [Kol07, Definition 29].
The empty composite Π_{ii} is the identity.
Π_j ∘ Π_{ij} = Π_i: the cocycle with the last index 0, in the cast-free form.
The cocycle identity Π_{jl} ∘ Π_{ij} = Π_{il} for l ≤ j ≤ i [Kol07, Definition 29].
Π_{i+1, i} = π_i [Kol07, Definition 29].
The points of the exceptional divisor F_{i+1} = π_i⁻¹(Z_i) are the points over the center
Z_i [Kol07, Notation 19].
Smooth blow-up sequences #
The recursion of IsSmooth on the cons shape: the first center is smooth and the tail is a
smooth sequence on D.blowUp.
The recursion of IsSmoothOfRelativeDimension on the cons shape.
The equidimensional form of smoothness implies that every center is smooth.
Along a sequence that is smooth in the equidimensional sense, every stage X_i is smooth of
relative dimension n over the perfect field k [Kol07, Notation 19]: the blow-up of a smooth
center of pure codimension in a scheme smooth of relative dimension n is again smooth of
relative dimension n, and one inducts along the sequence.
Every stage X_i of a sequence smooth in the equidimensional sense is smooth over k
[Kol07, Notation 19].
Every exceptional divisor F_{i+1} of a sequence smooth in the equidimensional sense is
smooth of relative dimension n − 1 over k [Kol07, Notation 19].
Every exceptional divisor F_{i+1} of a sequence smooth in the equidimensional sense is
smooth over k [Kol07, Notation 19].
Trivial and empty blow-ups #
The empty blow-up is trivial: the unit ideal sheaf is invertible [Kol07, Warning 20].
The blow-up map of a trivial blow-up is an isomorphism [Kol07, Warning 20].
The exceptional divisor of an empty blow-up is empty [Kol07, Warning 20].
A center is the unit ideal sheaf iff its closed subscheme has no points: the two readings of
"Z = ∅" in [Kol07, Warning 20] agree.
The exceptional divisor of a trivial blow-up is its center #
When π_i is an isomorphism, the inverse image of F_{i+1} along π_i⁻¹ is the center Z_i:
the exceptional divisor of a trivial blow-up is its center [Kol07, Warning 20 (2)].
Pullback along an isomorphism #
Pulling back a sequence does not change its length.
The recursion of NoEmptyCenters on the cons shape.
The inverse image of an ideal sheaf along an isomorphism is the unit ideal iff the ideal is.
Pulling a sequence back along an isomorphism neither creates nor removes empty centers: the
lifted maps are isomorphisms (the blow-up maps form a pullback square,
AlgebraicGeometry.isPullback_blowUpMap), and comap along an isomorphism preserves and reflects
⊤.
Deleting the empty blow-ups #
Deleting the empty blow-ups of the empty sequence.
A nonempty first center is kept.
An empty first blow-up is deleted, its tail carried back to X along the inverse of the
isomorphism blowUpπ X ⊤.
The result of eraseEmpty has no empty centers: the empty blow-up convention of [Kol07, 32].
Deleting the empty blow-ups changes nothing iff there are none.
Deleting the empty blow-ups is idempotent.
The length after deleting the empty blow-ups is the length minus the number of empty centers (empty blow-ups "mess up the numbering", [Kol07, Warning 20]).
Deleting the empty blow-ups does not increase the length.
A sequence is more than its end result #
Sequences with different first centers differ: a sequence carries its centers, not only its maps [Kol07, Remark 33 and Warning 20 (1)].
The composite along an equality of sequences #
The composite along an equality of sequences: the eqToHom between the last stages is
absorbed.