-
Notifications
You must be signed in to change notification settings - Fork 276
Add Erdős Problem 70 (3-uniform partition relation on the continuum) #3784
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
henrykmichalewski
wants to merge
5
commits into
google-deepmind:main
Choose a base branch
from
henrykmichalewski:add-problem-70
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+212
−0
Open
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
1bb18f9
feat(ErdosProblems/70): 3-uniform partition relation on the continuum
henrykmichalewski d407041
docs(lean): add verbatim Erdős #70 statement to module docstring
henrykmichalewski a4abf91
Merge remote-tracking branch 'upstream/main' into add-problem-70
henrykmichalewski bc14a7e
fix(ErdosProblems/70): @[category undergraduate] → @[category textboo…
henrykmichalewski b0a7ad0
fix(ErdosProblems/70): require symmetric coloring; mark headline open…
henrykmichalewski File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,212 @@ | ||
| /- | ||
| Copyright 2026 The Formal Conjectures Authors. | ||
|
|
||
| Licensed under the Apache License, Version 2.0 (the "License"); | ||
| you may not use this file except in compliance with the License. | ||
| You may obtain a copy of the License at | ||
|
|
||
| https://www.apache.org/licenses/LICENSE-2.0 | ||
|
|
||
| Unless required by applicable law or agreed to in writing, software | ||
| distributed under the License is distributed on an "AS IS" BASIS, | ||
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
| See the License for the specific language governing permissions and | ||
| limitations under the License. | ||
| -/ | ||
|
|
||
| import FormalConjectures.Util.ProblemImports | ||
|
|
||
| /-! | ||
| # Erdős Problem 70 | ||
|
|
||
| **Verbatim statement (Erdős #70, status O):** | ||
| > Let $\mathfrak{c}$ be the ordinal of the real numbers, $\beta$ be any countable ordinal, and $2\leq n<\omega$. Is it true that $\mathfrak{c}\to (\beta, n)_2^3$? | ||
|
|
||
| **Source:** https://www.erdosproblems.com/70 | ||
|
|
||
| **Notes:** OPEN | ||
|
|
||
|
|
||
| *Reference:* [erdosproblems.com/70](https://www.erdosproblems.com/70) | ||
|
|
||
| ## Problem Statement | ||
|
|
||
| Let 𝔠 be the cardinality of the continuum (i.e. `2 ^ ℵ₀`), let β be any countable ordinal, | ||
| and let `2 ≤ n < ω`. Is it true that 𝔠 → (β, n)³₂? | ||
|
|
||
| Here the notation 𝔠 → (β, n)³₂ means: for any 2-coloring (red/blue) of all 3-element subsets | ||
| of a well-ordered set of order type 𝔠.ord (the smallest ordinal of cardinality 𝔠), either: | ||
| - there exists a *red-monochromatic* subset of order type β (every 3-element subset is red), or | ||
| - there exists a *blue-monochromatic* subset of cardinality n (every 3-element subset is blue). | ||
|
|
||
| This is the 3-uniform (triple) partition relation, as opposed to the 2-uniform (pair/graph) | ||
| partition relation `𝔠 → (β, n)²₂` studied in Problems 590–592. | ||
|
|
||
| ## Known Results | ||
|
|
||
| - **Erdős–Rado**: 𝔠 → (ω + n, 4)³₂ for any `2 ≤ n < ω`. In particular, the relation | ||
| 𝔠 → (ω + n, 4)³₂ holds for all finite n ≥ 2 (proved; see `erdos_70.variants.erdos_rado`). | ||
|
|
||
| ## Status | ||
|
|
||
| **OPEN**: The general question (arbitrary countable β, finite n ≥ 2) is open. | ||
|
|
||
| ## Definitions | ||
|
|
||
| We introduce `OrdinalCardinalRamsey3 α β c` for the 3-uniform analogue of | ||
| `OrdinalCardinalRamsey α β c`: a 2-coloring of 3-element subsets of the ordinal type α | ||
| yields either a red set of order type β or a blue set of cardinality c. | ||
| -/ | ||
|
|
||
| open Cardinal Ordinal | ||
|
|
||
| namespace Erdos70 | ||
|
|
||
| universe u | ||
|
|
||
| /- ### The 3-uniform partition relation -/ | ||
|
|
||
| /-- | ||
| `OrdinalCardinalRamsey3 α β c` asserts the 3-uniform ordinal Ramsey property `α → (β, c)³₂`. | ||
|
|
||
| It states that for any 2-coloring of all 3-element subsets of (the ordinal type) `α`, | ||
| one of the following must hold: | ||
| * There is a red-monochromatic subset of order type β: every 3-element sub-subset is colored | ||
| red. (Formally: a set `s ⊆ α.ToType` with `typeLT s = β` such that any three distinct | ||
| elements of `s` are colored red.) | ||
| * There is a blue-monochromatic subset of cardinality `c`: a set `s ⊆ α.ToType` with `#s = c` | ||
| such that every three distinct elements of `s` are colored blue. | ||
|
|
||
| The coloring is given as a predicate `isRed : α.ToType → α.ToType → α.ToType → Prop` on | ||
| ordered triples of distinct elements; to faithfully encode a coloring of *unordered* | ||
| 3-element subsets we additionally require `isRed` to be invariant under permutation of | ||
| its three (distinct) arguments. | ||
| -/ | ||
| def OrdinalCardinalRamsey3 (α β : Ordinal.{u}) (c : Cardinal.{u}) : Prop := | ||
| -- For any partition of 3-element subsets into red and blue: | ||
| ∀ (isRed : α.ToType → α.ToType → α.ToType → Prop), | ||
| -- The colouring is well-defined on *unordered* triples of distinct elements: | ||
| (∀ x y z, x ≠ y → y ≠ z → x ≠ z → | ||
| (isRed x y z ↔ isRed y x z) ∧ (isRed x y z ↔ isRed x z y)) → | ||
| -- either there is a red-monochromatic subset of order type β | ||
| (∃ s : Set α.ToType, typeLT s = β ∧ s.Triplewise isRed) ∨ | ||
| -- or there is a blue-monochromatic subset of cardinality c | ||
| (∃ s : Set α.ToType, #s = c ∧ s.Triplewise (fun x y z ↦ ¬ isRed x y z)) | ||
|
|
||
| /-- | ||
| The ordinal of the continuum: the smallest ordinal whose cardinality equals the continuum `𝔠`. | ||
| This is `Cardinal.continuum.ord` in Mathlib notation. | ||
|
|
||
| Erdős writes "𝔠" for the *ordinal type* of the reals; formally (under AC) this is any ordinal | ||
| whose underlying set has cardinality `2 ^ ℵ₀`. The canonical choice is `𝔠.ord`. | ||
| -/ | ||
| noncomputable abbrev continuumOrd : Ordinal.{0} := Cardinal.continuum.ord | ||
|
|
||
| /- ### The main open problem -/ | ||
|
|
||
| /-- | ||
| **Erdős Problem 70** (Open): Let 𝔠 be the cardinality of the continuum, let β be a countable | ||
| ordinal, and let `2 ≤ n < ω`. Is it true that 𝔠 → (β, n)³₂? | ||
|
|
||
| Formally: for any countable ordinal β and any natural number n ≥ 2, does | ||
| `OrdinalCardinalRamsey3 𝔠.ord β n` hold? | ||
|
|
||
| Here: | ||
| - `𝔠.ord = Cardinal.continuum.ord` is the least ordinal of cardinality the continuum. | ||
| - `β` ranges over countable ordinals (i.e. `β.card ≤ ℵ₀`). | ||
| - `n : ℕ` satisfies `2 ≤ n`. | ||
| - `OrdinalCardinalRamsey3 α β c` is the 3-uniform partition relation `α → (β, c)³₂`. | ||
| -/ | ||
| @[category research open, AMS 3] | ||
| theorem erdos_70 : | ||
| answer(sorry) ↔ | ||
| ∀ᵉ (β : Ordinal.{0}) (n : ℕ) (_ : β.card ≤ ℵ₀) (_ : 2 ≤ n), | ||
| OrdinalCardinalRamsey3 continuumOrd β n := by | ||
| sorry | ||
|
|
||
| /- ### Variants -/ | ||
|
|
||
| namespace erdos_70.variants | ||
|
|
||
| /-- | ||
| **Erdős–Rado partial result**: 𝔠 → (ω + n, 4)³₂ for any `2 ≤ n < ω`. | ||
|
|
||
| Erdős and Rado proved that any 2-coloring of 3-element subsets of a set of cardinality 𝔠 | ||
| contains either a red-monochromatic subset of order type ω + n (for any fixed finite n ≥ 2), | ||
| or a blue-monochromatic set of cardinality 4. | ||
|
|
||
| This gives a positive partial answer to Problem 70 with β = ω + n and the blue side fixed at 4. | ||
|
|
||
| **Status**: TRUE (Erdős–Rado). | ||
| -/ | ||
| @[category research solved, AMS 3] | ||
| theorem erdos_rado (n : ℕ) (hn : 2 ≤ n) : | ||
| OrdinalCardinalRamsey3 continuumOrd (ω + n) 4 := by | ||
| sorry | ||
|
|
||
| /-- | ||
| **Special case**: 𝔠 → (ω, 3)³₂. | ||
|
|
||
| The simplest non-trivial instance of Erdős Problem 70: β = ω (the first infinite countable | ||
| ordinal) and n = 3. Does every 2-coloring of 3-element subsets of the continuum contain | ||
| either a red-monochromatic set of order type ω (an infinite red-monochromatic subset) or a | ||
| blue-monochromatic set of 3 elements (a blue triple)? | ||
|
|
||
| **Status**: OPEN (follows from the main conjecture with β = ω, n = 3). | ||
| -/ | ||
| @[category research open, AMS 3] | ||
| theorem omega_three : | ||
| answer(True) ↔ OrdinalCardinalRamsey3 continuumOrd ω 3 := by | ||
| sorry | ||
|
|
||
| /-- | ||
| **The relation at ω₁**: 𝔠 → (ω₁, n)³₂ for finite n ≥ 2, where ω₁ = ℵ₁ is the first | ||
| uncountable ordinal. | ||
|
|
||
| Note that ω₁ is *not* a countable ordinal, so this is not directly an instance of the | ||
| main Erdős problem (which asks for *countable* β). However, it is a closely related question. | ||
| Under the Continuum Hypothesis (CH), ω₁ = 𝔠.ord, making this a self-referential question | ||
| about 𝔠.ord → (𝔠.ord, n)³₂. | ||
|
|
||
| **Status**: OPEN. | ||
| -/ | ||
| @[category research open, AMS 3] | ||
| theorem omega_one : | ||
| answer(True) ↔ | ||
| ∀ᵉ (n : ℕ) (_ : 2 ≤ n), | ||
| OrdinalCardinalRamsey3 continuumOrd (Cardinal.aleph 1).ord n := by | ||
| sorry | ||
|
|
||
| /-- | ||
| **Monotonicity of `OrdinalCardinalRamsey3`** (proved): | ||
| If `OrdinalCardinalRamsey3 α β c` holds and `β' ≤ β`, `c' ≤ c`, then | ||
| `OrdinalCardinalRamsey3 α β' c'` also holds. | ||
|
|
||
| This allows us to deduce weaker partition results from stronger ones. | ||
| -/ | ||
| @[category test, AMS 3] | ||
| theorem ordinalCardinalRamsey3_mono {α β β' : Ordinal.{u}} {c c' : Cardinal.{u}} | ||
| (h : OrdinalCardinalRamsey3 α β c) (hβ : β' ≤ β) (hc : c' ≤ c) : | ||
| OrdinalCardinalRamsey3 α β' c' := by | ||
| intro isRed hSym | ||
| obtain (⟨s, hs_type, hs_clique⟩ | ⟨s, hs_card, hs_clique⟩) := h isRed hSym | ||
| · -- Red case: s has type β; find a sub-set of type β' ≤ β | ||
| rw [← Ordinal.type_toType β'] at hβ | ||
| obtain ⟨g⟩ := Ordinal.type_le_iff'.mp (hs_type ▸ hβ) | ||
| let t : Set α.ToType := Set.range (Subtype.val ∘ g) | ||
| refine Or.inl ⟨t, ?_, hs_clique.mono (by rintro x ⟨a, rfl⟩; exact (g a).2)⟩ | ||
| -- Show typeLT t = β' | ||
| let emb : (· < · : β'.ToType → β'.ToType → Prop) ↪r (· < · : ↑t → ↑t → Prop) := | ||
| { toFun := fun a => ⟨(g a).val, a, rfl⟩ | ||
| inj' := fun a b heq => g.injective (Subtype.ext (congr_arg (fun x : ↑t => x.val) heq)) | ||
| map_rel_iff' := g.map_rel_iff } | ||
| have hsurj : Function.Surjective emb := fun ⟨_, hy⟩ => ⟨hy.choose, Subtype.ext hy.choose_spec⟩ | ||
| exact (Ordinal.type_eq.mpr ⟨RelIso.ofSurjective emb hsurj |>.symm⟩).trans | ||
| (Ordinal.type_toType β') | ||
| · -- Blue case: s has cardinality c; find a sub-set of cardinality c' ≤ c | ||
| obtain ⟨t, ht_sub, ht_card⟩ := (Cardinal.le_mk_iff_exists_subset).mp (hs_card ▸ hc) | ||
| exact Or.inr ⟨t, ht_card, hs_clique.mono ht_sub⟩ | ||
|
|
||
| end erdos_70.variants | ||
|
|
||
| end Erdos70 | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be a coloring of unordered 3-element subsets rather than an arbitrary predicate on ordered triples? As written,
isRed x y zneed not be symmetric and can also be queried on repeated vertices. I would suggest quantifying over{s : Finset α.ToType // s.card = 3}or adding the symmetry and distinctness constraints explicitly.