The ideal-theoretic strict transforms along the push-forward of a blow-up sequence #
Kollár pushes a blow-up sequence T of a closed submanifold S ⊆ X forward to a sequence
j_* T of X whose centres are the carried centres Z_i^X = (j_i)_* Z_i^S, and declares that
"for all practical purposes Z_i^X = Z_i^S" [Kol07, Definition 30.3]; the identification behind
it is that S_{i+1} := Bl_{Z_i ∩ S_i} S_i is the birational (strict) transform of S_i in
X_{i+1} [Kol07, Definition 30.2] (strictTransform_submanifold_eq_blowUp,
BlowUp/Transform/StrictSmooth.lean). The comparison of the local resolutions of a piece for two
embeddings needs the IDEAL-level content of the sentence for a closed subspace Y ⊆ S given by an
ideal sheaf I ⊇ 𝓘_S of X: the strict transforms strictTransformSubspace of I along j_* T
stay inside the carried S_i and restrict to the strict transforms of I|_S along T itself.
This module proves it. Labels used below: (A) the containment 𝓘_{S'} ≤ Yt, (A′) its
consequence off S', (S) and (S′) the saturation identities, (C) the branch coincidence, (B) the
restriction identity, (Q) the diffeomorphism square.
The one-step core (section PushforwardStep) #
For one blowing-up σ : X' → X along Y ⊆ S with S' := strictTransformSet σ Y S (a closed
submanifold) and the restricted blow-down σ|_{S'} : S' → S (a blowing-up of the bundled S
along Y, isBlowUp_restrictMap), write ρ_p : 𝒪_{X',p} → 𝒪_{S',p} for the restriction of
germs at p ∈ S' — surjective (germMap_inclusionMap_surjective) with kernel 𝓘_{S',p}
(stalkIdeal_idealSheaf_of_mem).
idealSheaf_strictTransform_le_strictTransformSubspace(A):𝓘_{S'} ≤ Yt, the strict transform ofIlies insideS'— from the inclusion𝓘_{S'} ≤ saturation(σ^*𝓘_S)(idealSheaf_strictTransform_stalkIdeal_le_saturationStalk, the adapted-chart computationσ^*𝓘_S = 𝓘_{S'} · 𝓘_E) and the monotonicity of the saturation in the ideal; trivial in the⊤branch. Its stalk form𝓘_{S',p} ≤ Sat_X(I)_pis the INPUT of the colon step below: the kernel ofρ_plies in the saturation.saturationStalk_restrictMap_eq_map(S):Sat_S(I|_S)_p = ρ_p(Sat_X(I)_p). The exceptional stalk is principal,𝓘_{E,p} = (u)(exists_stalkIdeal_totalTransform_self_eq_span_singleton);k = 0is the pull-back identityσ|_{S'}^*(I|_S) = (σ^*I)|_{S'}; fork ≥ 1a germgwithu^k g ∈ σ^*Irestricts into(σ^*I|_{S'} : ρ(u)^k), and conversely a liftgofh ∈ (σ^*I|_{S'} : ρ(u)^k)hasu^k g ∈ σ^*I + 𝓘_{S'} ⊆ Sat_X(I), sog ∈ Sat_X(I)(the saturation is saturated:u^m x ∈ Sat ⇒ x ∈ Sat).comap_saturationStalk_restrictMap(S′):Sat_X(I)_p = ρ_p⁻¹(Sat_S(I|_S)_p)(the kernel lies inSat_X), andsaturationStalk_eq_top_of_notMem_strictTransform_of_le(A′): offS'the saturation is the unit ideal (𝓘_{S',p} = ⊤ ≤ Sat_X(I)_p).hasLocalGenerators_saturationStalk_restrictMap_iff(C), the BRANCH COINCIDENCE of theifin the definition ofstrictTransformSubspace:Sat_X(I)has local generators iffSat_S(I|_S)has. Generators RESTRICT (hasLocalGenerators_pullbackonofStalks,ρ(ρ⁻¹J) = J) and LIFT: nearp ∈ S'theS'-generators' germs lift along the surjectiveρ_pto germs ofX', represented by sections agreeing with the generators nearp(TopCat.Presheaf.germ_eq); together with local generators of𝓘_{S'}(which are⊤at the nearby points offS') they generateρ_q⁻¹(Sat_S)=Sat_Xat every nearbyq; offS'the single section1generates on the openS'ᶜ. No finite-type input is needed: the result holds over everyRCLikefield.strictTransformSubspace_pullback_inclusionMap(B), UNCONDITIONAL:(strict transform of I along σ)|_{S'} = strict transform of I|_S along σ|_{S'}— in thethenbranches by (S), in theelsebranches by⊤pulling back to⊤, the branches coinciding by (C).
The diffeomorphism square (section DiffeoSquare) — (Q) #
T's stage i+1 is blown up along the GIVEN T.map i, the core along the restricted blow-down;
the unique diffeomorphism PushforwardStage.blowUpStep.iso : T_{i+1} ≃ S_{i+1} lies over
e_i : T_i ≃ S_i (restrictMap_blowUpStep_iso).
strictTransformSubspace_comap_of_diffeomorph_square carries the strict transform across any such
square of blow-up models of the same centre (saturationStalk_comap_of_diffeomorph_square at the
sheaf level: bijective germ maps, the exceptional ideal sheaf by
comap_idealSheaf_of_isLocalDiffeomorph and idealSheaf_congr, the branches by
hasLocalGenerators_pullback / HasLocalGenerators.of_map_germMap_of_surjective).
The chain (namespace AnalyticManifold.FiniteSuccession) #
isClosedSubmanifold_range_pushforwardIncl types the carried S_i = j_i(T_i) on the stage;
(A) idealSheaf_range_pushforwardIncl_le_strictTransformSubspaceSeq, (B)
strictTransformSubspaceSeq_pushforward_pullback_incl and (C)
hasLocalGenerators_saturationStalk_pushforward_iff follow by ONE induction on the stage
(strictTransformSubspaceSeq_pushforward_aux: (A) ∧ (B) at stage i; the step is the core at
P := pushforwardAux i with I := Yt^X_i, its hypothesis 𝓘_{S_i} ≤ Yt^X_i the (A) of the
previous stage, the branch coincidence (C) of the step supplying both then/else cases, and the
square (Q) carrying the result from the restricted blow-down to T.map i; stage 0 is
J := I|_S, pushforwardIncl_zero). The witnesses of the push-forward at a step are its CHOSEN
chart and codimension on the cosupport of the carried centre; strictTransformSubspace_congr
bridges them to pushforwardCenterOfSub (support_pushforwardCenterOf).
Sources: [Kol07, Definitions 30.2–30.3]; the saturation is that of [BM97, §3, Proposition 3.13]. The proofs are bookkeeping of the printed steps; not in the sources.
(Q) The diffeomorphism square of two blow-up models of the same centre #
The saturation stalks across a DIFFEOMORPHISM square (the saturation half of (Q)): two
blowings-up π₁ : M₁' → M₁ along Y₁, π₂ : M₂' → M₂ along Y₂ = g(Y₁), and a
diffeomorphism g' of the blow-ups over g — the saturation stalks of g^*I₂ along π₁ are the
images of the saturation stalks of I₂ along π₂ under the bijective germ maps of g'.
The two saturations take the same branch of the if in strictTransformSubspace (g' is a
surjective local isomorphism) — the branch half of (Q).
(Q) The strict transform transports along a diffeomorphism square of blow-up models:
g'^* (strict transform of I₂ along π₂) = strict transform of g^*I₂ along π₁ — branch by branch,
UNCONDITIONAL. Used at each step of the chain to pass from the restricted blow-down
S_{i+1} → S_i (the core's model) to the given T.map i through the unique diffeomorphism
PushforwardStage.blowUpStep.iso (restrictMap_blowUpStep_iso).
The core: one blowing-up of M along Y ⊆ S, restricted to the strict transform S' #
The stalk form of (A): the ideal of the strict transform S' lies in the saturation of
σ^*I at every point — the inclusion 𝓘_{S'} ≤ saturation(σ^*𝓘_S) (the adapted-chart
computation) and the monotonicity of the saturation in the ideal.
(A) core ("Z_i^X = Z_i^S" of [Kol07, Definition 30.3] made explicit: the strict transform of
a subspace of S stays in the strict transform S' of S): 𝓘_{S'} ≤ the strict transform of
I — from 𝓘_{S'} = saturation of σ^*𝓘_S ≤ saturation of σ^*I ([Kol07, Definition 30.2],
strictTransform_submanifold_eq_blowUp); trivial in the ⊤ branch.
(A′) core: off the strict transform S' the saturation of σ^*I is the unit ideal (the
ideal of S' is the unit ideal there and lies in the saturation).
The saturation is saturated: if u^m x lies in ⋃_k (σ^*I : (u)^k), u generating the
exceptional stalk, so does x (the union is directed).
(S) core: at a point p ∈ S' the saturation of σ|_{S'}^*(I|_S) by the exceptional
divisor of S' → S is the IMAGE of the saturation of σ^*I under the surjective restriction
𝒪_{M',p} → 𝒪_{S',p} (germMap_inclusionMap_surjective): k = 0 is the pull-back identity,
k ≥ 1 the colon step (σ^*I : 𝓘_E^k) ↦ (σ^*I|_{S'} : 𝓘_{E_S}^k) with (A) at the step —
𝓘_{S'} ≤ Sat_X(I) from 𝓘_{S'} · 𝓘_E = σ^*𝓘_S ≤ σ^*I — as the input that lets the kernel drop
out.
(S′) core: the saturation of σ^*I at p ∈ S' is the PREIMAGE of the saturation on S' (it
contains the kernel 𝓘_{S'} by (A)).
(C) core, the BRANCH COINCIDENCE of the if in strictTransformSubspace: the saturation of
σ^*I on M' has local generators iff the saturation of σ|_{S'}^*(I|_S) on S' has —
generators LIFT (the S'-generators' local representatives along the closed embedding, together
with the adapted coordinates generating 𝓘_{S'}, which also give ⊤ at the nearby points off
S') and RESTRICT (the restriction is surjective on stalks, ρ(ρ⁻¹ J) = J). No finite-type input
is needed.
(B) core, UNCONDITIONAL ([Kol07, Definitions 30.2–30.3]): the strict transform of I ⊇ 𝓘_S
under σ = Bl_Y M → M, restricted to the strict transform S' = Bl_Y S, is the strict transform
of I|_S under the restricted blowing-up σ|_{S'} : S' → S — in the then branches by (S), in
the else branches by ⊤ pulling back to ⊤, the branches coinciding by (C).
Along the push-forward j_* T of a sequence of the bundled S #
The carried S_i = j_i(T_i) ⊆ X_i as a closed submanifold of the stage X_i of the
push-forward, typed on the stage (the pushforwardAux witness, read through range_incl).
One step of the chain, on a stage datum P at the given stage T_j (PushforwardStage; the
induction instantiates P := pushforwardAux j): from the strict transform Yt of I on
P.space containing 𝓘_{S_j} and restricting to the T-chain's Y_j, the same two facts on
P.blowUpStep — the core (A)/(B) at P and the diffeomorphism square (Q) from the restricted
blow-down to the given T.map j.
One step of the branch coincidence along the chain, on a stage datum P at T_j: the core
(C) at P, the restricted blow-down's witnesses read as isBlowUp_restrictMap_imageVal's, and
the square (Q) to the given T.map j.
The chain, ℕ-indexed: (B) ∧ (A) at every stage, by ONE induction on the stage ((B) at i + 1
needs (A) at i as the core's hypothesis and (B) at i for the identification of the inputs).
(A) Along the push-forward j_* T [Kol07, Definition 30.3] the strict transform of I ⊇ 𝓘_S
stays inside the carried S_i: 𝓘_{S_i} ≤ Ỹ^X_i at every stage (stage 0 is the
hypothesis).
(B) UNCONDITIONAL ("for all practical purposes Z_i^X = Z_i^S", [Kol07, Definition 30.3]):
the strict transform of I along the push-forward, restricted to the carried S_i through
j_i : T_i ↪ X_i, is the strict transform of I|_S along T itself — one induction on the stage
with (C) (both chains take the same branch at each step; stage 0 is J := I|_S).
The branch coincidence along the chains, ℕ-indexed (the Fin form below): at step j the
saturation of the X-chain has local generators iff the saturation of the S-chain has.
(C) The BRANCH COINCIDENCE along the chains: at every step the saturation of the X-chain
has local generators iff the saturation of the S-chain has (the core (C) at the step, the two
chains' inputs identified by (B) at the previous stage).