Lean source · namespace BFPP
TerminalSupremum.lean
BFPP/TerminalSupremum.lean · 94 lines
Supplementary formalization of material removed from the current manuscript’s appendix.
1import BFPP.PointwisePrefixes23/-! # An infinite initial ordinal with a discontinuous terminal pointwise supremum -/45namespace BFPP67set_option autoImplicit false8open Set Order Cardinal unitInterval910universe u11variable {K : Type u} [TopologicalSpace K] [CompactSpace K] [T2Space K]1213/-- The appendix construction only needs an open set which is not closed.14The codomain `I` is the actual closed real interval `[0,1]`. -/15theorem exists_terminal_pointwise_supremum (U : Set K) (hU : IsOpen U) (hclosed : ¬ IsClosed U) :16 ∃ η : Cardinal.{u}, ℵ₀ ≤ η ∧ ∃ hη : IsSuccLimit η.ord,17 ∃ (s : OrdinalIndex η.ord → C(K, I)) (sstar : K → I),18 Monotone (fun i t => s i t) ∧ s ⟨0, hη.pos⟩ = 0 ∧19 (∀ i : OrdinalIndex η.ord, IsSuccLimit i.val → ∀ t,20 s i t = ⨆ j : Iio i, s j.val t) ∧21 (∀ t, sstar t = ⨆ i, s i t) ∧ ¬ Continuous sstar := by22 classical23 obtain ⟨S, hS, hinf, hmin⟩ := exists_minimal_discontinuous_family U hU hclosed24 let η : Cardinal.{u} := #S25 have hη : IsSuccLimit η.ord := Cardinal.isSuccLimit_ord hinf26 letI : Fact (IsSuccLimit η.ord) := ⟨hη⟩27 let e : η.ord.ToType ≃ S := (Cardinal.eq.mp (by simp [η])).some28 let eo : OrdinalIndex η.ord ≃o η.ord.ToType := Ordinal.ToType.mk29 let g : η.ord.ToType → C(K, I) := fun i => (e i).val30 let go : OrdinalIndex η.ord → C(K, I) := g ∘ eo31 have hcont : ∀ i : η.ord.ToType, Continuous (pointwisePrefix g i) := by32 intro i33 rw [pointwisePrefix_image]34 apply hmin35 have hi : #(Iio i) < η := by36 simpa only [Cardinal.mk_ord_toType] using37 (Cardinal.mk_Iio_lt i (by simp))38 exact Cardinal.mk_image_le.trans_lt hi39 let s : OrdinalIndex η.ord → C(K, I) := fun i => ⟨pointwisePrefix g (eo i), hcont (eo i)⟩40 have hs : ∀ i, (s i : K → I) = pointwisePrefix go i := by41 intro i42 exact (pointwisePrefix_reindex eo g i).symm43 have htotal : ∀ t, (⨆ i, go i t) = pointwiseSup S t := by44 intro t45 apply le_antisymm46 · refine iSup_le fun i => ?_47 exact le_iSup_of_le (go i) (le_iSup_of_le (e (eo i)).property le_rfl)48 · refine iSup_le fun f => iSup_le fun hf => ?_49 obtain ⟨j, hj⟩ := e.surjective ⟨f, hf⟩50 obtain ⟨i, hi⟩ := eo.surjective j51 exact le_iSup_of_le i (by simp [go, g, Function.comp_def, hi, hj])52 refine ⟨η, hinf, hη, s, pointwiseSup S, ?_, ?_, ?_, ?_, hS⟩53 · intro i j hij t54 change s i t ≤ s j t55 rw [show s i t = pointwisePrefix go i t from congrFun (hs i) t,56 show s j t = pointwisePrefix go j t from congrFun (hs j) t]57 exact pointwisePrefix_mono go hij t58 · apply ContinuousMap.ext59 intro t60 have hz := congrFun (pointwisePrefix_bot go) t61 exact (congrFun (hs ⟨0, hη.pos⟩) t).trans hz62 · intro i hi t63 have hbetween : ∀ j : OrdinalIndex η.ord, j < i → ∃ k, j < k ∧ k < i := by64 intro j hj65 have hji : j.val < i.val := hj66 have hsucc : succ j.val < i.val := hi.succ_lt hji67 exact ⟨⟨succ j.val, hsucc.trans i.property⟩, Order.lt_succ j.val, hsucc⟩68 calc69 s i t = pointwisePrefix go i t := congrFun (hs i) t70 _ = ⨆ j : Iio i, pointwisePrefix go j.val t := pointwisePrefix_limit go i hbetween t71 _ = ⨆ j : Iio i, s j.val t := by72 apply iSup_congr73 intro j74 exact (congrFun (hs j.val) t).symm75 · intro t76 calc77 pointwiseSup S t = ⨆ i, go i t := (htotal t).symm78 _ = ⨆ i, pointwisePrefix go i t := (pointwisePrefix_terminal go t).symm79 _ = ⨆ i, s i t := by80 apply iSup_congr81 intro i82 exact (congrFun (hs i) t).symm8384theorem exists_terminal_pointwise_supremum_of_not_ED (hK : ¬ ExtremallyDisconnected K) :85 ∃ η : Cardinal.{u}, ℵ₀ ≤ η ∧ ∃ hη : IsSuccLimit η.ord,86 ∃ (s : OrdinalIndex η.ord → C(K, I)) (sstar : K → I),87 Monotone (fun i t => s i t) ∧ s ⟨0, hη.pos⟩ = 0 ∧88 (∀ i : OrdinalIndex η.ord, IsSuccLimit i.val → ∀ t,89 s i t = ⨆ j : Iio i, s j.val t) ∧90 (∀ t, sstar t = ⨆ i, s i t) ∧ ¬ Continuous sstar := by91 obtain ⟨U, hU, hc⟩ := exists_open_not_closed_of_not_ED hK92 exact exists_terminal_pointwise_supremum U hU hc9394end BFPPSHA-256
7629643edce36fa98cf3b9281f42568ec075655e6e001638063a6a060c1a618a