Documentation

Hironaka.Resolution.Analytic.OrderReduction.Step2LinkTransport

The link of Step 2.2 along a local analytic isomorphism #

ChainTransport.lean transports one link of the chain of Step 2.1 along a local analytic isomorphism h with h(W') ⊆ W: the relation "the sequence over W' with its empty blow-ups deleted is the pull-back of the sequence over W with its empty blow-ups deleted" is preserved by a link. Step 2 appends one more link, the value of the family functor of Step 2.2 at the triple of Step 2.2 over the chain's sequence, read on the lifted range of the last restriction (step22FamOn; over a state of the chain, hfStep22ValueOf of Step2Along.lean). This module is the same transport for that link, an instance of the general transport of a link along a value functor (ValueTransport.lean) for the value functor "the family functor of Step 2.2 at the triple of Step 2.2"; it is what makes the value of Step 2 independent of the chain of opens (Step2Assembly.lean) and commute with local analytic isomorphisms (Step2AssemblyComm.lean), the analytic form of the functoriality clause of Step 2.3 of the proof of Theorem 103 ([Kol07, 104, Step 2.3]; [Kol07, 34.1]).

The hf… declarations are the general forms over data d : HFData ψ₀ s of Step 2 (HFamData.lean); the plain forms are their instances at Lemma 102's data.

theorem Hironaka.Manifold.BO.hfStep22Fam_seqOn_congr_triple {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [FiniteDimensional 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {s : ℕ} (d : HFData ψ₀ s) {X : AnalyticManifold 𝕜 E} {X₁ X₂ : Manifold.AnalyticTriple ψ₀ X} (e : X₁ = X₂) (h₁ : stepHClass s X₁) (h₂ : stepHClass s X₂) (U : TopologicalSpace.Opens X.carrier) (hU : IsCompact (closure ↑U)) :
((hfStep22Functor d.hf).fam X₁ h₁).seqOn U hU = ((hfStep22Functor d.hf).fam X₂ h₂).seqOn U hU

The value of the family functor of Step 2.2 depends only on the triple (a substitution; over data d).

theorem Hironaka.Manifold.BO.step22TripleOf_congr_triple {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {s : ℕ} {X : AnalyticManifold 𝕜 E} {T₁ T₂ : Manifold.AnalyticTriple ψ₀ X} (e : T₁ = T₂) {H : Set X.carrier} (L : AnalyticManifold.BlowUpSequence ψ₀ X) (hL₁ : L.toSuccession.IsOfOrderGe T₁.I s T₁.F.idealSheaf) (hL₂ : L.toSuccession.IsOfOrderGe T₂.I s T₂.F.idealSheaf) (hsnc₁ hsnc₂ : Manifold.HypersurfaceFamily.IsSnc ψ₀ ((exceptionalOf L).append (transformHOf L H))) :
step22TripleOf T₁ L hL₁ hsnc₁ = step22TripleOf T₂ L hL₂ hsnc₂

The triple of Step 2.2 depends only on the triple and the sequence (a substitution).

theorem Hironaka.Manifold.BO.hfStep22Value_rel {𝕜 : Type} [RCLike 𝕜] {E : Type u_1} [NormedAddCommGroup E] [NormedSpace 𝕜 E] [FiniteDimensional 𝕜 E] {n : ℕ} {ψ₀ : E ≃L[𝕜] Fin n → 𝕜} {s : ℕ} (d : HFData ψ₀ s) {M N P Q : AnalyticManifold 𝕜 E} (T₁ : Manifold.AnalyticTriple ψ₀ M) (hT₁ : Manifold.AnalyticTriple.BOClass s T₁) {H : Set M.carrier} (hH : Manifold.IsClosedSubmanifold ψ₀ H 1) (hle : hH.idealSheaf ≤ Manifold.IdealSheaf.iteratedDeriv T₁.I (s - 1)) (hW : AnalyticMap N M) (hhW : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑hW) (hT₂ : Manifold.AnalyticTriple.BOClass s (T₁.pullback hW hhW)) (L₁ : AnalyticManifold.BlowUpSequence ψ₀ M) (hL₁ : L₁.toSuccession.IsOfOrderGe T₁.I s T₁.F.idealSheaf) (ρ : AnalyticMap P M) (hρ : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑ρ) (ρ' : AnalyticMap Q N) (hρ' : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑ρ') (hV : AnalyticMap Q P) (hhV : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑hV) (hsq : ContMDiffMap.comp ρ hV = ContMDiffMap.comp hW ρ') (L₂ : AnalyticManifold.BlowUpSequence ψ₀ N) (hL₂ : L₂.toSuccession.IsOfOrderGe (T₁.pullback hW hhW).I s (T₁.pullback hW hhW).F.idealSheaf) (hrel : L₂.eraseEmpty = (L₁.pullback hW hhW).eraseEmpty) (hO₁ : IsCompact (closure ↑(L₁.liftRange ρ hρ))) (hO₂ : IsCompact (closure ↑(L₂.liftRange ρ' hρ'))) (hρ'c : IsCompact (closure (Set.range ⇑ρ'))) (e₀ : (L₁.pullback ρ hρ).pullback hV hhV = (L₁.pullback hW hhW).pullback ρ' hρ') (hA : (L₂.pullback ρ' hρ').eraseEmpty = ((L₁.pullback hW hhW).pullback ρ' hρ').eraseEmpty) (hκ₂ : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑(ContMDiffMap.comp (L₂.liftCorestrict ρ' hρ') (L₂.pullback ρ' hρ').eraseEmptyLast.symm.toAnalyticMap)) (hκ₁ : IsLocalDiffeomorph (modelWithCornersSelf 𝕜 E) (modelWithCornersSelf 𝕜 E) ⊤ ⇑((ContMDiffMap.comp (L₁.liftCorestrict ρ hρ) ((L₁.pullback ρ hρ).pullbackLiftLast hV hhV)).comp ((AnalyticManifold.BlowUpSequence.stageOfEq e₀).trans (((L₁.pullback hW hhW).pullback ρ' hρ').eraseEmptyLast.trans (AnalyticManifold.BlowUpSequence.stageOfEq ⋯))).symm.toAnalyticMap)) :
((((hfStep22Functor d.hf).fam (step22TripleOf (T₁.pullback hW hhW) L₂ hL₂ ⋯) ⋯).seqOn (L₂.liftRange ρ' hρ') hO₂).pullback (ContMDiffMap.comp (L₂.liftCorestrict ρ' hρ') (L₂.pullback ρ' hρ').eraseEmptyLast.symm.toAnalyticMap) hκ₂).eraseEmpty = ((((hfStep22Functor d.hf).fam (step22TripleOf T₁ L₁ hL₁ ⋯) ⋯).seqOn (L₁.liftRange ρ hρ) hO₁).pullback ((ContMDiffMap.comp (L₁.liftCorestrict ρ hρ) ((L₁.pullback ρ hρ).pullbackLiftLast hV hhV)).comp ((AnalyticManifold.BlowUpSequence.stageOfEq e₀).trans (((L₁.pullback hW hhW).pullback ρ' hρ').eraseEmptyLast.trans (AnalyticManifold.BlowUpSequence.stageOfEq ⋯))).symm.toAnalyticMap) hκ₁).eraseEmpty

The comparison of the two appended values of Step 2.2 (linkValue_rel for the link of Step 2.2; over data d): for sequences L₂ on N and L₁ on M whose cleaned forms agree after pulling L₁ back along hW, the value of the family functor of Step 2.2 at the triple of Step 2.2 over L₂ on the reading open of ρ', and its value at the triple of Step 2.2 over L₁ on the reading open of ρ, both pulled back to the common cleaned last stage of the restricted sequences and with their empty blow-ups deleted, agree. The general valueTransport_rel with the naturality of the value functor: hfStep22Fam_seqOn_eraseEmpty (both are the value at the triple of Step 2.2 over the common cleaned sequence), hfStep22Fam_seqOn_pullback_liftRange (on the L₁ side) and hfStep22Fam_seqOn_congr (the substitution along hrel).