Zulip Chat Archive
Stream: Formal conjectures
Topic: Erdős Problem 1080
AYUSH DEBNATH (Nov 16 2025 at 14:47):
@Paul Lezeau @Moritz Firsching /-
Copyright 2025 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 1080 — Bipartitions of size ⌊n^(2/3)⌋ and 6-cycles
Reference: https://www.erdosproblems.com/1080
Let G be a bipartite simple graph on n vertices such that one part has
size ⌊ n^(2/3) ⌋.
Is there a constant c > 0 such that if |E G| ≥ c n, then G contains a 6-cycle C₆?
Status: open.
Choice: I plan on working on this conjecture.
-- [category research open]
-- [AMS 05]
-- tags: graph theory, cycles
-/
open Classical
noncomputable section
namespace Erdos1080
variable {V : Type*} [Fintype V] [DecidableEq V]
/-- Minimal bipartition predicate with explicit parts U, W. -/
structure IsBipartition (G : SimpleGraph V) (U W : Finset V) : Prop where
disjoint : Disjoint U W
cover : U ∪ W = (Finset.univ : Finset V)
no_edges_in_U : ∀ {x y}, x ∈ U → y ∈ U → ¬ G.Adj x y
no_edges_in_W : ∀ {x y}, x ∈ W → y ∈ W → ¬ G.Adj x y
/-- G contains a 6-cycle. -/
def HasC6 (G : SimpleGraph V) : Prop :=
∃ (v : Fin 6 → V),
(∀ i j, i ≠ j → v i ≠ v j) ∧
(∀ i : Fin 6,
G.Adj (v i)
(v ⟨(i.1 + 1) % 6,
by
have : 0 < 6 := by decide
exact Nat.mod_lt _ this⟩))
/-- Size target ⌊ n^(2/3) ⌋. -/
def partSize (n : ℕ) : ℕ := Nat.floor ((n : ℝ) ^ (2 / 3 : ℝ))
/-- Problem statement packaged as a proposition. -/
def Statement : Prop :=
∃ c : ℝ, 0 < c ∧
∀ (V : Type*) [Fintype V] [DecidableEq V] (G : SimpleGraph V),
∃ (U W : Finset V),
IsBipartition G U W ∧
U.card = partSize (Fintype.card V) ∧
((Nat.ceil (c * (Fintype.card V : ℝ)) : ℕ) ≤ G.edgeFinset.card → HasC6 G)
/--
Erdős Problem 1080 (formal shell, in the “problem ↔ answer” style used in the repo).
-/
@[category research open, AMS 05]
theorem erdos_1080 : Statement ↔ answer(sorry) := by
sorry
end Erdos1080
Plz have a look and suggest changes to merge this pr
Paul Lezeau (Nov 16 2025 at 15:02):
@AYUSH DEBNATH note that you have not yet adressed the review comment I had left.
Eric Wieser (Nov 16 2025 at 17:22):
Also please read #backticks
AYUSH DEBNATH (Nov 16 2025 at 20:08):
/-
Copyright 2025 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.
-/
/-!
Erdős Problem 1080 — Bipartitions of size ⌊n^(2/3)⌋ and 6-cycles
-- [category research open]
-- [AMS 05]
-- tags: graph theory, cycles
-/
import FormalConjectures.Util.ProblemImports
import Mathlib.Data.Real.Basic
open Classical
noncomputable section
namespace Erdos1080
variable {V : Type*} [Fintype V] [DecidableEq V]
/-- Minimal bipartition predicate with explicit parts U, W. -/
structure IsBipartition (G : SimpleGraph V) (U W : Finset V) : Prop where
disjoint : Disjoint U W
cover : U ∪ W = (Finset.univ : Finset V)
no_edges_in_U :
∀ {x y}, x ∈ U → y ∈ U → ¬ G.Adj x y
no_edges_in_W :
∀ {x y}, x ∈ W → y ∈ W → ¬ G.Adj x y
/-- G contains a 6-cycle. -/
def HasC6 (G : SimpleGraph V) : Prop :=
∃ (v : Fin 6 → V),
(∀ i j, i ≠ j → v i ≠ v j) ∧
(∀ i : Fin 6,
let j : Fin 6 :=
⟨(i.1 + 1) % 6, by decide⟩
G.Adj (v i) (v j))
/-- Target bipartition size: ⌊n^(2/3)⌋. -/
def partSize (n : ℕ) : ℕ :=
Nat.floor ((n : ℝ) ^ (2 / 3 : ℝ))
/-- Formal packaging of the conjecture statement. -/
def Statement : Prop :=
∃ c : ℝ, 0 < c ∧
∀ (V : Type*) [Fintype V] [DecidableEq V] (G : SimpleGraph V),
∃ (U W : Finset V),
IsBipartition G U W ∧
U.card = partSize (Fintype.card V) ∧
((Nat.ceil (c * (Fintype.card V : ℝ)) : ℕ)
≤ G.edgeFinset.card → HasC6 G)
/--
Erdős Problem 1080 in the problem ↔ answer format used in the repository.
-/
theorem erdos_1080 :
Statement ↔ answer (sorry) :=
by
sorry
end Erdos1080
AYUSH DEBNATH (Nov 16 2025 at 20:09):
@Eric Wieser @Paul Lezeau plz check the code now
AYUSH DEBNATH (Nov 16 2025 at 20:10):
@Paul Lezeau the file Erdos 979 has been deleted by mistake how can I get it back to push the changes
Michael Rothgang (Nov 17 2025 at 08:08):
Do you know about #backticks? This makes your messages much more readable.
Michael Rothgang (Nov 17 2025 at 08:09):
I personally am more inclined to help somebody if I can understand their issue quickly. (For mathlib changes, it's also much easier if you open a pull request, and I can provide feedback there. I expect this to also be the case here.)
Eric Wieser (Nov 18 2025 at 02:11):
Please don't repost the contents of a file here from a PR; you can just link the PR instead
Last updated: Dec 20 2025 at 21:32 UTC