Documentation

Hironaka.Manifold.BlowUp.Transform.Colon

The quotient I_F^{-m} π⁻¹(I) exists; the birational transform of a marked ideal #

The exceptional ideal I_F = π^*I_Y (hY.idealSheaf.pullback π h.contMDiff) is the ideal sheaf of the exceptional divisor F = π⁻¹(Y): in a blow-up chart of index i its stalk is generated by the scaling coordinate u_i, and off F it is the unit ideal (isIdealSheafOf_exceptionalIdealSheaf, stalkIdeal_exceptionalIdealSheaf_eq_span_coord, stalkIdeal_exceptionalIdealSheaf_of_notMem: the results of Hironaka.Manifold.BlowUp.Divisor on the pullback of the ideal sheaf of the centre, applied to I_Y).

If the order of I along the centre Y is at least m, the total transform π⁻¹(I) lies in I_F^m (totalTransform_le_pow_exceptional; stalkwise, I_a ⊆ I_{Y,a}^m maps to (π^*I)_{a'} ⊆ (π^*I_Y)^m_{a'}, and off the exceptional divisor I_F is the unit ideal), and the quotient, specified stalkwise by the colon ideals (π⁻¹(I)_{a'} : I_{F,a'}^m) (IdealSheaf.IsDivExceptional), exists as a locally finitely generated ideal sheaf (exists_isDivExceptional), uniquely (IsDivExceptional.unique). This is the division of the total transform by a power of the ideal of the exceptional divisor in Hironaka's weak transform [Hir64, Ch. 0, §5, p. 142], in Bierstone–Milman's [BM97, Remark 1.8] and in Kollár's birational transform of a marked ideal [Kol07, Definition 60, (60.1)]. The local generators are Kollár's u_i^{-m}(f ∘ π) [Kol07, Definition 60, (60.3)]: on a blow-up chart Φ of index i, f_j ∘ π (the pulled-back local generators f_j of I) is divisible by u_i^m as a germ at every point of the exceptional divisor {u_i = 0}, so the iterated canonical quotient of Hironaka.Manifold.BlowUp.Transform.Division gives analytic sections g_j on the chart with u_i^m g_j = f_j ∘ π; at a point of the exceptional divisor the colon (span(u_i^m g_j) : u_i^m) is span(g_j) because the stalk is a domain (it is isomorphic to the ring of convergent power series) and u_i ≠ 0, and off it u_i is a unit, so the colon by the unit ideal is span(u_i^m g_j) = span(g_j). The exponent is allowed to vary with the point as long as it is locally constant on the exceptional divisor, so that the same lemma serves the birational transform of a marked ideal (constant m, here) and Hironaka's weak transform (the generic order along each component of the centre, Hironaka.Manifold.BlowUp.Transform.Weak). The birational transform MarkedIdealSheaf.birationalTransform has the colon stalks whenever m ≤ ν_Y(I) (isDivExceptional_birationalTransform) and keeps the marking (birationalTransform_m); in a blow-up chart the quotient's stalk is spanned by any germs g_j with u_i^m g_j = f_j ∘ π, whatever the generators (IsDivExceptional.stalkIdeal_eq_span).

theorem Manifold.IdealSheaf.le_ordAlongIdeal_iff {X : TopCat} {𝒪 : TopCat.Sheaf CommRingCat X} (D J : IdealSheaf 𝒪) (a : ↑X) (p : ℕ) :

ν_{D,a}(J) ≥ p iff J_a ⊆ D_a^p: the order along D is the largest p with J_a ⊆ D_a^p (the set of such p is downward closed) [BM97, §3].

theorem Manifold.coord_ne_zero {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Φ : OpenPartialHomeomorph M E} (hΦ : Φ ∈ IsManifold.maximalAtlas (modelWithCornersSelf 𝕜 E) ⊤ M) {b : M} (hb : b ∈ Φ.source) (i : Fin n) :
coord E ψ Φ hΦ hb i ≠ 0

A coordinate germ of a chart is nonzero: its own coordinate derivative is 1.

theorem Manifold.isDomain_stalk {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] (ψ : E ≃L[𝕜] Fin n → 𝕜) {Φ : OpenPartialHomeomorph M E} (hΦ : Φ ∈ IsManifold.maximalAtlas (modelWithCornersSelf 𝕜 E) ⊤ M) {b : M} (hb : b ∈ Φ.source) :

The stalk of the structure sheaf is a domain: it is isomorphic to the ring of convergent power series.

The exceptional ideal #

theorem Manifold.isIdealSheafOf_exceptionalIdealSheaf {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) :

I_F = π^*I_Y is the ideal sheaf of the exceptional divisor F = π⁻¹(Y).

theorem Manifold.stalkIdeal_exceptionalIdealSheaf_eq_span_coord {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) {φ : OpenPartialHomeomorph M E} {σ : Fin c ↪ Fin n} {i : Fin c} {Φ : OpenPartialHomeomorph M' E} (hφ : IsAdaptedChart ψ Y φ σ) (hΦ : IsBlowUpChart ψ π φ σ i Φ) {p : M'} (hp : p ∈ Φ.source) :
(IdealSheaf.pullback π ⋯ hY.idealSheaf).stalkIdeal p = Ideal.span {coord E ψ Φ ⋯ hp (σ i)}

In a blow-up chart of index i the stalk of I_F is generated by the scaling coordinate u_i.

theorem Manifold.stalkIdeal_exceptionalIdealSheaf_of_notMem {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) {p : M'} (hp : π p ∉ Y) :

Off the exceptional divisor the stalk of I_F is the unit ideal.

The quotient I_F^{-m} π⁻¹(I) #

theorem Manifold.IsBlowUp.totalTransform_stalkIdeal_le {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (I : IdealSheaf (structureSheaf 𝕜 E M)) {m : ℕ} {a' : M'} (hm : ↑m ≤ hY.idealSheaf.ordAlongIdeal I (π a')) :

Stalkwise: if ν_Y(I) ≥ m at π a' then π⁻¹(I)_{a'} ⊆ I_{F,a'}^m.

theorem Manifold.totalTransform_le_pow_exceptional {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (I : IdealSheaf (structureSheaf 𝕜 E M)) {m : ℕ} (hm : ∀ a ∈ Y, ↑m ≤ hY.idealSheaf.ordAlongIdeal I a) :

If ν_Y(I) ≥ m along Y then π⁻¹(I) ⊆ I_F^m [Hir64, Ch. 0, §5, p. 142].

theorem Manifold.IsBlowUpChart.isUnit_coord_of_notMem {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] {π : M' → M} {φ : OpenPartialHomeomorph M E} {σ : Fin c ↪ Fin n} {i : Fin c} {Φ : OpenPartialHomeomorph M' E} (hφ : IsAdaptedChart ψ Y φ σ) (hΦ : IsBlowUpChart ψ π φ σ i Φ) {p : M'} (hp : p ∈ Φ.source) (hpY : π p ∉ Y) :
IsUnit (coord E ψ Φ ⋯ hp (σ i))

The scaling coordinate of a blow-up chart is a unit off the exceptional divisor.

theorem Manifold.hasLocalGenerators_colon {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (I : IdealSheaf (structureSheaf 𝕜 E M)) (m : M' → ℕ) (hm : ∀ (a' : M'), π a' ∈ Y → ↑(m a') ≤ hY.idealSheaf.ordAlongIdeal I (π a')) (hloc : ∀ (a' : M'), π a' ∈ Y → ∀ᶠ (b : M') in nhds a', π b ∈ Y → m b = m a') :

The colon stalks (π⁻¹(I)_{a'} : I_{F,a'}^{m a'}) have local generators, for any exponent m that is locally constant on the exceptional divisor and at most the order of I along the centre: the divided generators u_i^{-m}(f_j ∘ π) on a blow-up chart [Kol07, Definition 60, (60.3)], the pulled-back generators off the exceptional divisor.

theorem Manifold.exists_isDivExceptional {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (I : IdealSheaf (structureSheaf 𝕜 E M)) {m : ℕ} (hm : ∀ a ∈ Y, ↑m ≤ hY.idealSheaf.ordAlongIdeal I a) :
∃ (J' : IdealSheaf (structureSheaf 𝕜 E M')), (IdealSheaf.pullback π ⋯ I).IsDivExceptional (IdealSheaf.pullback π ⋯ hY.idealSheaf) (fun (x : ↑↧M') => m) J'

The quotient I_F^{-m} π⁻¹(I) exists as a locally finitely generated ideal sheaf when ν_Y(I) ≥ m along Y ([Hir64, Ch. 0, §5, p. 142]; [BM97, Remark 1.8]).

theorem Manifold.IsDivExceptional.unique {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] {Itot IF : IdealSheaf (structureSheaf 𝕜 E M')} {m : M' → ℕ} {J₁ J₂ : IdealSheaf (structureSheaf 𝕜 E M')} (h₁ : Itot.IsDivExceptional IF m J₁) (h₂ : Itot.IsDivExceptional IF m J₂) :
J₁ = J₂

The quotient is determined by its stalks.

theorem Manifold.isDivExceptional_birationalTransform {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (J : MarkedIdealSheaf (structureSheaf 𝕜 E M)) (hm : ∀ a ∈ Y, ↑J.m ≤ hY.idealSheaf.ordAlongIdeal J.I a) :

The birational transform of (I, m), m ≤ ν_Y(I), has the colon stalks [Kol07, Definition 60, (60.1)].

theorem Manifold.birationalTransform_m {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (J : MarkedIdealSheaf (structureSheaf 𝕜 E M)) :

The birational transform keeps the marking.

theorem Manifold.IsDivExceptional.stalkIdeal_eq_span {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ : E ≃L[𝕜] Fin n → 𝕜} {M : Type u} [TopologicalSpace M] [ChartedSpace E M] {Y : Set M} {c : ℕ} {M' : Type u} [TopologicalSpace M'] [ChartedSpace E M'] [IsManifold (modelWithCornersSelf 𝕜 E) ⊤ M'] [T2Space M'] [SecondCountableTopology M'] {π : M' → M} (hY : IsClosedSubmanifold ψ Y c) (h : IsBlowUp ψ Y c π) (I : IdealSheaf (structureSheaf 𝕜 E M)) {m : ℕ} (hm : ∀ a ∈ Y, ↑m ≤ hY.idealSheaf.ordAlongIdeal I a) {J' : IdealSheaf (structureSheaf 𝕜 E M')} (hJ' : (IdealSheaf.pullback π ⋯ I).IsDivExceptional (IdealSheaf.pullback π ⋯ hY.idealSheaf) (fun (x : ↑↧M') => m) J') {U : TopologicalSpace.Opens M} {k : ℕ} {f : Fin k → ↑((structureSheaf 𝕜 E M).presheaf.obj (Opposite.op U))} (hgen : ∀ (b : M) (hb : b ∈ U), I.stalkIdeal b = Ideal.span (Set.range fun (j : Fin k) => (CategoryTheory.ConcreteCategory.hom ((structureSheaf 𝕜 E M).presheaf.germ U b hb)) (f j))) {φ : OpenPartialHomeomorph M E} {σ : Fin c ↪ Fin n} {i : Fin c} {Φ : OpenPartialHomeomorph M' E} (hφ : IsAdaptedChart ψ Y φ σ) (hΦ : IsBlowUpChart ψ π φ σ i Φ) {a' : M'} (ha' : a' ∈ Φ.source) (hU : π a' ∈ U) :
∃ (g : Fin k → ↑((structureSheaf 𝕜 E M').presheaf.stalk a')), (∀ (j : Fin k), coord E ψ Φ ⋯ ha' (σ i) ^ m * g j = (germMap π ⋯ a') ((CategoryTheory.ConcreteCategory.hom ((structureSheaf 𝕜 E M).presheaf.germ U (π a') hU)) (f j))) ∧ J'.stalkIdeal a' = Ideal.span (Set.range g)

In a blow-up chart of index i, the quotient I_F^{-m} π⁻¹(I) is generated by germs g_j with u_i^m g_j = f_j ∘ π, for any local generators f_j of I, whatever the generators [Kol07, Definition 60, (60.3)].