Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Every fully open pair reaches a true sink

Proved
Erdos195.open_pair_reaches_sink

by Ethan Cheung Wang · Oct 23, 2026 · Mathlib 0df444a (Lean v4.33.1)

arithmetic-progressionscombinatoricserdos-problems

A tree witness θ:N×Z→{0,1}\theta:\mathbb N\times\mathbb Z\to\{0,1\}θ:N×Z→{0,1} defines a strict total order ≺θ\prec_\theta≺θ​ on Z\mathbb ZZ (milestone framework). A finite word TTT of integers is θ\thetaθ-safe if the sequence "letters of TTT in order, then all remaining integers in ≺θ\prec_\theta≺θ​-order" has no monotone 4-term arithmetic progression; positions are first occurrences. For an in-order pair (a,b)(a,b)(a,b) of a word (aaa before bbb), call t=2b−at=2b-at=2b−a its third term and w=3b−2aw=3b-2aw=3b−2a its fourth term; the pair is fully open in TTT if neither lies in TTT. An open path in TTT is a family of in-order pairs (ai,bi)(a_i,b_i)(ai​,bi​), 0≤i<m0\le i<m0≤i<m, of letters of TTT with 3bi−2ai=2bi+1−ai+13b_i-2a_i=2b_{i+1}-a_{i+1}3bi​−2ai​=2bi+1​−ai+1​ for 0≤i<m−10\le i<m-10≤i<m−1 and no third term 2bi−ai2b_i-a_i2bi​−ai​ in TTT.

Theorem. Let TTT be θ\thetaθ-safe for some tree witness and let (a0,b0)(a_0,b_0)(a0​,b0​) be a fully open in-order pair of TTT. Then there is an open path (ai,bi)0≤i<m(a_i,b_i)_{0\le i<m}(ai​,bi​)0≤i<m​ with m≥1m\ge1m≥1 starting at (a0,b0)(a_0,b_0)(a0​,b0​) whose sink fourth term w=3bm−1−2am−1w=3b_{m-1}-2a_{m-1}w=3bm−1​−2am−1​ is not in TTT (so every pair of the path is fully open), such that www is a true sink: whenever w=2y−xw=2y-xw=2y−x for an in-order pair (x,y)(x,y)(x,y) of TTT, the fourth term 3y−2x3y-2x3y−2x lies in TTT. Moreover m+1≤2rm+1\le 2^rm+1≤2r, where rrr is the number of distinct levels ν2(bi−ai)\nu_2(b_i-a_i)ν2​(bi​−ai​) on the path.

Following "fourth term = third term of the next fully open pair" from any fully open pair always stops at a true sink. Its fourth term then satisfies the first (C1) condition of the tree append criterion (milestone #59). By milestone #153 it never conflicts with its own path. Proof: chains that never stop would repeat a pair (pigeonhole over T×TT\times TT×T), which gives an open cycle, impossible by milestone #147. The length bound is milestone #151.

Preamble
import Mathlib
import Definitions.Def_Erdos195_tree
Formal statement
namespace Erdos195

theorem open_pair_reaches_sink (T : List ℤ) (hS : ∃ θ : ℕ → ℤ → Bool, Safe (treeLt θ) T)
    (a₀ b₀ : ℤ) (ha₀ : a₀ ∈ T) (hb₀ : b₀ ∈ T) (hi₀ : T.idxOf a₀ < T.idxOf b₀)
    (ht₀ : 2 * b₀ - a₀ ∉ T) (hw₀ : 3 * b₀ - 2 * a₀ ∉ T) :
    ∃ (m : ℕ) (a b : ℕ → ℤ), 0 < m ∧ a 0 = a₀ ∧ b 0 = b₀ ∧
      (∀ i < m, a i ∈ T) ∧ (∀ i < m, b i ∈ T) ∧
      (∀ i < m, T.idxOf (a i) < T.idxOf (b i)) ∧
      (∀ i, i + 1 < m → 3 * b i - 2 * a i = 2 * b (i + 1) - a (i + 1)) ∧
      (∀ i < m, 2 * b i - a i ∉ T) ∧
      3 * b (m - 1) - 2 * a (m - 1) ∉ T ∧
      (∀ x y : ℤ, x ∈ T → y ∈ T → T.idxOf x < T.idxOf y →
        2 * y - x = 3 * b (m - 1) - 2 * a (m - 1) → 3 * y - 2 * x ∈ T) ∧
      m + 1 ≤ 2 ^ ((Finset.range m).image (fun i => padicValInt 2 (b i - a i))).card := by sorry

end Erdos195
Source
Erdős Problem 195 (https://www.erdosproblems.com/195); tree-witness framework; Lean-verified by Grok Bot for Ethan Cheung (Oct 23 2026)

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me