The exit of the monomial phase, and the composite of the rounds with the monomial phase #
The monomial phase (Step2bPhase.lean, Step2bFamily.lean, Step2bFunctor.lean) blows up the
positive locus of the top active member until no member is active ([Wlo09, Theorem 7.4.1];
[Wlo09, §6, Step 2b]). This module proves what its value leaves behind, in the two forms which the
next step of the modified algorithm (the restriction to a hypersurface of maximal contact) needs
("we arrive at the purely nonmonomial case I′ = N(I′), where max{ord_x(I) : x ∈ supp(I′)} = 1",
[Wlo09, Theorem 7.4.1]):
- the first exit property: at the induced triple of the value of the phase no member is active
(
activeMembers_induced_step2bPhase_eq_empty,activeMembers_induced_step2bFam_eq_empty), since the measurestep2bMeasuredrops by one per step (step2bMeasure_stepTriple_add_one_le) and at measure0no member is active. HenceM(𝓘) = ⊤(monomialPart_eq_top_of_activeMembers_eq_empty: every component exponent is0) andN(𝓘) = 𝓘(nonmonomialTriple_I_eq_of_monomialPart_eq_top, the colon by the unit ideal): "no active member" means "the ideal is its own nonmonomial part". - the second exit property: the pointwise bound
ord N(𝓘) ≤ dsurvives every step (nonmonomialOrdLe_stepTriple) and the whole phase (nonmonomialOrdLe_induced_step2bPhase). One step is the blow-up of a centre of codimension one, a local analytic isomorphismπ(isLocalDiffeomorph_blowUpπ_of_codimOne);N(π^*𝓘) = π^* N(𝓘)(nonmonomialPart_comap, the observation of [Kol07, 111, Step 1]); the ideal after the step is the division ofπ^*𝓘by one power of the ideal of the new member (stalkIdeal_stepIdeal; at the stalkπ^*𝓘 = 𝓘_{π⁻¹Z} · 𝓘′,stalkIdeal_comap_stepπ_eq_mul, the transform (60.1) of [Kol07, Definition 60] at the mark1), which the fine nonmonomial part ignores (nonmonomialPart_componentIdeal_pow_mul, the uniqueness of the decomposition of [Kol07, Definition–Lemma 110]). The boundary after the step isstepFamily(the strict transforms and the new memberπ⁻¹(Z)last) while the pull-back lemmas speak ofF.comap π; their fine parts agree pointwise (stalkIdeal_monomialPart_stepFamily_eq): at a point the components through it correspond member by member (stepMemberOf:inl k ↦ k,inr ↦ top; injective on the members through the point,stepMemberOf_injective_of_mem, and onto,exists_mem_stepFamily_of_mem_comap) with equal stalks (stalkIdeal_idealSheaf_stepFamily_eq; overZthe new member and the pulled-back top member have the same stalk,Zbeing open inE^top,stalkIdeal_idealSheaf_stepFamily_inr_eq) and hence equal exponents; globallynonmonomialPart_stepFamily_eq_comap. No global correspondence of component sets is used.
Together, under the bound 1 on the nonmonomial part of the restricted triple, the triple induced
by the value of the phase on every open lies in BOClass 1 (boClass_one_induced_step2bFam).
Then the composite of the rounds with the monomial phase: stepACFunctor, the composeInduced
of ComposeInducedFunctor.lean of stepAFunctor at m = 1, t = 2 and step2bFunctor, with the
class hypotheses of BMOClass 1 (bmoClass_inducedTriple, bmoClass_classPullbackClosed,
bmoClass_classInducedEraseEmptyClosed); its order clause stepACFunctor_isOfOrderGe; and the fact
the next step needs, that the triple induced by its value on every open lies in BOClass 1
(boClass_one_induced_stepACFunctor): the terminal bound of the rounds at the value
(nonmonomialOrdLe_induced_stepAFamOn: stepAChainState_bound transported along the restriction,
induced_pullback and nonmonomialOrdLe_pullback, and the deletion of empty blow-ups,
nonmonomialOrdLe_induced_eraseEmpty), the exit of the monomial phase at the induced triple, and
the transport of BOClass along the shrinkAppend, restriction and deletion of the composite
(boClass_induced_concat_aux, AnalyticFamilyFunctor.boClass_induced_alongList,
AnalyticFamilyFunctor.boClass_induced_composeAlong).
The parameters hcomp and hid enter only through the rounds (stepAFunctor,
nonmonomialOrdLe_pullback).
The induced triple of a BMOClass m triple along any list of order ≥ s is in BMOClass m:
the mark is kept, the nonempty members are finite (finite_nonempty_totalTransformSeqFrom). Named
apart from Hironaka.MarkedTriple.bmoClass_induced, its scheme-theoretic counterpart.
Substituting an equal inducing list inside a predicate on the induced triple: the two last stages are only propositionally equal, so this is a substitution, not a rewrite.
No active member implies that every component exponent is 0
(ordAlong_eq_zero_of_notMem_positiveLocus, componentExponent_eq_toNat_ordAlongIdeal), hence
that the fine monomial part is the unit ideal (stalkIdeal_monomialPart, the product of the factors
of the components through the point).
M(𝓘) = ⊤ implies N(𝓘) = 𝓘 (the colon by the unit ideal, stalkIdeal_nonmonomialPart).
The head triple of a step of the monomial phase (the induced triple of the one-element list,
headTriple of InducedConcat.lean) is the triple after the step: the ideals by headTriple_I and
the definition of stepIdeal, the boundaries by headTriple_F and the definition of stepFamily
(the centre is the cosupport of its ideal sheaf). The order clause h₁ is a hypothesis here; at the
uses it is the head clause of isOfOrderGe_step2bPhase, read off through induced_cons.
The recursion of the first exit property: at a fuel k ≥ step2bMeasure T, the triple induced by
the phase has no active member (induction on k with induced_cons and headTriple_stepCenter_eq;
the measure is lowered by one per step, step2bMeasure_stepTriple_add_one_le, and at measure 0
no member is active, one_le_step2bMeasure_of_nonempty).
The first exit property: at a fuel k ≥ step2bMeasure T, the triple induced by the phase
has no active member (induction on k with induced_cons and headTriple_stepCenter_eq; the
measure is lowered by one per step, step2bMeasure_stepTriple_add_one_le, and at measure 0 no
member is active, one_le_step2bMeasure_of_nonempty).
The first exit property at the value of the family: the triple induced by the value of
step2bFam on U has no active member (step2bFam_seqOn, step2bMeasure_restrict_le_famFuel,
activeMembers_induced_step2bPhase_eq_empty).
The pointwise order is a function of the stalk
(IdealSheaf.ord J x := IsLocalRing.ord (J.stalkIdeal x)).
For any boundary with simple normal crossings, the stalk of the nonmonomial part at a point
depends only on the stalk of the ideal there: the exponents of the components through the point
are orders along them at that point (componentExponent_eq_toNat_ordAlongIdeal,
ordAlongIdeal_congr_stalk), and the colon is stalkwise (stalkIdeal_nonmonomialPart).
The fine parts for stepFamily and for F.comap π agree stalkwise #
The pulled-back boundary along the step's blow-down.
Equations
- Hironaka.Manifold.BMOmod.stepComapFamily T hfin hne = Manifold.HypersurfaceFamily.comap (⇑(Hironaka.Manifold.BMOmod.stepπ T hfin hne)) T.F
Instances For
The member of F.comap π a member of stepFamily lies over: inl k ↦ k, inr ↦ top.
Equations
- Hironaka.Manifold.BMOmod.stepMemberOf T hfin hne i = Sum.elim id (fun (x : PUnit.{?u.2 + 1}) => Hironaka.Manifold.BMOmod.topMember T hfin hne) (ofLex i)
Instances For
A point of a member of stepFamily lies on the member of F.comap π it lies over
(mem_hyp_of_mem_strictTransform, step2bCenter_subset).
Two members of stepFamily through a common point over the same member of F coincide: the
strict transform of the top member and the new member π⁻¹(Z) never meet
(notMem_step2bCenter_of_mem_stepFamily_top).
Every point of a member of F.comap π lies on a member of stepFamily over it: the other
members' strict transforms are their preimages (stepFamily_hyp_inl_of_ne); over the top member,
the new member π⁻¹(Z) over Z, the strict transform off Z
(stepFamily_hyp_inl_inter_compl).
At a point over the centre, the ideal sheaf of the new member π⁻¹(Z) and the ideal sheaf of
the pulled-back top member π⁻¹(E^j) have the same stalk: Z is open in E^j
(exists_isOpen_inter_subset_positiveLocus), so the two closed hypersurfaces agree near the point
(stalkIdeal_idealSheaf_congr_nhds).
The ideal sheaves of the members of stepFamily and of F.comap π have the same stalks at a
common point: inl k, k ≠ top, by idealSheaf_stepFamily_inl_of_ne; inl top at a point of the
strict transform by stalkIdeal_idealSheaf_stepFamily_inl_top; inr by
stalkIdeal_idealSheaf_stepFamily_inr_eq; the ideal sheaf of the pulled-back member is the
pull-back (comap_idealSheaf_of_isLocalDiffeomorph).
The stalks of the fine monomial parts with respect to stepFamily and to F.comap π agree: the
components through x' correspond member by member (Finset.prod_bij, as in monomialPart_comap;
stepMemberOf is injective on the members through x', stepMemberOf_injective_of_mem, and onto,
exists_mem_stepFamily_of_mem_comap); the factors agree by stalkIdeal_idealSheaf_stepFamily_eq
through componentIdeal_stalkIdeal_eq, the exponents by componentExponent_eq_toNat_ordAlongIdeal
at x' and ordAlongIdeal_congr_stalk_left.
At a point over the centre, the pulled-back ideal is the ideal after the step times the ideal of
the new member (the transform (60.1) of [Kol07, Definition 60] at the mark 1):
stalkIdeal_stepIdeal is the colon by the principal ideal (u) of π⁻¹(Z)
(stalkIdeal_idealSheaf_eq_span_singleton, transported by the germ map), (π^*𝓘)_{x'} ⊆ (u) from
𝓘 ⊆ 𝓘_Z along Z (one_le_ordAlong_step2bCenter), and Ideal.span_singleton_mul_colon_of_le
recovers the product; the component of the pulled-back top member through x' has the stalk of
π⁻¹(Z) there (stalkIdeal_idealSheaf_stepFamily_inr_eq, componentIdeal_stalkIdeal_eq).
The second exit property for one step: the pointwise bound on the nonmonomial part survives
a step of the monomial phase. The blow-down π is a local analytic isomorphism
(isLocalDiffeomorph_blowUpπ_of_codimOne), N(π^*𝓘) = π^* N(𝓘) (nonmonomialPart_comap), the
ideal after the step is the division of π^*𝓘 by one power of the ideal of the new member
(stalkIdeal_stepIdeal, stalkIdeal_comap_stepπ_eq_mul), which N ignores
(nonmonomialPart_componentIdeal_pow_mul, the uniqueness of the decomposition of Kol07,
Definition–Lemma 110), with the boundary re-indexed by stepFamily pointwise
(stalkIdeal_nonmonomialPart_stepFamily_eq). The transform identity of the rounds does not enter
here; it is first needed in the composite with the rounds.
The re-indexing, proved pointwise: the nonmonomial part with respect to the boundary
stepFamily after the step (the components of the centre moved to the new member) equals the
nonmonomial part with respect to the pulled-back boundary F.comap π; at every point the components
through it correspond member by member with the same stalks and exponents, hence the same fine
monomial part and the same colon.
The recursion of the second exit property along the phase: the bound survives the phase at every
fuel (induction with induced_cons, headTriple_stepCenter_eq and nonmonomialOrdLe_stepTriple).
The second exit property along the phase: the bound survives the phase at every fuel
(induction with induced_cons, headTriple_stepCenter_eq and nonmonomialOrdLe_stepTriple).
Under the bound 1 on the nonmonomial part of the restricted triple, the triple induced by the
value of step2bFam on U is in BOClass 1: the mark; the order (M = ⊤ by the first exit
property, N = 𝓘 by nonmonomialTriple_I_eq_of_monomialPart_eq_top, ord N ≤ 1 by the second);
and the finiteness (bmoClass_inducedTriple).
The pointwise bound on the nonmonomial part at the induced triple survives the deletion of empty
blow-ups from the inducing list: the ideals agree through eraseEmptyLast⁻¹
(markedTransformSeq_last_eraseEmpty), the boundary of the induced triple of the cleaned list is
an empty extension of the other's (isEmptyExtension_eraseEmptyIdx_induced), which N ignores
(nonmonomialPart_eq_of_isEmptyExtension), and N pulls back along the diffeomorphism
(nonmonomialPart_comap).
The BOClass form of nonmonomialOrdLe_induced_concat, by recursion on the second list.
The class of the induced triple of a composite #
The class BOClass s of the triple induced by the list alongList of the link over (W, V),
from the class of the triple induced by the appended value (G at the induced triple of the first
list of F, restricted to the reading open): the shrinkAppend is a concatenation of the
pulled-back first list and the pulled-back appended value (induced_pullback,
boClass_classPullbackClosed, boClass_induced_concat_aux), the restricted triple rewritten by
pullback_inclusion_restrictLE.
The class BOClass s of the triple induced by the value composeAlong of the composite over
(W, V) ∋ U, from the class at alongList: the restriction to U (induced_pullback,
boClass_classPullbackClosed, pullback_inclusion_restrictLE) and the deletion of the empty
blow-ups (boClass_induced_eraseEmpty).
At the standard model: the terminal bound of the rounds at the value, and the composite #
The terminal bound of the rounds at the value: the nonmonomial part of the triple induced by
the value of the rounds on U at m = 1, t = 2 has order ≤ 1 everywhere ("until we drop
max ord N(I) to 1", [Wlo09, Theorem 7.4.1]): stepAChainState_bound (the bound at the induced
triple of the chain state) transported along the restriction (induced_pullback,
nonmonomialOrdLe_pullback) and the deletion of empty blow-ups
(nonmonomialOrdLe_induced_eraseEmpty).
The composite of the rounds with the monomial phase: the rounds at m = 1, t = 2, then
the monomial phase at the induced triple, as the composeInduced of the two family functors, with
the class hypotheses of BMOClass 1 (bmoClass_inducedTriple, bmoClass_classPullbackClosed,
bmoClass_classInducedEraseEmptyClosed). This is the modified second step of
[Wlo09, Theorem 7.4.1].
Equations
- One or more equations did not get rendered due to their size.
Instances For
The order clause of the composite at the mark 1.
The triple induced by the value of the composite on U is in BOClass 1 (the hypothesis of
the next step of the modified algorithm): the value is the shrinkAppend of alongList restricted
and cleaned (boClass_induced_composeAlong, boClass_induced_alongList);
boClass_one_induced_step2bFam at the induced triple of the first list of the rounds, whose bound
on the nonmonomial part is nonmonomialOrdLe_induced_stepAFamOn pulled back to the reading open
(nonmonomialOrdLe_pullback).