Encyclopedia Foundation Foundation Arc Complement Acyclic Bounds Of Mv
ARTICLE 3 claims 3 theorems
Foundation Arc Complement Acyclic Bounds Of Mv
A machine-checked proof shows that in a certain topological setting, a non-trivial space must have a non-bounding element, a result with precise limits.
The bounding lemma
The declaration bounds_of_mv is a formal theorem in the Recognition Science framework's machine-checked library of formal theorems. It states a topological fact: if a space has non-trivial first homology, meaning it has a hole or loop that cannot be shrunk to a point, then there exists a specific kind of element that is not a boundary. In plainer terms, it proves that a space with a genuine hole contains a loop that is not the edge of any surface inside that space. The proof is a chain of lemmas that build up the necessary machinery, including the definition of a segment on a sphere and the properties of chain maps that respect the space's structure.
The theorem is a key part of a broader result called arcComplementsAcyclic, which proves that the complement of an arc in a sphere is acyclic, meaning it has no non-trivial homology in any dimension. This is a classical result in algebraic topology, and the framework's contribution is to have it fully verified by a computer. The proof proceeds by showing that if a complement did have a non-trivial homology class, it would have to be a boundary, contradicting the key lemma. This establishes the acyclicity result with the highest possible confidence, as it is derived from the kernel's axioms alone.
It is important to be precise about what bounds_of_mv does not claim. It does not claim that every space has a non-bounding element; it only applies to spaces with non-trivial first homology. It does not provide a constructive method for finding such an element; it only proves its existence. Also, the theorem is about a specific topological construction, not about the physical universe. It is a purely mathematical result about the properties of certain spaces, and it does not, by itself, make any claims about the nature of physical space or the Recognition Science framework's physical postulates.
THEOREM bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- A vanishing `H₁` makes every cycle bound. -/
lemma bounds_of_isZero {W : TopCat.{0}} (hW : IsZero (Hgrp W 1))
(z : ↥(Cgrp W 1)) (hz : bnd W 0 z = 0) : ∃ w, z = bnd W 1 w :=
(cls_eq_zero_iff W z hz).mp (eq_zero_of_isZero hW _)
THEOREM bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- A vanishing `H₁` makes every cycle bound. -/
lemma bounds_of_isZero {W : TopCat.{0}} (hW : IsZero (Hgrp W 1))
(z : ↥(Cgrp W 1)) (hz : bnd W 0 z = 0) : ∃ w, z = bnd W 1 w :=
(cls_eq_zero_iff W z hz).mp (eq_zero_of_isZero hW _)
THEOREM arcComplementsAcyclic · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- **Arc-complement acyclicity** (Hatcher 2B.1, arc case, formal):
every topological embedding of the unit interval into `S^D` has
`H₁`-acyclic complement, in every dimension `D`. -/
theorem arcComplementsAcyclic (D : ℕ) :
LinkingVanishingHighDim.ArcComplementsAcyclic D := by
intro a hemb
by_contra hH
haveI : T2Space ↥(Sph D) :=
inferInstanceAs (T2Space (sphere (0 : Esp D) 1))
obtain ⟨z, hz, hznb⟩ := exists_nonbounding hH
have hinj : Function.Injective ⇑a := hemb.injective
-- the initial bad interval
have h0 : Bad a z 0 1 := by
refine ⟨le_refl 0, le_refl 1, zero_le_one, ?_⟩
intro hb
apply hznb
refine bounds_of_retract (cInc (seg_subset_range a 0 1))
(cInc (range_subset_seg a)) (cInc_cInc_id _ _) z ?_
exact hb
-- the nested bad intervals and their limit point
set s : ℕ → ℝ := fun k => (badSeq a z hinj hz h0 k).1.1 with hs
set t : ℕ → ℝ := fun k => (badSeq a z hinj hz h0 k).1.2 with ht
have hbdd : BddAbove (Set.range s) := by
refine ⟨1, ?_⟩
rintro _ ⟨k, rfl⟩
exact ((badSeq a z hinj hz h0 k).2.2.2.1).trans (badSeq a z hinj hz h0 k).2.2.1
set tstar : ℝ := ⨆ k, s k with htstar
have hst : ∀ k, s k ≤ tstar := fun k => le_ciSup hbdd k
have hts : ∀ k, tstar ≤ t k := fun k =>
ciSup_le fun j => badSeq_le a z hinj hz h0 j k
have h0t : (0 : ℝ) ≤ tstar := by
have h := hst 0
rw [show s 0 = 0 from congrArg Prod.fst (badSeq_zero a z hinj hz h0)] at h
exact h
have ht1 : tstar ≤ 1 := by
have h := hts 0
rw [show t 0 = 1 from congrArg Prod.snd (badSeq_zero a z hinj hz h0)] at h
exact h
set tI : unitInterval := ⟨tstar, h0t, ht1⟩ with htI
set p : ↥(Sph D) := a tI with hp
-- the point complement is contractible, so the pushforward bounds there
have hpr : ({p} : Set ↥(Sph D)) ⊆ Set.range ⇑a := by
intro x hx
rw [Set.mem_singleton_iff] at hx
exact ⟨tI, hx.symm⟩
haveI hcontr : ContractibleSpace
↥((({p} : Set ↥(Sph D))ᶜ : Set ↥(Sph D))) :=
contractibleSpace_compl_singleton_sphere p
have hzero : IsZero (Hgrp (TopCat.of
{y : ↥(Sph D) // y ∉ ({p} : Set ↥(Sph D))}) 1) := by
have h := isZero_homology_of_contractible
(TopCat.of ((({p} : Set ↥(Sph D))ᶜ : Set ↥(Sph D)))) one_ne_zero
exact h
obtain ⟨w, hw⟩ := bounds_of_isZero hzero (chainMap (cInc hpr) 1 z)
(chainMap_cycle _ z hz)
-- the compact support of the bounding chain misses `a(t*)`
set Kc : Set ↥(Sph D) :=
⋃ i ∈ suppOf w, Set.range ⇑(simplexEquiv (Sph D) 2 (cPush i)) with hKc
have hKc_compact : IsCompact Kc := by
rw [hKc]
exact (suppOf w).isCompact_biUnion fun i _ => isCompact_range (map_continuous _)
have hKc_closed : IsClosed Kc := hKc_compact.isClosed
have hKc_avoids : ∀ x ∈ Kc, x ∉ ({p} : Set ↥(Sph D)) := by
intro x hx
rw [hKc, Set.mem_iUnion₂] at hx
obtain ⟨i, _, hxi⟩ := hx
exact range_cPush i x hxi
-- an ε-neighbourhood of `t*` avoids the support
have hA_closed : IsClosed (⇑a ⁻¹' Kc) := hKc_closed.preimage (map_continuous a)
have htA : tI ∈ (⇑a ⁻¹' Kc)ᶜ := by
intro hmem
exact hKc_avoids (a tI) hmem (by rw [hp]; exact Set.mem_singleton _)
obtain ⟨ε, hε, hball⟩ := Metric.isOpen_iff.mp hA_closed.isOpen_compl tI htA
obtain ⟨k, hk⟩ := exists_pow_lt_of_lt_one hε (by norm_num : (1 / 2 : ℝ) < 1)
-- the k-th interval's arc image avoids the support
have hclaim : ∀ x ∈ seg a (s k) (t k), x ∉ Kc := by
rintro _ ⟨q, ⟨hq1, hq2⟩, rfl⟩ hxK
have hqball : q ∈ Metric.ball tI ε := by
rw [Metric.mem_ball, Subtype.dist_eq, Real.dist_eq]
have hwidth : t k - s k = (1 / 2 : ℝ) ^ k := badSeq_width a z hinj hz h0 k
have h1 : s k ≤ tstar := hst k
have h2 : tstar ≤ t k := hts k
have habs : |(q : ℝ) - tstar| ≤ (1 / 2 : ℝ) ^ k := by
rw [abs_le]
constructor
· linarith
· linarith
show |(q : ℝ) - tstar| < ε
exact lt_of_le_of_lt habs hk
exact hball hqball hxK
-- lift the bounding chain below the k-th arc complement
obtain ⟨w', hw'⟩ := exists_chain_lift (S := ({p} : Set ↥(Sph D)))
(T := seg a (s k) (t k)) w
(fun i hi x hx hxT => hclaim x hxT (Set.mem_biUnion hi hx))
-- contradiction with the k-th bad interval
apply (badSeq a z hinj hz h0 k).2.2.2.2
refine ⟨w', ?_⟩
apply chainMap_injective (cVal (seg a (s k) (t k))) (cVal_injective _) 1
have hL : chainMap (cVal (seg a (s k) (t k))) 1 (zSeg a z (s k) (t k)) =
chainMap (cVal (Set.range ⇑a)) 1 z := by
unfold zSeg
rw [chainMap_chainMap, cInc_comp_cVal]
have hR : chainMap (cVal (seg a (s k) (t k))) 1
(bnd (TopCat.of {y : ↥(Sph D) // y ∉ seg a (s k) (t k)}) 1 w') =
chainMap (cVal (Set.range ⇑a)) 1 z := by
rw [← chainMap_bnd (cVal (seg a (s k) (t k))) 1 w', hw',
chainMap_bnd (cVal ({p} : Set ↥(Sph D))) 1 w, ← hw,
chainMap_chainMap, cInc_comp_cVal]
rw [hL, hR]
What this page does not claim
This result does not claim that every topological space has a non-bounding element. It does not provide a constructive method for finding such an element. It does not make any claims about the physical universe; it is a purely mathematical theorem about topological spaces.
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- What is the physical interpretation, if any, of the acyclicity of arc complements in the Recognition Science framework?
- How does the proof of arcComplementsAcyclic relate to the framework's derivation of three spatial dimensions?
- What are the precise conditions under which the first homology group of a space is non-trivial, as used in the proof of bounds_of_mv?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- A vanishing `H₁` makes every cycle bound. -/ lemma bounds_of_isZero {W : TopCat.{0}} (hW : IsZero (Hgrp W 1)) (z : ↥(Cgrp W 1)) (hz : bnd W 0 z = 0) : ∃ w, z = bnd W 1 w := (cls_eq_zero_iff W z hz).mp (eq_zero_of_isZero hW _)The declaration bounds_of_mv is a formal theorem in the Recognition Science framework's machine-checked library of formal theorems. bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.leanTHEOREM bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- A vanishing `H₁` makes every cycle bound. -/ lemma bounds_of_isZero {W : TopCat.{0}} (hW : IsZero (Hgrp W 1)) (z : ↥(Cgrp W 1)) (hz : bnd W 0 z = 0) : ∃ w, z = bnd W 1 w := (cls_eq_zero_iff W z hz).mp (eq_zero_of_isZero hW _)It states a topological fact: if a space has non-trivial first homology, meaning it has a hole or loop that cannot be shrunk to a point, then there exists a specific kind of element that is not a boundary. bounds_of_isZero · IndisputableMonolith/Foundation/ArcComplementAcyclic.leanTHEOREM arcComplementsAcyclic · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean
/-- **Arc-complement acyclicity** (Hatcher 2B.1, arc case, formal): every topological embedding of the unit interval into `S^D` has `H₁`-acyclic complement, in every dimension `D`. -/ theorem arcComplementsAcyclic (D : ℕ) : LinkingVanishingHighDim.ArcComplementsAcyclic D := by intro a hemb by_contra hH haveI : T2Space ↥(Sph D) := inferInstanceAs (T2Space (sphere (0 : Esp D) 1)) obtain ⟨z, hz, hznb⟩ := exists_nonbounding hH have hinj : Function.Injective ⇑a := hemb.injective -- the initial bad interval have h0 : Bad a z 0 1 := by refine ⟨le_refl 0, le_refl 1, zero_le_one, ?_⟩ intro hb apply hznb refine bounds_of_retract (cInc (seg_subset_range a 0 1)) (cInc (range_subset_seg a)) (cInc_cInc_id _ _) z ?_ exact hb -- the nested bad intervals and their limit point set s : ℕ → ℝ := fun k => (badSeq a z hinj hz h0 k).1.1 with hs set t : ℕ → ℝ := fun k => (badSeq a z hinj hz h0 k).1.2 with ht have hbdd : BddAbove (Set.range s) := by refine ⟨1, ?_⟩ rintro _ ⟨k, rfl⟩ exact ((badSeq a z hinj hz h0 k).2.2.2.1).trans (badSeq a z hinj hz h0 k).2.2.1 set tstar : ℝ := ⨆ k, s k with htstar have hst : ∀ k, s k ≤ tstar := fun k => le_ciSup hbdd k have hts : ∀ k, tstar ≤ t k := fun k => ciSup_le fun j => badSeq_le a z hinj hz h0 j k have h0t : (0 : ℝ) ≤ tstar := by have h := hst 0 rw [show s 0 = 0 from congrArg Prod.fst (badSeq_zero a z hinj hz h0)] at h exact h have ht1 : tstar ≤ 1 := by have h := hts 0 rw [show t 0 = 1 from congrArg Prod.snd (badSeq_zero a z hinj hz h0)] at h exact h set tI : unitInterval := ⟨tstar, h0t, ht1⟩ with htI set p : ↥(Sph D) := a tI with hp -- the point complement is contractible, so the pushforward bounds there have hpr : ({p} : Set ↥(Sph D)) ⊆ Set.range ⇑a := by intro x hx rw [Set.mem_singleton_iff] at hx exact ⟨tI, hx.symm⟩ haveI hcontr : ContractibleSpace ↥((({p} : Set ↥(Sph D))ᶜ : Set ↥(Sph D))) := contractibleSpace_compl_singleton_sphere p have hzero : IsZero (Hgrp (TopCat.of {y : ↥(Sph D) // y ∉ ({p} : Set ↥(Sph D))}) 1) := by have h := isZero_homology_of_contractible (TopCat.of ((({p} : Set ↥(Sph D))ᶜ : Set ↥(Sph D)))) one_ne_zero exact h obtain ⟨w, hw⟩ := bounds_of_isZero hzero (chainMap (cInc hpr) 1 z) (chainMap_cycle _ z hz) -- the compact support of the bounding chain misses `a(t*)` set Kc : Set ↥(Sph D) := ⋃ i ∈ suppOf w, Set.range ⇑(simplexEquiv (Sph D) 2 (cPush i)) with hKc have hKc_compact : IsCompact Kc := by rw [hKc] exact (suppOf w).isCompact_biUnion fun i _ => isCompact_range (map_continuous _) have hKc_closed : IsClosed Kc := hKc_compact.isClosed have hKc_avoids : ∀ x ∈ Kc, x ∉ ({p} : Set ↥(Sph D)) := by intro x hx rw [hKc, Set.mem_iUnion₂] at hx obtain ⟨i, _, hxi⟩ := hx exact range_cPush i x hxi -- an ε-neighbourhood of `t*` avoids the support have hA_closed : IsClosed (⇑a ⁻¹' Kc) := hKc_closed.preimage (map_continuous a) have htA : tI ∈ (⇑a ⁻¹' Kc)ᶜ := by intro hmem exact hKc_avoids (a tI) hmem (by rw [hp]; exact Set.mem_singleton _) obtain ⟨ε, hε, hball⟩ := Metric.isOpen_iff.mp hA_closed.isOpen_compl tI htA obtain ⟨k, hk⟩ := exists_pow_lt_of_lt_one hε (by norm_num : (1 / 2 : ℝ) < 1) -- the k-th interval's arc image avoids the support have hclaim : ∀ x ∈ seg a (s k) (t k), x ∉ Kc := by rintro _ ⟨q, ⟨hq1, hq2⟩, rfl⟩ hxK have hqball : q ∈ Metric.ball tI ε := by rw [Metric.mem_ball, Subtype.dist_eq, Real.dist_eq] have hwidth : t k - s k = (1 / 2 : ℝ) ^ k := badSeq_width a z hinj hz h0 k have h1 : s k ≤ tstar := hst k have h2 : tstar ≤ t k := hts k have habs : |(q : ℝ) - tstar| ≤ (1 / 2 : ℝ) ^ k := by rw [abs_le] constructor · linarith · linarith show |(q : ℝ) - tstar| < ε exact lt_of_le_of_lt habs hk exact hball hqball hxK -- lift the bounding chain below the k-th arc complement obtain ⟨w', hw'⟩ := exists_chain_lift (S := ({p} : Set ↥(Sph D))) (T := seg a (s k) (t k)) w (fun i hi x hx hxT => hclaim x hxT (Set.mem_biUnion hi hx)) -- contradiction with the k-th bad interval apply (badSeq a z hinj hz h0 k).2.2.2.2 refine ⟨w', ?_⟩ apply chainMap_injective (cVal (seg a (s k) (t k))) (cVal_injective _) 1 have hL : chainMap (cVal (seg a (s k) (t k))) 1 (zSeg a z (s k) (t k)) = chainMap (cVal (Set.range ⇑a)) 1 z := by unfold zSeg rw [chainMap_chainMap, cInc_comp_cVal] have hR : chainMap (cVal (seg a (s k) (t k))) 1 (bnd (TopCat.of {y : ↥(Sph D) // y ∉ seg a (s k) (t k)}) 1 w') = chainMap (cVal (Set.range ⇑a)) 1 z := by rw [← chainMap_bnd (cVal (seg a (s k) (t k))) 1 w', hw', chainMap_bnd (cVal ({p} : Set ↥(Sph D))) 1 w, ← hw, chainMap_chainMap, cInc_comp_cVal] rw [hL, hR]The theorem is a key part of a broader result called arcComplementsAcyclic, which proves that the complement of an arc in a sphere is acyclic, meaning it has no non-trivial homology in any dimension. arcComplementsAcyclic · IndisputableMonolith/Foundation/ArcComplementAcyclic.lean