The disjoining list: the final strict transforms and the centres #
Alongside disjoinList m F this module carries the family the recursion ends with — the strict
transforms of the components along the whole list, disjoinFinal m F on the last stage — and
proves Kollár's conclusions in [Kol07, 72]:
- "After
(k − 1)steps we get rid of all pairwise intersections as well": the final strict transforms form a simple normal crossings divisor whose members are pairwise disjoint (no point lies on two of them,meetLocus 2 = ∅), so that "we can just declare thatEis a single divisor" (Collapse.lean); - every centre lies over the multiple locus
Sing E— them-fold meet loci form ≥ 2are insideSing, and the multiple locus of the strict transforms lies over the multiple locus (CentersOver F.sing, the hypothesis ofisAnalyticIsoOver_stageMapfor clause (3) of [Kol07, Theorem 35] inClauseThree.lean); - the bridge to the boundary family: the member
jofdisjoinFinalis the strict transformstrictTransformSeq (F.hyp j)at the last stage (theconsrulecons_strictTransformSeq_succat every step) — the memberoriginalIdx jof the boundary familytotalTransformSeqFrom Fthere (hyp_originalIdx).
The Hironaka library has the corresponding statements in
Hironaka/Resolution/Algebraic/Kol07/Thm35/Disjoin.lean.
A point on two distinct strict transforms lies over a point on the two members — the multiple
locus of the strict transforms lies over the multiple locus (the disjoining centres of [Kol07, 72]
stay over Sing E).
The strict transforms under the first disjoining blow-up — the family the recursion
disjoinList continues with at m + 2.
Equations
- Hironaka.Manifold.disjoinNext F hF hm = Manifold.HypersurfaceFamily.strictTransforms (⇑(Manifold.blowUpπ ψ₀ ⋯)) (F.meetLocus (m + 2)) F
Instances For
The computation rule of disjoinList at m + 2 (definitional).
The strict transform of the component j along the whole disjoining list, on the last stage
(by the recursion of disjoinList).
Equations
- Hironaka.Manifold.disjoinFinalHyp 0 x_1 x_2 x_4 x_3 = x_1.hyp x_3
- Hironaka.Manifold.disjoinFinalHyp 1 x_1 x_2 x_4 x_3 = x_1.hyp x_3
- Hironaka.Manifold.disjoinFinalHyp m.succ.succ x_1 x_2 x_4 x_3 = Hironaka.Manifold.disjoinFinalHyp (m + 1) (Hironaka.Manifold.disjoinNext x_1 x_2 x_4) ⋯ ⋯ x_3
Instances For
The strict transforms of the components along the whole disjoining list — the family the
recursion disjoinList ends with, on the last stage; indexed by the components of F.
Equations
- Hironaka.Manifold.disjoinFinal m F hF hm = { ι := F.ι, countable := ⋯, linearOrder := F.linearOrder, hyp := Hironaka.Manifold.disjoinFinalHyp m F hF hm }
Instances For
The computation rule of disjoinFinal at m + 2 (definitional).
The final family is a simple normal crossings divisor (isSnc_strictTransforms at every
step).
Kollár's "after (k − 1) steps we get rid of all pairwise intersections" [Kol07, 72]: the
final strict transforms are pairwise disjoint — no point lies on two of them (the invariant
meetLocus (m + 1) = ∅ carried down to m = 1).
Every centre of the disjoining list of [Kol07, 72] lies over the multiple locus Sing F — the
(m + 2)-fold meet locus is inside Sing F, and the centres of the rest lie over the multiple
locus of the strict transforms, which lies over Sing F.
The members of the final family are the strict transforms of the components along the list
(strictTransformSeq at the last stage; the cons rule is cons_strictTransformSeq_succ) —
hence, by hyp_originalIdx, the members originalIdx j of the boundary family
totalTransformSeqFrom F at the last stage.