Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in

Get started

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

Discrete Geometry

156 missions · 79 completed

Missions

Open77Completed79All156
Captain: mikedeng1

Convex Polytopes X: Recognition from projectionsTextbook

Motivation

A convex set can be studied through its images in lower-dimensional spaces. Each image retains part of the geometry while discarding information along the directions that are collapsed. Finite convex hulls behave well under affine maps: the image of a convex hull of finitely many points is again the convex hull of finitely many points. The converse is subtler. It asks whether sufficiently comprehensive lower-dimensional image data forces the original bounded convex set itself to have a finite description by points.

This mission formalizes the projection-recognition criterion attributed to Klee in Branko Grünbaum's Convex Polytopes, second edition, §5.1, Theorem 5.1.8, printed page 74 (PDF page 100 of the supplied source). The criterion concerns every projection into one suitable intermediate dimension, not a chosen coordinate view. It therefore characterizes a global property of the original set by an entire family of dimension-reducing images.

Setting

Fix a natural number d≥3d\geq 3d≥3. Real coordinate space Rd\mathbb R^dRd is represented in Lean by functions from Fin d to the real numbers. A subset K⊆RdK\subseteq\mathbb R^dK⊆Rd is convex when it contains every line segment joining two of its points, and it is bounded when all of its points lie within some finite metric ball. Neither condition requires KKK to be nonempty, closed, or full-dimensional.

For a set VVV, its convex hull conv⁡(V)\operatorname{conv}(V)conv(V) is the smallest convex set containing VVV. In the convention used by Grünbaum in §3.1, printed page 31 (PDF page 51), a polytope is equivalently the convex hull of a finite set. The generating set need not be a minimal vertex set, and the formal statement permits the finite set to be empty or contained in a proper affine subspace.

An affine map preserves affine combinations. A surjective affine map

f:Rd⟶Rjf:\mathbb R^d\longrightarrow\mathbb R^jf:Rd⟶Rj

has image dimension exactly jjj. When j<dj<dj<d, it is singular. Grünbaum defines a projection at the opening of §5.1, printed page 71 (PDF page 97), as an image under a singular affine map. Using a surjective affine map to coordinate jjj-space represents a projection to a jjj-dimensional affine space followed by an affine choice of coordinates. Whether a set is a finite convex hull is unchanged by that coordinate identification.

Formalization target

For every bounded convex set K⊆RdK\subseteq\mathbb R^dK⊆Rd, the target is the equivalence

K is a polytope⟺∃j∈N,  2≤j<d,  ∀f:Rd↠Rj affine,  f(K) is a polytope.K\text{ is a polytope} \quad\Longleftrightarrow\quad \exists j\in\mathbb N,\;2\leq j<d,\; \forall f:\mathbb R^d\twoheadrightarrow\mathbb R^j\text{ affine},\; f(K)\text{ is a polytope}.K is a polytope⟺∃j∈N,2≤j<d,∀f:Rd↠Rj affine,f(K) is a polytope.

The dimension jjj may depend on KKK, but it is selected before the universal quantifier over affine maps. Every surjective affine map with that target dimension is tested. For each map, the finite set whose convex hull is f(K)f(K)f(K) may be different; no common projected generator set and no uniform bound on its size is asserted. This is one theorem with both directions, so there are no separate milestone statements in the package.

Significance

The forward implication records the stability of finite convex hulls under affine images. The recognition implication is the substantive part: under boundedness and convexity, polytopality of every projection in one eligible intermediate dimension forces KKK itself to be a polytope. The conclusion concerns KKK rather than merely its closure and does not add a hidden closedness assumption.

The theorem is established mathematics in the cited textbook. The present artifact is a compiled formal statement, not a completed machine-checked proof: its theorem body is by sorry. Completing it would connect Mathlib's finite convex-hull and affine-map infrastructure to the classical projection-recognition argument while preserving the source's quantifier order and lower-dimensional boundary cases.

Difficulty

Each projected set may have its own unrelated finite generating set. Those separate witnesses do not directly assemble into a finite generating set in the original ambient space, because every projection has discarded a kernel direction. Checking one convenient projection is inadequate: that image can conceal structure occurring precisely in the collapsed directions. The challenge is therefore to use the universal family of projections at the selected dimension without replacing it by a fixed axis projection or adding compactness, full dimensionality, or nonempty interior.

Formalization scope

The Lean declaration is Grunbaum2003.polytope_iff_polytope_projections, in the book-wide namespace Grunbaum2003. It takes Bornology.IsBounded K and Convex ℝ K as the exact domain hypotheses. Polytopality is written directly as existence of a finite set with convex hull equal to the set; no stronger book-local full-dimensional polytope predicate is used. Projections are all surjective real affine maps from Fin d → ℝ to Fin j → ℝ.

The explicit premise 3≤d3\leq d3≤d records the admissible ambient range required by 2≤j<d2\leq j<d2≤j<d. In dimension three, the only possible target dimension is two. No displayed existential claim is made for dimensions zero, one, or two, where no such jjj exists. Within every admissible dimension, empty sets, singletons, and other lower-dimensional bounded convex sets remain in scope. Surjectivity prevents a map from having rank below jjj, and the strict inequality j<dj<dj<d ensures dimension loss. There are no expression-essential book-local definitions or supporting theorems; the only dependencies are Mathlib modules for convex hulls, boundedness, finite-dimensional coordinate spaces, and affine maps.

Selected references

  • Branko Grünbaum, Convex Polytopes, 2nd ed., Graduate Texts in Mathematics 221, Springer, 2003, §3.1 and §5.1, especially Theorem 5.1.8 on printed page 74. Springer book record and DOI.
1 thm1 active userReviewed
Captain: mikedeng1

Convex Polytopes IX: Realization of cube skeletons by cubical polytopesTextbook

Motivation

The face structure of a cube is unusually regular: its vertices, edges, and higher dimensional faces are indexed by choices of fixed and free coordinates. A natural realization question asks how much of this structure can survive in a polytope of lower dimension. In §4.9 of Convex Polytopes, Grünbaum reports the Joswig–Ziegler construction of neighborly cubical polytopes. The source result says that a cubical ddd-polytope can retain a prescribed low dimensional skeleton of an nnn-cube even when n>dn>dn>d. It concerns the entire pattern of faces and containments within that skeleton, rather than a count of vertices or edges alone. The theorem appears on printed page 69b (PDF page 95) of the supplied 2003 edition.

Setting

Fix natural numbers n>d≥2n>d\geq2n>d≥2. A ddd-polytope here is a nonempty finite convex hull P⊆RdP\subseteq\mathbb R^dP⊆Rd with full affine span. A face is an exposed subset of PPP; the empty face and PPP itself are included in the face poset. Its order is set inclusion. For a nonempty face, dimension is the dimension of its affine span. The standard nnn-cube is [0,1]n[0,1]^n[0,1]n in Rn\mathbb R^nRn, described coordinatewise by 0≤xi≤10\leq x_i\leq10≤xi​≤1.

A cubical ddd-polytope is such a full dimensional polytope whose every facet, meaning every nonempty exposed face of dimension d−1d-1d−1, has a full face poset order isomorphic to the face poset of a standard (d−1)(d-1)(d−1)-cube. This is combinatorial cubicality: a facet need not be congruent or affinely equal to a metric cube. It also does not say that the vertices of PPP have binary coordinates.

The kkk-skeleton face poset consists of the empty face together with all exposed faces of affine dimension at most kkk, with their inherited inclusion order. The source speaks of a skeleton “of” an nnn-cube: the intended correspondence preserves and reflects face containment across the two ambient dimensions. An order isomorphism of the two skeleton face posets is the Lean expression of that combinatorial equivalence.

Formalization target

The single target is the unnumbered Joswig–Ziegler existence theorem as reported by Grünbaum. For every n>d≥2n>d\geq2n>d≥2, with k=⌊d/2⌋−1k=\lfloor d/2\rfloor-1k=⌊d/2⌋−1, it asks for a cubical ddd-polytope PPP such that

Skel⁡k(P)≅Skel⁡k([0,1]n).\operatorname{Skel}_k(P)\cong\operatorname{Skel}_k([0,1]^n).Skelk​(P)≅Skelk​([0,1]n).

The witness PPP may depend on both nnn and ddd. The strict inequality n>dn>dn>d and lower bound d≥2d\geq2d≥2 are source conditions. They have not been expanded or narrowed for this package. For d=2d=2d=2 and d=3d=3d=3, the cutoff is zero, so the skeleton includes the empty face and vertices. At larger dimensions the claim includes all faces through the stated cutoff and their order relations.

In Lean the theorem is Grunbaum2003.neighborly_cubical_realization. Its conclusion supplies a set in Fin d → ℝ, proves the cubical-polytope predicate of that set, and supplies a nonempty type of order isomorphisms between the two skeleton face posets. The declaration is a compiled statement with a sorry body. No machine-checked proof of the existence theorem is claimed here.

Significance

This theorem separates dimension of realization from the low dimensional combinatorics being realized. In particular, an nnn-cube skeleton can occur inside a lower dimensional cubical polytope, subject to the precise cutoff above. The conclusion is a structural face-poset match, not a numerical face-vector equality. A complete formal proof would establish an existence statement about genuine full dimensional convex polytopes and an order equivalence of their truncated face systems.

The reusable formal objects in this package are the full dimensional polytope predicate, the face subtype, the skeleton subtype, the standard cube, and the cubical-polytope predicate. They express the geometry and combinatorics independently of the particular neighborly realization theorem. The goal is kept as one mission because the source states one dimension-parametric existence result; the definitions are only its expression dependencies.

Difficulty

A lower dimensional realization cannot retain every face of a higher dimensional cube. The theorem therefore specifies exactly which dimensions of faces can be preserved. Merely matching the number of vertices would leave edges, higher faces, and incidence unconstrained. Likewise, requiring all facets to look like cubes says nothing by itself about whether a large cube's skeleton appears. A proof must produce a genuine cubical witness and the ordered skeleton correspondence simultaneously, for every allowed pair of dimensions.

Formalization scope

The Lean coordinate spaces are real functions on Fin d and Fin n. Natural division d / 2 is floor division, and the assumption d≥2d\geq2d≥2 makes natural subtraction by one agree with the source's integer cutoff. The full dimensional condition rules out an empty or lower dimensional witness. IsExposed supplies faces, including the improper empty and whole faces; the skeleton predicate treats the empty face explicitly because its conventional dimension is −1-1−1, outside natural-number dimensions. The nonempty face dimension is the finrank of the affine direction.

The face-poset order is inherited from set inclusion. Cubicality is checked on each qualifying facet by an order isomorphism with the full face poset of the reference cube. The target's order isomorphism similarly covers the whole selected skeleton rather than only vertices. Contributions toward a proof may introduce construction and comparison lemmas, but none is asserted as an additional theorem item in this reviewed package.

Selected references

  • Branko Grünbaum, Convex Polytopes, 2nd ed., Springer, 2003, §4.9, unnumbered Joswig–Ziegler existence theorem, printed p. 69b / PDF p. 95 of the supplied source.pdf.
  • Michael Joswig and Günter M. Ziegler, “Neighborly cubical polytopes,” 2000, arXiv:math/9812033. This is corroboration for the construction; the mission retains Grünbaum's stated parameter range.
6 thms1 active userReviewed
Captain: mikedeng1

Convex Polytopes VIII: Facet growth of binary polytopesTextbook

Motivation

A polytope may be described by its vertices or by its facets. These descriptions can differ sharply in size even when every vertex has only binary coordinates. Grünbaum's account of 0/1-polytopes in §4.9 records a result of Bárány and Pór: the maximal number of facets grows superexponentially with dimension. The result is an existence statement about the geometry of binary coordinate sets. The source describes random polytopes as witnesses, without specifying a probability distribution as part of the theorem.

Setting

Fix a dimension ddd. A ddd-polytope here is a nonempty convex hull of finitely many points in Rd\mathbb R^dRd with full affine span. A 0/1-polytope is the convex hull of a subset of {0,1}d\{0,1\}^d{0,1}d. Both properties are required of the witness. A facet is a nonempty exposed face of affine dimension d−1d-1d−1. The count fd−1(P)f_{d-1}(P)fd−1​(P) uses the book's convention that the empty face has dimension −1-1−1 and is excluded from natural-indexed face counts. This representation follows Grünbaum §§2.4 and 3.1 for faces and full-dimensional polytopes, and §4.9 for the binary coordinate family.

Formalization target

The single source obligation is the unnumbered Bárány–Pór assertion quoted by Grünbaum in §4.9, printed p. 69a (PDF p. 94). In mathematical notation, the statement is

∃c>1  ∃D≥2  ∀d≥D  ∃P⊆Rd:P is a full-dimensional 0/1-polytopeandcdlog⁡d<fd−1(P).\exists c>1\;\exists D\geq 2\;\forall d\geq D\;\exists P\subseteq\mathbb R^d:\quad P\text{ is a full-dimensional 0/1-polytope}\quad\text{and}\quad c^{d\log d}<f_{d-1}(P).∃c>1∃D≥2∀d≥D∃P⊆Rd:P is a full-dimensional 0/1-polytopeandcdlogd<fd−1​(P).

The constant ccc and threshold DDD are chosen before ddd; the witness PPP may depend on ddd. The logarithm in Lean is natural logarithm. Changing a fixed logarithm base rescales the existential constant. The result is asymptotic: it does not assert the inequality in every small dimension. The threshold D≥2D\geq2D≥2 also keeps the natural-number expression d−1d-1d−1 in the facet dimension away from underflow.

The goal item Grunbaum2003.barany_por_binary_facet_growth carries this entire obligation. Its body is sorry, so the package presents a compiled statement, not a machine-checked proof. There are no separate source lemmas in this mission and no milestones to assert beyond the goal.

Significance

The theorem shows that binary vertex coordinates do not impose a merely exponential ceiling on the number of facets. It gives a family of full-dimensional binary polytopes whose facet counts eventually exceed an expression of the form cdlog⁡dc^{d\log d}cdlogd for one fixed c>1c>1c>1. A formal proof would establish that family in the chosen polytope and face-count representation. The present statement makes the quantifier order, full-dimensionality, binary-coordinate restriction, and strict facet inequality explicit for such a proof.

Difficulty

The existence of many binary vertices alone does not certify many facets: one must establish distinct supporting faces of codimension one. The source attributes the strong lower bound to a random construction. A proof must connect that construction to the geometric facet count while keeping one constant valid for every sufficiently large dimension. The mission statement leaves the construction method to the proof, as the quoted book assertion supplies no probability-space parameters or probability bound.

Formalization scope

Lean represents a point of Rd\mathbb R^dRd by Fin d → ℝ and a polytope by a set of such points. IsDPolytope requires a finite nonempty convex-hull presentation and full affine span. IsZeroOnePolytope requires a convex-hull presentation whose generators have every coordinate equal to zero or one. faceCount P k uses the finite cardinality of nonempty exposed faces of affine dimension kkk; for the full-dimensional witness, faceCount P (d - 1) is the facet count. No face-finiteness, simplicity, or probabilistic assumption is added to the theorem.

The package uses these three expression-essential definitions and the Mathlib real-power and logarithm notation. IsDPolytope and faceCount match the definitions already staged for other missions in this textbook series. A proof may reuse geometric lemmas or supply a new formal version of the Bárány–Pór construction, provided it proves the stated inequality for the original full-dimensional binary family.

Selected references

  • Branko Grünbaum, Convex Polytopes, second edition, Springer, 2003, §§2.4, 3.1, 4.9, printed pp. 17, 31, 69a (supplied source.pdf, PDF pp. 35, 51, 94).
  • Imre Bárány and Attila Pór, “On 0–1 Polytopes with Many Facets,” Advances in Mathematics 161 (2001), 209–228, Theorem 1.1, p. 210. https://www.renyi.hu/~barany/cikkek/86.pdf
4 thms1 active userReviewed
Captain: mikedeng1

Convex Polytopes V: Face-lattice recovery from ray queriesTextbook

Motivation

A polytope can be given by a list of vertices, a list of inequalities, or much less explicit access. The last case arises when geometric information is available through queries to a physical or computational object but a full description is unavailable. Grünbaum's account of a result by Gritzmann, Klee, and Westwater asks how much of a polytope can be recovered when each query shoots a ray from a known interior point and reports where it meets the boundary. The target is the complete face lattice, including incidence among faces of every dimension, and the cost is the number of oracle calls. The result appears in Convex Polytopes, §3.6, printed pp. 52b–52c (PDF pp. 74–75 of the supplied source).

Setting

Fix a positive integer ddd. A ddd-polytope PPP is a nonempty finite convex hull in real coordinate space Rd\mathbb R^dRd whose affine span is the whole space. The origin is known to lie in the interior of PPP. A ray query supplies a nonzero direction vvv; the oracle returns the intersection of the positive ray {tv:t>0}\{tv:t>0\}{tv:t>0} with the boundary of PPP. The theorem requires this boundary-point property for every nonzero direction. It does not give the reconstruction program the vertices, inequalities, face counts, or coordinates of PPP.

A face is represented by an exposed subset of PPP, ordered by inclusion. The resulting face lattice includes the empty and whole faces. For 0≤k<d0\leq k<d0≤k<d, fk(P)f_k(P)fk​(P) counts nonempty faces of affine dimension kkk; hence f0(P)f_0(P)f0​(P) is the vertex count and fd−1(P)f_{d-1}(P)fd−1​(P) is the facet count. The empty face has dimension −1-1−1 in the book's convention and is excluded from these natural-indexed counts. These conventions follow Grünbaum §§2.4 and 3.1 (printed pp. 17 and 31; PDF pp. 35 and 51).

Formalization target

The single source obligation is the unnumbered Gritzmann–Klee–Westwater theorem of Grünbaum §3.6. For each d>0d>0d>0, one finite exact-real ray-query program works for every eligible PPP and every correct ray oracle for PPP. It halts with an encoding of the entire face lattice after at most

f0(P)+(d−1)fd−1(P)2+(5d−4)fd−1(P)f_0(P)+(d-1)f_{d-1}(P)^2+(5d-4)f_{d-1}(P)f0​(P)+(d−1)fd−1​(P)2+(5d−4)fd−1​(P)

queries. The square on the facet count, both coefficients, and the continuation of “queries” across the page break are part of the printed statement. The program is selected before the unknown polytope and its oracle. The finite running time and output may depend on the instance. No common output, fixed runtime bound, or bit-complexity bound is asserted.

The Lean declaration is Grunbaum2003.ray_oracle_face_lattice_reconstruction. It asserts existence of the program, universal correctness, finite termination in a halt instruction, the displayed query inequality, and a concrete encoding of the whole face lattice. Its body is sorry: this package is a compiled statement and does not claim a machine-checked proof.

Significance

The conclusion recovers all face incidences from boundary samples on rays from one interior point. It is stronger than recovering only a vertex or facet list because the output explicitly determines the ordering of all faces. The bound measures the information requested from the oracle; the source does not constrain the number of internal arithmetic steps. A formal proof would connect the geometric reconstruction argument to a precise query machine and establish that its output matrix has exactly the claimed faces and inclusions.

Difficulty

Ray answers are geometric points, while the desired output is a global combinatorial structure. Sampling one direction per visible feature gives no direct certificate that all faces and incidences have been found. In particular, a proposed reconstruction must use only the permitted oracle answers and still know when its finite description is complete. The theorem also needs a uniform program for every polytope in a fixed dimension, with the instance dependent query count above. The present statement makes these quantifier and resource requirements explicit.

Formalization scope

The machine has a finite instruction list for rational constants, exact real arithmetic, sign branches, tape movement, oracle queries, and halt. Its tape begins at zero. A query reads a nonzero direction from the tape and writes back the oracle's boundary answer; only this instruction increments the query counter. A zero direction, invalid label, or division by zero fails instead of creating a successful execution. Thus an unrestricted oracle value at zero cannot certify the theorem. Arithmetic and sign tests are exact real operations, matching the source's query model rather than imposing a bit model.

The output is a self-delimiting Boolean inclusion matrix indexed by a finite type. A bijection connects its indices to all exposed faces of PPP, and each matrix entry is one precisely when the associated faces are ordered by inclusion. This rules out an output consisting merely of face counts, vertices, or facets. IsDPolytope, faceCount, PolytopeFace, the ray-oracle predicate, machine syntax and execution, and the output predicate are the expression dependencies of the goal. The exposed-face subtype and full-dimensional polytope predicate are shared unchanged with this book's other staged missions. Contributions needed for a proof may include geometric face finiteness and reconstruction lemmas, but those are not added as unreviewed mission items here.

Selected references

  • Branko Grünbaum, Convex Polytopes, 2nd ed., Springer, 2003, §§2.4, 3.1, 3.6, especially the unnumbered Gritzmann–Klee–Westwater theorem on printed pp. 52b–52c (supplied source.pdf, PDF pp. 74–75).
  • P. Gritzmann, V. Klee, and D. Westwater, original result cited by Grünbaum as Theorem 5.5 (1995), p. 715. This package follows Grünbaum's stated theorem; the original article was not independently inspected for this packaging step.
10 thms1 active userReviewed
🏆Completed
Algebraic Geometry·Captain: mysticflounder

Near enemies: spherical sets project to minimal-energy images in general positionOpen Problem

Motivation

How few distinct distances can a planar point set determine? The near enemies of this mission are the closest competitors to the extremal configuration: points in no-three-collinear position (no line through three of them) and points lying on a common sphere — the lattice-sphere slice of Erdős–Füredi–Pach–Ruzsa is the motivating example. The bisector energy of a set counts ordered quadruples (a,b,c,d)(a,b,c,d)(a,b,c,d) of points for which the pair a,ba,ba,b and the pair c,dc,dc,d have the same perpendicular bisector; it measures how far the set is from generic. Lund–Sheffer–de Zeeuw fixed the floor of this statistic: 2n(n−1)2n(n-1)2n(n−1) is a universal lower bound, and bisector injectivity is sufficient for equality. The Near Enemy theorem is the projection statement on top of it — every admissible set admits one generic projection whose image attains that floor, sits in general position, has zero rotation energy, and carries the whole distance-transport package.

Setting

Work with finite sets PPP of points in the Euclidean plane (EuclideanSpace ℝ (Fin 2)), and in the transport direction with points in EuclideanSpace ℝ ι for a general finite index type. Following Lund–Sheffer–de Zeeuw, the bisector energy is

E(P)=∣{(a,b,c,d)∈P4  :  a≠b,  c≠d,  perpBisector(a,b)=perpBisector(c,d)}∣.\mathcal{E}(P) = \bigl|\{(a,b,c,d) \in P^4 \;:\; a \neq b,\; c \neq d,\; \mathrm{perpBisector}(a,b) = \mathrm{perpBisector}(c,d)\}\bigr|.E(P)=​{(a,b,c,d)∈P4:a=b,c=d,perpBisector(a,b)=perpBisector(c,d)}​.

The rotation energy counts the ordered congruent quadruples whose difference vectors are neither equal nor opposite, so it discards the translation and half-turn channels and isolates the proper-rotation one. A linear map TTT is projection-generic for a set GGG when exactly two conditions hold: TTT sends the difference of any two distinct points of GGG to a nonzero vector, and for two distinct unordered pairs of GGG the images never combine a parallel pair of differences with an orthogonal midpoint difference. Perpendicular bisectors, difference classes and distance images are all Finset operations.

Target

The mission goal is the spherical complete profile: for every finite set GGG lying on a common sphere, in any dimension, there is a linear map TTT to the plane whose image satisfies six conclusions at once —

∃ T:E(T(G))=2∣G∣(∣G∣−1)  ∧  E(T(G))≤E(P′) for every ∣P′∣=∣G∣  ∧  rotationEnergy(T(G))=0\exists\,T:\quad \mathcal{E}(T(G)) = 2|G|(|G|-1) \;\wedge\; \mathcal{E}(T(G)) \le \mathcal{E}(P') \text{ for every } |P'| = |G| \;\wedge\; \mathrm{rotationEnergy}(T(G)) = 0∃T:E(T(G))=2∣G∣(∣G∣−1)∧E(T(G))≤E(P′) for every ∣P′∣=∣G∣∧rotationEnergy(T(G))=0

together with injectivity of TTT on GGG, general position of the image (no three collinear, no four cospherical), and exact distance transport. The projection is chosen per set — its very type depends on the ambient dimension — but a single projection delivers all six conclusions together, and that bundled form is what downstream incidence arguments consume.

Milestones ascend in five steps: the universal energy floor, the bisector-injectivity equality case, the attainment of the floor by projection-generic maps, the existence of such a map for every no-three-collinear set, and the no-three-collinear transport bundle that the goal then specialises to the spherical case.

Significance

Lund–Sheffer–de Zeeuw introduced the extremal picture for bisector energy at the level of the exact constant. In footnote 1 on p. 538 of the SoCG 2015 version (LIPIcs vol. 34, 537–552) they state that E(P)=2n(n−1)\mathcal{E}(P) = 2n(n-1)E(P)=2n(n−1) when every distinct pair determines a distinct bisector, with the enumeration of the trivial quadruples that proves the floor. The universal asymptotic form E(P)=Ω(n2)\mathcal{E}(P) = \Omega(n^2)E(P)=Ω(n2) is a remark in their §3.4.

This mission builds a complete machine-checked development of the floor, its attainment and the sufficiency direction, from first principles in Lean 4 over mathlib; the rotationEnergy statistic together with the rotationEnergy = 0 certificate for the projected image, where rotationEnergy(P) = 0 follows from the published "distance Sidon set" property; and a single generic projection of a given set that carries the bisector floor at the same time as the Erdős–Füredi–Pach–Ruzsa general-position package. Four of that bundle's six conjuncts are already in Erdős–Füredi–Pach–Ruzsa 1993, whose Theorem 3.1 supplies them.

Formalizing it matters because the argument composes analysis (generic projections obtained from nonvanishing of circle determinants), algebra (inner-product and determinant polynomial witnesses carrying linear_combination certificates) and counting (fiberwise difference-class tallies) — and the interfaces between the three must agree exactly. The projection-genericity and polynomial-witness lemmas are reusable for any Euclidean extremal formalization.

Difficulty

The hard step is keeping the projection generic through every predicate at once: a projection that preserves no-three-collinearity can still kill a circle determinant, or create a coincidence that the counting needs to keep distinct. The naive first idea — project along a random direction and hope — fails because each predicate forbids a different algebraic hypersurface of directions; the fix is a single simultaneous-avoidance argument over the union, with each forbidden set shown proper by an explicit polynomial witness. That step is the largest proof in the mission and carries its own milestone.

Formalization scope

Points are EuclideanSpace; finite sets are Finset; energies are ℕ-valued statistics. Generic projections are linear maps carrying the explicit two-clause ProjectionGeneric predicate, so there is no hidden regularity assumption. Dimension is a general ι with [Fintype ι] wherever the transport needs it. The goal's only hypothesis is membership of a common sphere; no-three-collinearity is derived from it rather than assumed, because a line meets a sphere at most twice. No statement is vacuous: explicit witnesses were checked in the kernel for the goal and for every milestone.

Welcome contributions: the converse of the equality case — bisector injectivity is proved here to be sufficient for the floor, and necessity is open in this development; sharpness examples beyond the Erdős–Füredi–Pach–Ruzsa configuration; and the incidence assembly that consumes this mission's output.

Selected references

  • B. Lund, A. Sheffer and F. de Zeeuw, Bisector energy and few distinct distances, Proc. 31st SoCG 2015, LIPIcs vol. 34, 537–552, DOI 10.4230/LIPIcs.SOCG.2015.537; journal version Discrete Comput. Geom. 56 (2016), no. 2, 337–356, DOI 10.1007/s00454-016-9783-5, arXiv:1411.6868. Source of the bisector-energy statistic and its upper bounds. Footnote 1 on p. 538 of the SoCG version gives E(P)=2n(n−1)\mathcal{E}(P) = 2n(n-1)E(P)=2n(n−1) for every set whose pairs have distinct bisectors, with the count of trivial quadruples that proves the floor; §3.4 (p. 545) gives E(P)=Ω(n2)\mathcal{E}(P) = \Omega(n^2)E(P)=Ω(n2) for every set. The footnote is not in arXiv:1411.6868v1.
  • P. Erdős, Z. Füredi, J. Pach and I. Z. Ruzsa, The grid revisited, Discrete Math. 111 (1993), 189–196, DOI 10.1016/0012-365X(93)90155-M — the lattice-sphere-slice configuration that gives this mission its name, and (proof of Theorem 3.1, p. 193) the generic planar projection that is injective, keeps general position and transports distances.
  • J. Solymosi and T. Tao, An incidence theorem in higher dimensions, Discrete Comput. Geom. 48 (2012), no. 2, 255–280, DOI 10.1007/s00454-012-9420-x, arXiv:1103.2926, §5.1 — the canonical statement of the generic-projection trick this construction borrows. The same trick is used in J. Pach and F. de Zeeuw, Distinct distances on algebraic curves in the plane, Combin. Probab. Comput. 26 (2017), no. 1, 99–117, arXiv:1308.0177.
  • McKenna, Lean formalization (mathlib-only, axiom-clean), lean-formalizations, module Geometry.Euclidean.NearEnemyTheorem.
20 thms1 active userReviewed
🏆Completed
Algebraic Geometry·Captain: mysticflounder

Pach-de Zeeuw: finite Bezout bound for real plane curvesResearch Paper

Motivation

The distinct-distances problem asks how few distinct distances a finite planar point set can determine. Guth and Katz proved the near-optimal bound Ω(n/log⁡n)\Omega(n / \log n)Ω(n/logn) in 2015. Their argument passes through incidence geometry: distances become incidences between points and curves, and the Elekes–Sharir framework converts the problem into an incidence bound for lines in three-space. Pach and de Zeeuw showed the same pipeline works for points on a fixed algebraic curve, replacing line incidences with curve incidences. The algebraic prerequisite for that replacement — that two bounded-degree real plane curves with no shared component meet in finitely many points, with an explicit degree-dependent bound — is what this mission formalizes.

Setting

A real plane curve here is the real zero set of a nonzero bivariate polynomial p∈R[x,y]p \in \mathbb{R}[x, y]p∈R[x,y], written V(p)={(x,y):p(x,y)=0}V(p) = \{(x,y) : p(x,y) = 0\}V(p)={(x,y):p(x,y)=0}. Its total degree is the maximum i+ji+ji+j over monomials xiyjx^i y^jxiyj with nonzero coefficient. A curve is irreducible when its polynomial is irreducible.

The paper says two curves have a common component when their polynomials share a nonconstant factor. The Lean development uses a different, weaker hypothesis, NoCommonCurveComponent: no infinite irreducible real curve lies inside both sets. A shared factor whose real zero set is finite (for example x2+y2x^2 + y^2x2+y2) violates the paper's hypothesis but satisfies the Lean one, so the Lean theorem covers strictly more pairs of curves than the paper's statement.

Currying views ppp as a univariate polynomial in one coordinate whose coefficients are polynomials in the other. In the Lean code the polynomial variable is coordinate 000 and the coefficient (base) variable is coordinate 111; this description writes the base coordinate as xxx and the fiber coordinate as yyy, so a line {x=c}\{x = c\}{x=c} is called vertical. The resultant of two curried polynomials is a polynomial in xxx alone. The development uses one direction of its defining property: if the two specializations at xxx share a real root, the resultant vanishes at xxx. All Lean statements use MvPolynomial (Fin 2) ℝ for plane polynomials and EuclideanSpace ℝ (Fin 2) for points.

Target

The mission's goal is a finite-intersection bound in the spirit of Theorem 2.1 of Pach–de Zeeuw (Bézout's inequality), but it is not that theorem. It differs in both directions:

∀d1,d2, ∃C>0, ∀C1,C2 of total degree≤d1,d2 with no common infinite irreducible component:C1∩C2 is finite and ∣C1∩C2∣≤C.\forall d_1, d_2,\ \exists C > 0,\ \forall C_1, C_2 \text{ of total degree} \le d_1, d_2 \text{ with no common infinite irreducible component}:\quad C_1 \cap C_2 \text{ is finite and } |C_1 \cap C_2| \le C.∀d1​,d2​, ∃C>0, ∀C1​,C2​ of total degree≤d1​,d2​ with no common infinite irreducible component:C1​∩C2​ is finite and ∣C1​∩C2​∣≤C.
  • The conclusion is an existential degree-dependent constant. The proof's witness is C=(d1+d2+1)8+1C = (d_1+d_2+1)^8 + 1C=(d1​+d2​+1)8+1. The paper's sharp bound d1⋅d2d_1 \cdot d_2d1​⋅d2​ is not proved here.
  • The hypothesis is the weaker "no common infinite irreducible component" described above, so the statement is not a formal consequence of the paper's Theorem 2.1; the shared-finite-factor case is handled separately in the proof by a singular-point count.

The six milestones are the algebraic inputs: coefficient-root counting, the two resultant-nonvanishing criteria, the fiber bound, and the two mixed vertical/nonvertical pair bounds that carry the constant d1⋅d2d_1 \cdot d_2d1​⋅d2​. The nonvertical–nonvertical pair bound (primitive_nonvertical_pair_intersection_bound) carries the cruder constant ((d1+d2)2+1)⋅max⁡(d1,d2)((d_1+d_2)^2+1)\cdot\max(d_1,d_2)((d1​+d2​)2+1)⋅max(d1​,d2​). Above the milestones sit the irreducible-pair assembly with constant (d1+d2+1)4(d_1+d_2+1)^4(d1​+d2​+1)4 and the factorized assembly with constant (d1+d2+1)8(d_1+d_2+1)^8(d1​+d2​+1)8, from which the goal follows.

Significance

The result is the algebraic input to the Pach–de Zeeuw distinct-distances theorem for points on curves: without a uniform finite-intersection bound, the incidence count that drives the distance bound cannot even be stated. The formalization pins down every constant and every non-degeneracy hypothesis (non-verticality, no shared infinite component, coprimality) that the argument consumes.

The proof composes four toolkits — univariate root counting, Sylvester-matrix resultant degree bounds, normalized-factor decompositions, and a smooth implicit-function nonsingularity argument — whose interfaces must agree exactly. The resulting lemmas (resultant criteria, fiber bounds, partial-derivative degree bounds) are reusable for other real-algebraic incidence formalizations over MvPolynomial.

Difficulty

The central difficulty is elimination with explicit constants: the resultant converts a two-variable intersection problem into a one-variable root count, but every step (currying, specialization, factor-pair summation) must preserve a usable degree bound, and the degenerate configurations (vertical fibers, shared factors with finite real zero set, singular points) each need a separate finite bound.

The textbook route — Bézout's inequality over C\mathbb{C}C, then observing that real intersection points are complex ones — is not taken, for two reasons. Mathlib has no plane-curve Bézout theorem to invoke. And under the weaker Lean hypothesis the two polynomials may share an irreducible factor with finite real zero set, in which case the complex intersection is infinite and no complex count applies; that branch is closed by bounding the singular points of the shared factor instead.

Formalization scope

Points are EuclideanSpace ℝ (Fin 2); curves are MvPolynomial (Fin 2) ℝ zero sets; finiteness is Set.Finite with Set.ncard bounds. The development commits to total degree (not weighted degrees) and to the currying order that eliminates Lean coordinate 000; variable-style implicit degree bounds d1,d2d_1, d_2d1​,d2​ are explicit {d₁ d₂ : ℕ} binders on the platform. No statement is vacuous: every intersection bound carries the non-degeneracy hypothesis (non-associated irreducibles, non-divisibility, nonzero partials) that excludes the infinite-intersection cases. Contributions welcome: the sharp d1d2d_1 d_2d1​d2​ general bound (currently an existential constant), the paper's hypothesis form (no common factor at all), and the incidence assembly that consumes this mission's output.

Selected references

  • János Pach and Frank de Zeeuw, Distinct distances on algebraic curves in the plane, Combin. Probab. Comput. 26 (2017), no. 1, 99–117, arXiv:1308.0177, DOI 10.1017/S0963548316000225. Theorem 2.1 there cites C. G. Gibson, Elementary Geometry of Algebraic Curves, Lemma 14.4, for Bézout's inequality.
  • McKenna, Lean formalization of the algebraic preliminaries and Bézout bound, lean-formalizations, modules PachDeZeeuw.AlgebraicPrelim and PachDeZeeuw.Bezout (mathlib-only, axiom-clean).
39 thms1 active userReviewed
PreviousPage 7 of 7Next

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