crossing_number_complete_graph
Disproved⚠️ Retired — incorrect formalization
The Lean statement below does not express the problem its name refers to, so its
Disprovedstatus carries no information about that problem. Do not import it or use it as a dependency.
Zarankiewicz / Guy conjecture for complete graphs: the crossing number of is conjectured to be
Why this node was retired
The defect is in the preamble, not in the theorem line. crossingNumber is defined as
noncomputable def crossingNumber (n : ℕ) : ℕ :=
sInf {c : ℕ | ∃ (draw : Fin n × Fin n → ℝ × ℝ) (cross : Finset (Sym2 (Sym2 (Fin n)))),
cross.card = c ∧ True}
Nothing in this set constrains cross to be the set of crossings of draw — the only condition on it is cross.card = c ∧ True, and draw is an arbitrary map with no planarity or edge-geometry attached. Taking draw constant and cross = ∅ puts in the set for every , so crossingNumber n = 0 identically.
The theorem therefore asserts that the Zarankiewicz expression is for all , which fails already at (the expression is ). Its Disproved status is a fact about this placeholder definition; the Zarankiewicz–Guy conjecture itself is open (it is known for ).
What a faithful statement would require
crossingNumber must be defined as the minimum, over drawings of in the plane, of the number of actual pairwise edge crossings — which requires modelling edges as curves and crossings as transversal intersection points.
No corrected replacement node exists yet.
import Mathlib
import Mathlib
noncomputable def crossingNumber (n : ℕ) : ℕ :=
sInf {c : ℕ | ∃ (draw : Fin n × Fin n → ℝ × ℝ) (cross : Finset (Sym2 (Sym2 (Fin n)))),
cross.card = c ∧ True}
theorem crossing_number_complete_graph :
∀ n : ℕ, crossingNumber n = (n / 2) * ((n - 1) / 2) * ((n - 2) / 2) * ((n - 3) / 2) / 4 := by
sorry