Documentation

Hironaka.Resolution.Analytic.Wlo09.Transport

Transport of the rounds along a local analytic isomorphism #

The rounds of the resolution family (resolveFrom, Hironaka/Resolution/Analytic/Wlo09/Rounds.lean) on (Y, curY) along a chain ΩY, read through ιY, and the rounds on (X, cur) along Ω, read through ι, agree up to empty blow-ups when curY is the pull-back of cur along a local analytic isomorphism g : Y → X carrying each ΩY k into Ω k, and the two reading manifolds are identified by a local analytic isomorphism e over g (eraseEmpty_resolveFrom_congr). This is the behaviour of a blow-up sequence functor under smooth morphisms [Kol07, 34.1], the value on a pull-back being the pulled-back value with the empty blow-ups deleted; in Włodarczyk's form, the restriction of the sequence over a larger open determines the sequence over a smaller one [Wlo09, Theorem 2.0.3 (4)]. Its special cases carry the canonicity proof of Hironaka/Resolution/Analytic/Wlo09/Canonicity.lean: g = id with ΩY k ≤ Ω k shrinks the chain, g an open inclusion restricts the outer open.

Per round, the field commutesWithLocalIsos of BOanFam, applied to the corestriction g|_{ΩY d} : ΩY d → g(ΩY d), surjective onto its open relatively compact image (the first clause of [Kol07, 34.1]), and the field compat along g(ΩY d) ≤ Ω d make the round on Y the erased pull-back of the round on X along g|. So the derived manifolds are identified only through the common erased list (eraseEmptyTransport: eraseEmptyLast on both sides and the cast stageOfEq), the derived ideals correspond (markedTransformSeq_last_eraseEmptyTransport, markedTransformSeq_last_pullbackLiftLast), and the derived boundary on Y is an empty subfamily of the transported derived boundary on X (exists_orderEmbedding_eraseEmptyTransport, from boundaryCorr_eraseEmpty), whose empty members resolveFrom_indiff (Hironaka/Resolution/Analytic/Wlo09/Indiff.lean) removes before the induction hypothesis applies to the exact pull-back (curX').pullback g'. The reading maps on the derived manifolds are identified by uniqueness of maps over the blow-down (eq_of_stageMap_last_eq), and the two concatenations are compared by eraseEmpty_concat_congr. The induction unfolds resolveFrom at the successor case only.

The identification of the last stages of two lists with the same erasure #

noncomputable def AnalyticManifold.BlowUpSequence.eraseEmptyTransport {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {M : AnalyticManifold 𝕜 E} (A B : BlowUpSequence ψ₀ M) (h : A.eraseEmpty = B.eraseEmpty) :

Two lists with the same deletion of empty blow-ups have isomorphic last stages ([Kol07, 34.1]): through the common erased list, along eraseEmptyLast on both sides and the cast stageOfEq of the equality of erasures.

Equations
Instances For
    theorem AnalyticManifold.BlowUpSequence.eraseEmptyTransport_apply {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {M : AnalyticManifold 𝕜 E} (A B : BlowUpSequence ψ₀ M) (h : A.eraseEmpty = B.eraseEmpty) (p : (A.stage (Fin.last A.length)).carrier) :

    The identification lies over the identity of the base: the blow-downs agree.

    The inverse image along a diffeomorphism then along its inverse is the identity (comap_symm_comap the other way round).

    theorem AnalyticManifold.BlowUpSequence.eq_of_stageMap_last_eq {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {M : AnalyticManifold 𝕜 E} (L : BlowUpSequence ψ₀ M) {Z : AnalyticManifold 𝕜 E} (f : AnalyticMap Z (L.stage (Fin.last L.length))) (hf : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑f) (g : AnalyticMap Z (L.stage (Fin.last L.length))) (h : ∀ (z : Z.carrier), (L.toSuccession.stageMap (Fin.last L.toSuccession.length)) (f z) = (L.toSuccession.stageMap (Fin.last L.toSuccession.length)) (g z)) :
    f = g

    Uniqueness of maps over the blow-down (eq_of_stageMap_last_comp_eq; not in the sources): a local analytic isomorphism and an analytic map into the last stage of a list that agree after the blow-down agree, since the blow-down is an isomorphism over a dense open.

    The marked transform at the last stage is transported along eraseEmptyTransport ([Kol07, 34.1]): both lists are the common erased list up to empty blow-ups, which transform (I, m) by pull-back (markedTransformSeq_last_eraseEmpty).

    For a list A without empty centres and a list B with the same erasure, the boundary family from F at the last stage of A embeds order-preservingly into that of B transported along eraseEmptyTransport, the members matched and the members of B's family off the range empty (boundaryCorr_eraseEmpty_self); read on any family equal to B's. The empty blow-ups add empty members to the boundary ([Kol07, 32 and 34.1]).

    Deleting the empty blow-ups of two concatenations whose first pieces have the same erasure (eraseEmptyTransport identifies their last stages) and whose second pieces agree up to empty blow-ups after that identification gives equal lists (eraseEmpty_concat, concat_pullback_stageOfEq).

    Membership in the lifted chain: the point lies over the open of X.

    theorem Hironaka.Manifold.eraseEmpty_resolveFrom_congr {𝕜 : Type} [RCLike 𝕜] {n : ℕ} (bo : (d : ℕ) → BOanFam 𝕜 n d) (d : ℕ) {X Y : AnalyticManifold 𝕜 (Fin n → 𝕜)} (g : AnalyticMap Y X) (hg : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) ⊤ ⇑g) (cur : Manifold.AnalyticTriple (ContinuousLinearEquiv.refl 𝕜 (Fin n → 𝕜)) X) (curY : Manifold.AnalyticTriple (ContinuousLinearEquiv.refl 𝕜 (Fin n → 𝕜)) Y) (hpb : curY.IsPullbackOf cur g) (hord : ∀ (x : ↑↧X.carrier), Manifold.IdealSheaf.ord cur.I x ≤ ↑d) (hfin : Finite { j : cur.F.ι // cur.F.hyp j ≠ ∅ }) (hordY : ∀ (y : ↑↧Y.carrier), Manifold.IdealSheaf.ord curY.I y ≤ ↑d) (hfinY : Finite { j : curY.F.ι // curY.F.hyp j ≠ ∅ }) (Ω : ℕ → TopologicalSpace.Opens X.carrier) (hΩ : ∀ k < d, IsCompact (closure ↑(Ω k))) (hΩsub : ∀ (k : ℕ), k + 1 < d → closure ↑(Ω k) ⊆ ↑(Ω (k + 1))) (ΩY : ℕ → TopologicalSpace.Opens Y.carrier) (hΩY : ∀ k < d, IsCompact (closure ↑(ΩY k))) (hΩYsub : ∀ (k : ℕ), k + 1 < d → closure ↑(ΩY k) ⊆ ↑(ΩY (k + 1))) (hΩg : ∀ k < d, ⇑g '' ↑(ΩY k) ⊆ ↑(Ω k)) {N NY : AnalyticManifold 𝕜 (Fin n → 𝕜)} (ι : AnalyticMap N X) (hι : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) ⊤ ⇑ι) (hrange : Set.range ⇑ι ⊆ ↑(Ω 0)) (ιY : AnalyticMap NY Y) (hιY : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) ⊤ ⇑ιY) (hrangeY : Set.range ⇑ιY ⊆ ↑(ΩY 0)) (e : AnalyticMap NY N) (he : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) (modelWithCornersSelf 𝕜 (Fin n → 𝕜)) ⊤ ⇑e) (hcomm : ContMDiffMap.comp ι e = ContMDiffMap.comp g ιY) :
    (resolveFrom bo d curY hordY hfinY ΩY hΩY hΩYsub ιY hιY hrangeY).eraseEmpty = ((resolveFrom bo d cur hord hfin Ω hΩ hΩsub ι hι hrange).pullback e he).eraseEmpty

    Transport of the rounds along a local analytic isomorphism ([Kol07, 34.1]; [Wlo09, Theorem 2.0.3 (4)]). The rounds on (Y, curY) along a chain ΩY, read through ιY, and the rounds on (X, cur) along Ω, read through ι, agree up to empty blow-ups when curY is the pull-back of cur along a local analytic isomorphism g : Y → X carrying each ΩY k into Ω k, and the two reading manifolds are identified by a local analytic isomorphism e over g (ι ∘ e = g ∘ ιY). Per round: the field commutesWithLocalIsos along g|_{ΩY d} and compat along g(ΩY d) ≤ Ω d (eraseEmpty_pullback_eraseEmpty, pullback_comp), then eraseEmpty_concat and the induction hypothesis at the derived triples, identified through markedTransformSeq_last_pullbackLiftLast and markedTransformSeq_last_eraseEmptyTransport (the ideal), exists_orderEmbedding_eraseEmptyTransport (the boundary), resolveFrom_indiff and resolveFrom_congr_triple, with the lifts of g and e.