Problems
The benchmark catalog consists of carefully curated problems across mathematics, chosen so that their statements are mostly accessible using existing Mathlib definitions, but their solutions are difficult for current publicly available frontier models.
The problem statements below are automatically extracted from the lean-eval repository.
Authors are encouraged to submit new problems via PRs to that repository, for inclusion in future benchmark releases. See Submit for details on submitting solutions.
All problems
- Abel–Ruffini theorem
- The alternating sign matrix theorem
- Anosov–Bowen shadowing lemma
- Baer–Suzuki theorem
- Baker-Wüstholz theorem on linear forms in logarithms
- Balanceable k-bounded partitions
- Bourbaki's locally convex extension of Banach–Alaoglu
- Bauer's uniqueness at extreme points
- Bézout's theorem (projective, with multiplicity)
- Boone–Higman theorem (easy direction)
- Kuznetsov's theorem: finitely presented simple groups have solvable word problem
- Character values of finite groups lie in cyclotomic fields
- Brauer–Fowler theorem
- Brauer's splitting field theorem
- Brauer–Suzuki theorem (quaternion Sylow 2-subgroup)
- Brouwer fixed-point theorem
- Comparison principle for the Dirichlet BVP
- Cauchy–Kovalevskaya theorem
- Cerf's theorem: every self-diffeomorphism of S3 is smoothly isotopic to a linear isometry
- Hardy–Littlewood sign-change for the prime race mod 4
- Choquet's representation theorem
- Chudnovsky formula for pi inverse
- Commuting probabilities are closed
- Bing's house with two rooms is contractible
- The Conway knot is not smoothly slice
- The Conway knot is topologically slice
- Conway–Schneeberger fifteen theorem
- Polynomial decay rate of y' = -y^3
- Real cyclotomic integer with house in (2, 76/33)
- Real cyclotomic integer with house at most 2
- Darboux's theorem (symplectic forms are locally standard)
- De Branges's theorem (Bieberbach conjecture)
- Dehn–Sommerville equations for simplicial spheres
- Dirichlet eigenvalues of -y'' = lambda y on [0,pi] are n^2
- Chen theorem for Markoff graphs
- Existence of a 779247-dim irreducible e₈-representation with 40 tensor-square isotypic components
- Lai-Sang Young entropy–dimension–Lyapunov theorem
- Erdős's unit-distance conjecture is false
- Euler–Lagrange equation
- Existence of a chiral oriented knot
- Complementary polynomial on the unit circle
- Existence of a non-isotopic pair of oriented knots
- Existence of a non-isotopic pair of oriented two-component links
- Existence of a topologically slice, not smoothly slice knot
- Morrison–Walker Lemma B.0.1: adapting families of maps to open covers
- Fang–Xia: tiling of the symmetric group by transpositions implies λ-transitivity
- Fáry–Milnor theorem (knot total curvature ≤ 4π implies unknotted)
- Fatou–Julia / Cantor dichotomy
- Feit–Thompson odd-order theorem
- Fermat's Last Theorem
- Finite Ramsey theorem for graphs
- Burnside p^a q^b theorem
- Possible orders of 5-transitive finite permutation groups
- Pointwise and Cesàro convergence of Fourier series (Dirichlet, Fejér)
- Fraser: Fourier decay for finite-field Kakeya sets is q^{-1} and sharp
- Frobenius's theorem: the Frobenius kernel is normal
- Fundamental theorem of topos theory
- Furstenberg measure-preserving multiple recurrence
- Furstenberg–Weiss topological multiple recurrence (single-transformation form)
- Existence of a 64-dim irreducible g₂-representation with 14 tensor-square isotypic components
- Schur-Weyl duality: GL(V) image equals centralizer of S_k image
- Glauberman's Z* theorem for isolated involutions
- Gleason's theorem (finite-dimensional)
- Gleason's theorem (separable Hilbert space)
- The Golod–Shafarevich inequality
- Gorenstein–Walter theorem (dihedral Sylow 2-subgroup)
- Green–Tao theorem
- Hadwiger's theorem
- Halmos's generic weak-mixing theorem
- Hausdorff moment problem: absolute-continuity criterion
- The Hausdorff–Hildebrandt–Schoenberg moment theorem
- The Hausdorff positivity (complete-monotonicity) criterion
- Gaussian heat kernel solves the 1D heat equation
- Higman's infinite finitely-presented simple group
- Hippocrates' theorem on lunes
- Hopf–Rinow theorem
- The Hopf Umlaufsatz (theorem of turning tangents)
- Hurewicz theorem in degree 1 (H₁ = abelianization of π₁)
- Perron-Frobenius for irreducible nonnegative matrices
- Onsager's 2D Ising phase transition
- Isoperimetric inequality (n-dim, topological-frontier form)
- Jacobian of a smooth proper curve (Merten challenge)
- Jacobian of a compact Riemann surface (Buzzard challenge)
- Jordan–Brouwer separation theorem
- Jordan curve theorem
- Jordan normal form
- Kakutani fixed-point theorem
- KAM persistence of an invariant curve
- Kepler conjecture (optimal sphere packing in ℝ³)
- Kolmogorov–Arnold superposition theorem (non-universal Lorentz form)
- Koszul formula
- The Landsberg–Schaar relation
- Lax's approximation theorem for toral homeomorphisms
- Fundamental theorem of Riemannian geometry (Levi-Civita)
- Lidskii's inequality
- Lidskii–Last eigenvalue-perturbation theorem
- Lindemann's theorem (e and π transcendental)
- The Lindemann–Weierstrass theorem
- Linear ODE with negative-real-part eigenvalues is asymptotically stable
- Liouville–Arnold theorem on integrable systems
- Linear programming: maximum principle and vertex optimality
- Existence of an order-10200960 group with a 22-dim irrep whose tensor square has 4 isotypic components
- Mandelbar (tricorn) is not path-connected (Hubbard–Schleicher)
- Mandelbrot set is connected (Douady–Hubbard)
- Margulis–Ruelle inequality
- Martinet's asymptotically-good totally real towers
- Mazur's torsion theorem
- Minkowski-Caratheodory theorem
- Mergelyan's theorem
- Milnor's exotic 7-sphere
- Monge–Kantorovich existence theorem
- Moran's equality for affine-symmetric iterated function systems
- Morley's categoricity theorem
- Morley's trisector theorem
- Morse inequalities
- Mountain Pass Theorem (Ambrosetti–Rabinowitz 1973)
- Cayley graph connected iff generators generate the group
- Nash equilibrium existence theorem
- Neukirch–Uchida theorem
- Novikov's theorem: the word problem is undecidable for finitely presented groups
- Oppenheim's inequality for Hadamard products
- Ornstein–Weiss ℤᵈ Rokhlin lemma
- Independence of the parallel postulate
- Pascal's theorem
- Pell solutions are convergents of √d
- A competition programming problem about permuting a permutation to be unimodal
- Pesin entropy formula (symplectic surface case)
- pi_1 of the circle is Z
- pi_3 of the 2-sphere is Z
- pi_(n+1) of S^n is Z/2 for n at least 3
- Pick's theorem
- pi_n of the n-sphere is Z
- Platonic classification
- 3D smooth Poincaré conjecture (Perelman)
- 3D topological Poincaré conjecture (Perelman)
- 4D topological Poincaré conjecture (Freedman)
- Poincaré–Bendixson theorem
- Generalized topological Poincaré conjecture in dimensions ≥ 5 (Smale)
- Poincaré–Siegel linearisation theorem
- Entrywise exponential of a PSD matrix is PSD
- Radó's theorem on Riemann surfaces
- Radon transform: Fourier-slice diagonalization and pseudo-inversion
- Sard's regular-value corollary
- Lagarias criterion is equivalent to RH
- Riesz's rising sun lemma
- Rokhlin lemma
- Rouche theorem via zero counting
- Runge's theorem
- Sard's theorem (critical-set image has measure zero)
- Schauder fixed-point theorem
- Schläfli classification of regular polytopes
- Schoenflies theorem
- Schreier's conjecture: outer automorphism group of a finite simple group is solvable
- Shafarevich's relation-rank bound
- Smale conjecture (Hatcher) in relative parameterized form
- Pannwitz–Kuperberg quadrisecant theorem
- Sobolev embedding theorem (Morrey regime)
- Solvable extensions ↔ solvable groups (the missing converse in Abel–Ruffini)
- 230 space groups (Fedorov 1891 / Schoenflies 1891)
- Differentiable sphere theorem (Brendle–Schoen)
- Topological sphere theorem (Berger–Klingenberg–Rauch)
- Local stable/unstable sets at a hyperbolic fixed point (set-level Hadamard–Perron)
- Sturm's theorem
- Sturm separation theorem
- Catalan generating function via compositional inversion
- Schur-Weyl duality: S_k image equals centralizer of GL(V) image
- Symplectic matrices have determinant 1
- Szemerédi's theorem
- Thue–Siegel–Roth theorem (irrationality measure ≤ 2 for algebraic irrationals)
- Topological classification of surfaces
- Tverberg's theorem
- Uniformization theorem for Riemann surfaces
- Spencer-Szemerédi-Trotter unit-distance upper bound
- Upper bound theorem for geometric simplicial spheres (Stanley 1975)
- von Neumann double commutant theorem
- Seventeen wallpaper groups (Pólya–Niggli 1924)
- Weak Morse inequalities
- Weinstein conjecture in dimension three (Taubes 2007)
- Whitney embedding theorem (strong form, dimension 2n)
- Wieferich's theorem g(3) = 9
- Wiener's atom-detection formula
- Wigner semicircle law
- CI regenerate-main check
- def-hole minimal example
- instance-hole minimal example
- Appending a singleton increases the list length
- multi-hole-with-helpers regression example
- noncomputable-hole minimal example
- 2 + 2 = 4
- variable-binder minimal example
Main benchmark problems
Abel–Ruffini theorem
Submitter: Kim Morrison.
Notes: §57 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' gives the Abel–Ruffini theorem in degree-threshold form: for each n ≥ 1, every complex root of every degree-n rational polynomial lies in solvableByRad ℚ ℂ if and only if n ≤ 4. This packages solvability of all linear, quadratic, cubic, and quartic equations by radicals together with the failure of such a universal statement from degree five onward. Mathlib defines solvableByRad and proves the direction from radical solvability of a root to solvability of the associated Galois group, and the Archive contains a specific nonsolvable quintic, but Mathlib does not currently contain this full degree-boundary theorem. Distinct from the existing solvable_by_radicals_converse problem (the per-polynomial Galois characterization).
Source: P. Ruffini (1799), N. H. Abel (1824), É. Galois (1832). Listed as §57 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf); the general-quintic insolvability is #16 on Freek Wiedijk's 'Formalizing 100 Theorems' list (https://www.cs.ru.nl/~freek/100/).
Informal solution: For n ≤ 4: every degree-n polynomial over ℚ has a solvable Galois group (subgroups of S₄ are solvable), and by the Galois correspondence for radical extensions (Kummer theory in characteristic zero) a solvable Galois group implies every root lies in solvableByRad — concretely the Cardano formula for cubics and the Ferrari/resolvent reduction for quartics exhibit the roots by radicals. For n ≥ 5: exhibit one degree-n polynomial whose Galois group is not solvable (e.g. a polynomial reducing to X⁵−4X+2 with Galois group S₅, padded by linear factors to degree n), so by the forward direction of Abel–Ruffini some root is not in solvableByRad, refuting the universally-quantified left-hand side. Combining, the iff holds exactly at the boundary n ≤ 4.
theorem abel_ruffini (n : ℕ) (_hn : 1 ≤ n) :
(∀ p : ℚ[X], p.natDegree = n → ∀ x : ℂ, aeval x p = 0 →
x ∈ solvableByRad ℚ ℂ) ↔ n ≤ 4 := n:ℕ_hn:1 ≤ n⊢ (∀ (p : ℚ[X]), p.natDegree = n → ∀ (x : ℂ), (aeval x) p = 0 → x ∈ solvableByRad ℚ ℂ) ↔ n ≤ 4
All goals completed! 🐙The alternating sign matrix theorem
Submitter: Kim Morrison.
Notes: The number of n×n alternating sign matrices is the Robbins product ∏_{k<n} (3k+1)!/(n+k)! (Zeilberger 1994; Kuperberg 1996). Trusted helpers (IsAlternatingSignMatrix, ASMatrix, robbinsProduct, …) are non-holes. Mathlib has no ASM enumeration. Candidate from §168 of the Knill survey.
Source: D. Zeilberger (1996); G. Kuperberg (1996). Knill, §168.
Informal solution: Unavailable.
theorem alternating_sign_matrix_count (n : ℕ) :
(Nat.card (LeanEval.Combinatorics.AlternatingSignMatrix.ASMatrix n) : ℚ) = LeanEval.Combinatorics.AlternatingSignMatrix.robbinsProduct n := n:ℕ⊢ ↑(Nat.card (ASMatrix n)) = robbinsProduct n
All goals completed! 🐙Anosov–Bowen shadowing lemma
Submitter: Kim Morrison.
Notes: Every compact hyperbolic invariant set K ⊆ ℝᵈ of a C¹ diffeomorphism T : ℝᵈ → ℝᵈ admits an open neighbourhood U ⊇ K such that every ε-pseudo-orbit of T inside U is δ-close to a true forward T-orbit (for ε sufficiently small relative to δ). Hyperbolicity is bundled as a `HyperbolicStructure': a pointwise stable/unstable splitting `ℝᵈ = Eˢ x ⊕ Eᵘ x' for each `x ∈ K' with the uniform exponential contraction/expansion estimates of Anosov's original definition (rate `λ ∈ (0,1)`, constant `C > 0`). The standard textbook definition additionally asks for the splitting to be continuous in `x'; this submission encodes only the pointwise content with uniform constants — the minimal data the shadowing proof depends on. The Euclidean ℝᵈ formulation is a faithful finite-dimensional local model, avoiding the smooth-manifold and tangent-bundle infrastructure mathlib does not yet package. §67 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: D.V. Anosov, 'Geodesic flows on closed Riemannian manifolds with negative curvature', Trudy Mat. Inst. Steklov. 90 (1967); R. Bowen, 'ω-limit sets for Axiom A diffeomorphisms', J. Differential Equations 18 (1975) 333–339. Listed as §67 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classical proof uses (i) **cone fields**: a smooth field of stable and unstable cones around the splitting that is forward-invariant under `dT` (resp. backward-invariant under `dT⁻¹`); (ii) **graph transform**: the local stable/unstable manifolds at each point are constructed as fixed points of a contraction on the space of graphs over `Eˢ` (resp. `Eᵘ`) inside the cone field; (iii) **shadowing fixed point**: an ε-pseudo-orbit `(xₙ)` in a small neighbourhood of `K` is shadowed by a true orbit obtained as the fixed point of a contraction on bounded sequences `(yₙ)` with `yₙ` near `xₙ`, the contraction being a uniform consequence of the hyperbolic splitting. Mathlib has `fderiv`, `ContDiff`, `Submodule` complementarity (`IsCompl`), and `Function.iterate`, but no hyperbolic-dynamics infrastructure: no cone fields, no graph-transform machinery, no shadowing theorem, no Anosov / Axiom A diffeomorphism predicates.
theorem hyperbolic_has_shadowing (T : LeanEval.Dynamics.HyperbolicShadowingProblem.E d ≃ₜ LeanEval.Dynamics.HyperbolicShadowingProblem.E d) (K : Set (LeanEval.Dynamics.HyperbolicShadowingProblem.E d))
(_hKc : IsCompact K) (_hK : LeanEval.Dynamics.HyperbolicShadowingProblem.IsHyperbolic T K) :
LeanEval.Dynamics.HyperbolicShadowingProblem.HasShadowing (T : LeanEval.Dynamics.HyperbolicShadowingProblem.E d → LeanEval.Dynamics.HyperbolicShadowingProblem.E d) K := d:ℕT:E d ≃ₜ E dK:Set (E d)_hKc:IsCompact K_hK:IsHyperbolic T K⊢ HasShadowing (⇑T) K
All goals completed! 🐙Baer–Suzuki theorem
Submitter: Kim Morrison.
Notes: An element x of a finite group G lies in the p-core O_p(G) iff every pair (x, x^g) of conjugates generates a p-group. R. Baer, 'Engelsche Elemente Noetherscher Gruppen', Math. Ann. 133 (1957), 256-270 (the case p = 2); M. Suzuki, 'Finite groups in which the centralizer of any element of order 2 is 2-closed', Ann. of Math. 82 (1965), 191-212 (general p). A standard tool in CFSG-era local analysis, used together with the Bender method and signalizer functor theory. Introduces a small Defs/PCore.lean defining the p-core O_p(G) as the supremum of normal p-subgroups (Mathlib has no `pCore` operation).
Source: R. Baer, Engelsche Elemente Noetherscher Gruppen, Math. Ann. 133 (1957), 256-270; M. Suzuki, Finite groups in which the centralizer of any element of order 2 is 2-closed, Ann. of Math. (2) 82 (1965), 191-212.
Informal solution: Forward: O_p(G) is a normal p-subgroup, so it contains both x and x^g and hence their generated subgroup, which is therefore a p-group. Reverse (the deep direction): assume by minimal counterexample. The hypothesis ⟨x, x^g⟩ a p-group for all g (taking g = 1) forces x to be a p-element. Suzuki's original proof passes to a faithful representation and exploits a transitivity argument on the set of conjugates of x. The cleanest modern proof (Aschbacher, *Finite Group Theory*, §31) routes through the lemma that if every two conjugates of x generate a p-group, then ⟨x^G⟩ — the normal closure of x — is itself a p-group, hence contained in O_p(G).
theorem baer_suzuki {G : Type*} [Group G] [Finite G]
{p : ℕ} [Fact p.Prime] (x : G) :
x ∈ LeanEval.GroupTheory.Defs.pCore p G ↔
∀ g : G, IsPGroup p
(Subgroup.closure ({x, g * x * g⁻¹} : Set G)) := G:Type u_1inst✝²:Group Ginst✝¹:Finite Gp:ℕinst✝:Fact (Nat.Prime p)x:G⊢ x ∈ pCore p G ↔ ∀ (g : G), IsPGroup p ↥(Subgroup.closure {x, g * x * g⁻¹})
All goals completed! 🐙Baker-Wüstholz theorem on linear forms in logarithms
bakerWustholz_linearForms_logs
Submitter: Ralf Stephan.
Notes: Unavailable.
Source: A. Baker, G. Wüstholz, Logarithmic forms and group varieties, J. reine angew. Math. 442 (1993), 19-62.
Informal solution: Unavailable.
theorem bakerWustholz_linearForms_logs {n : ℕ} (hn : 0 < n)
{K : Type*} [Field K] [NumberField K] (φ : K →+* ℂ)
(α : Fin n → K) (hα : ∀ i, α i ≠ 0)
(b : Fin n → ℤ) {B : ℕ} (hB : 2 ≤ B) (hbB : ∀ i, (b i).natAbs ≤ B)
(hΛ_ne_zero : (∑ i, (b i : ℂ) * Complex.log (φ (α i))) ≠ 0) :
Real.log ‖∑ i, (b i : ℂ) * Complex.log (φ (α i))‖
≥ -(BakerWustholz.C n (Module.finrank ℚ K)
* max (Real.log B) (1 / (Module.finrank ℚ K : ℝ))
* ∏ i, BakerWustholz.modifiedHeight φ (α i)) := n:ℕhn:0 < nK:Type u_1inst✝¹:Field Kinst✝:NumberField Kφ:K →+* ℂα:Fin n → Khα:∀ (i : Fin n), α i ≠ 0b:Fin n → ℤB:ℕhB:2 ≤ BhbB:∀ (i : Fin n), (b i).natAbs ≤ BhΛ_ne_zero:∑ i, ↑(b i) * log (φ (α i)) ≠ 0⊢ Real.log ‖∑ i, ↑(b i) * log (φ (α i))‖ ≥
-(BakerWustholz.C n (Module.finrank ℚ K) * max (Real.log ↑B) (1 / ↑(Module.finrank ℚ K)) *
∏ i, BakerWustholz.modifiedHeight φ (α i))
All goals completed! 🐙Balanceable k-bounded partitions
balanceable_bounded_partitions
Submitter: Julia M. Himmel.
Notes: Unavailable.
Source: https://projecteuler.net/problem=772
Informal solution: Unavailable.
theorem minimal_balanceable_of_bounded (k : ℕ) (hk : 0 < k) :
Minimal (fun n => 0 < n ∧ ∀ p : n.Partition, LeanEval.Combinatorics.Bounded k p → LeanEval.Combinatorics.Balanceable p) (2 * (Finset.Icc 1 k).lcm id) := k:ℕhk:0 < k⊢ Minimal (fun n => 0 < n ∧ ∀ (p : n.Partition), Bounded k p → Balanceable p) (2 * (Finset.Icc 1 k).lcm id)
All goals completed! 🐙Bourbaki's locally convex extension of Banach–Alaoglu
Submitter: Kim Morrison.
Notes: §137 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. Bourbaki's locally convex Banach–Alaoglu theorem states that, for any real locally convex topological vector space E, the weak-star polar of a neighbourhood of 0 is compact in the weak dual. This extends the familiar normed-space Banach–Alaoglu theorem from closed dual balls to polars of zero-neighbourhoods in arbitrary locally convex spaces. Mathlib currently has the normed-space results WeakDual.isCompact_closedBall and WeakDual.isCompact_polar, but no corresponding compactness theorem for general locally convex spaces.
Source: N. Bourbaki, Espaces vectoriels topologiques; the normed case is L. Alaoglu, Ann. of Math. 41 (1940). Listed as §137 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Realise each functional φ ∈ WeakDual ℝ E by its restriction to the neighbourhood U, embedding the polar into the product ∏_{x ∈ U} [−1, 1] (φ ↦ (φ x)). The polar maps into this product because |φ x| ≤ 1 on U; by Tychonoff the product is compact. The image is closed: the conditions ‖φ x‖ ≤ 1 (closed) and linearity/continuity of φ (preserved under pointwise limits, using that U absorbs E so a pointwise limit of equicontinuous functionals is again continuous and linear) are closed in the product topology, which coincides with the weak-star topology on the polar. Hence the polar is a closed subset of a compact space, so compact.
theorem banach_alaoglu_bourbaki (E : Type*) [AddCommGroup E] [Module ℝ E]
[TopologicalSpace E] [ContinuousAdd E] [ContinuousSMul ℝ E]
[LocallyConvexSpace ℝ E] (U : Set E) (_hU : U ∈ 𝓝 (0 : E)) :
IsCompact (LeanEval.Analysis.weakStarPolar E U) := E:Type u_1inst✝⁵:AddCommGroup Einst✝⁴:Module ℝ Einst✝³:TopologicalSpace Einst✝²:ContinuousAdd Einst✝¹:ContinuousSMul ℝ Einst✝:LocallyConvexSpace ℝ EU:Set E_hU:U ∈ 𝓝 0⊢ IsCompact (weakStarPolar E U)
All goals completed! 🐙Bauer's uniqueness at extreme points
bauer_extreme_point_uniqueness
Submitter: Kim Morrison.
Notes: If x is an extreme point of a compact convex set K in a Banach space and μ is a probability measure on K (μ Kᶜ = 0) with barycenter x = ∫ y ∂μ, then μ is the Dirac mass at x. The support hypothesis is the weaker μ Kᶜ = 0, making this a strengthening of the textbook statement (uniqueness among all ambient Borel probability measures on K, not only those supported on ext K). Not in Mathlib (no Choquet simplices / Bauer's theorem); no new definitions. Companion candidate from §88 of the Knill survey.
Source: H. Bauer, *Minimalstellen von Funktionen und Extremalpunkte*, Arch. Math. 9 (1958), 389–393; see also Phelps, *Lectures on Choquet's Theorem*. Knill, *Some fundamental theorems in mathematics*, §88.
Informal solution: Since x is extreme, it is not a nontrivial convex combination, and the barycenter map is injective at extreme points. Argument: suppose μ ≠ δ_x. Then μ is not concentrated at x, so there is a closed half-space / continuous affine functional separating part of the mass; split μ = t·μ₁ + (1−t)·μ₂ with distinct barycenters b₁ ≠ b₂ both in K whose convex combination is x, contradicting extremality of x. Hence μ({x}) = 1, i.e. μ = Measure.dirac x. (Uses that the barycenter ∫ y ∂μ is well defined — μ Kᶜ = 0 with K compact makes id integrable.)
theorem bauer_unique [MeasurableSpace X] [BorelSpace X]
(K : Set X) (hK_cpt : IsCompact K) (hK_cvx : Convex ℝ K)
{x : X} (hx : x ∈ K.extremePoints ℝ)
(μ : Measure X) [IsProbabilityMeasure μ]
(hμ : μ Kᶜ = 0) (hbar : x = ∫ y, y ∂μ) :
μ = Measure.dirac x := X:Type u_1inst✝⁵:NormedAddCommGroup Xinst✝⁴:NormedSpace ℝ Xinst✝³:CompleteSpace Xinst✝²:MeasurableSpace Xinst✝¹:BorelSpace XK:Set XhK_cpt:IsCompact KhK_cvx:Convex ℝ Kx:Xhx:x ∈ Set.extremePoints ℝ Kμ:Measure Xinst✝:IsProbabilityMeasure μhμ:μ Kᶜ = 0hbar:x = ∫ (y : X), y ∂μ⊢ μ = Measure.dirac x
All goals completed! 🐙Bézout's theorem (projective, with multiplicity)
bezout_projective_multiplicity
Submitter: Kim Morrison.
Notes: For n homogeneous polynomials f_k of total degrees d_k ≥ 1 in n + 1 variables over an algebraically closed field with finite common projective zero set, the sum of intersection multiplicities equals ∏ d_k (equation in ℕ∞). The intersection multiplicity is constructed via the affine cone (Eisenbud Ch. 12): pick an index i with p.rep i ≠ 0, normalise the i-th coordinate to 1, localise K[X_0, …, X_n] at the maximal ideal of the resulting affine point, and take Module.length K of the quotient by (f_1, …, f_n, X_i − 1). §50 of Knill's 'Some Fundamental Theorems in Mathematics'.
Source: É. Bézout, *Théorie générale des équations algébriques*, Paris, 1779. Modern projective formulation: see Eisenbud, *Commutative Algebra*, Chapter 12, or Hartshorne, *Algebraic Geometry*, Ch. I §7. Listed as §50 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Standard proof via Hilbert series: cutting the homogeneous coordinate ring K[X_0, …, X_n] by the regular sequence f_1, …, f_n gives an Artinian graded algebra whose total length is ∏ d_k (Macaulay 1916). The local-Hilbert-series decomposition redistributes this length as a sum over the finitely many intersection points. Alternative deformation proof: degenerate the f_k continuously to f̃_k = ∏_j (X_{k+1} − α_{k,j} · X_0) for distinct α_{k,j} ∈ K; the deformed intersection has exactly ∏ d_k transverse points (multiplicity 1 each); continuity of the Hilbert function under flat families shows the multiplicity sum is preserved.
theorem bezout_multiplicity [IsAlgClosed K] {n : ℕ}
(f : Fin n → MvPolynomial (Fin (n + 1)) K)
(d : Fin n → ℕ) (_hd : ∀ k, (f k).IsHomogeneous (d k))
(_hdeg : ∀ k, (f k).totalDegree = d k)
(_hd_pos : ∀ k, 1 ≤ d k)
(_hfin : (⋂ k, LeanEval.AlgebraicGeometry.vanishingSet (f k)).Finite) :
∑ᶠ p ∈ (⋂ k, LeanEval.AlgebraicGeometry.vanishingSet (f k)), intersectionMultiplicity f p
= (∏ k, d k : ℕ∞) := K:Type u_1inst✝¹:Field Kinst✝:IsAlgClosed Kn:ℕf:Fin n → MvPolynomial (Fin (n + 1)) Kd:Fin n → ℕ_hd:∀ (k : Fin n), (f k).IsHomogeneous (d k)_hdeg:∀ (k : Fin n), (f k).totalDegree = d k_hd_pos:∀ (k : Fin n), 1 ≤ d k_hfin:(⋂ k, vanishingSet (f k)).Finite⊢ ∑ᶠ (p : ProjSpace K n) (_ : p ∈ ⋂ k, vanishingSet (f k)), intersectionMultiplicity f p = ∏ k, ↑(d k)
All goals completed! 🐙Boone–Higman theorem (easy direction)
Submitter: Kim Morrison.
Notes: If a finitely presented group G embeds in a simple group H that embeds in a finitely presented group K, then G has a solvable word problem — the 'if' half of the Boone–Higman characterisation. Trusted helper WordProblemSolvable (non-hole) via ComputablePred. Mathlib has finitely-presented/free/simple groups and computability but no word-problem notion or Boone–Higman theorem. The main Kuznetsov/Boone–Higman, Novikov, and Higman-infinite-simple statements of §122 are already in lean-eval. Candidate from §122 (additional 1).
Source: W. W. Boone & G. Higman, *An algebraic characterization of groups with soluble word problem*, J. Austral. Math. Soc. 18 (1974). Knill, *Some fundamental theorems in mathematics*, §122.
Informal solution: The easy direction. Embed G ↪ H ↪ K with H simple and K finitely presented. The word problem of K is recursively enumerable from its finite presentation (enumerate consequences of the relators). Words of G equal to 1 are those mapping to 1 in K (via the composite injection), which is r.e.; words not equal to 1 are detected through the simple group H: adjoining a nontrivial element as a relator collapses H, making 'w ≠ 1' also r.e. Both r.e. ⇒ decidable, so G's word problem is solvable. Uses the Kuznetsov/Boone–Higman recursively-enumerable-from-both-sides argument (r.e. equality from K's finite presentation, r.e. inequality from H simple), absent from Mathlib.
theorem boone_higman_embedding {G H K : Type*} [Group G] [Group H] [Group K]
[IsSimpleGroup H] [Group.IsFinitelyPresented K]
(f : G →* H) (hf : Function.Injective f)
(g : H →* K) (hg : Function.Injective g)
{n : ℕ} (φ : FreeGroup (Fin n) →* G)
(hsurj : Function.Surjective φ)
(hker : (MonoidHom.ker φ).IsNormalClosureFG) :
LeanEval.GroupTheory.BooneHigmanEmbedding.WordProblemSolvable φ := G:Type u_1H:Type u_2K:Type u_3inst✝⁴:Group Ginst✝³:Group Hinst✝²:Group Kinst✝¹:IsSimpleGroup Hinst✝:Group.IsFinitelyPresented Kf:G →* Hhf:Function.Injective ⇑fg:H →* Khg:Function.Injective ⇑gn:ℕφ:FreeGroup (Fin n) →* Ghsurj:Function.Surjective ⇑φhker:φ.ker.IsNormalClosureFG⊢ WordProblemSolvable φ
All goals completed! 🐙Kuznetsov's theorem: finitely presented simple groups have solvable word problem
Submitter: Kim Morrison.
Notes: A finitely presented *simple* group has a decidable word problem. The word problem of a finite presentation φ : FreeGroup (Fin n) →* G is encoded as the predicate `w ↦ φ (FreeGroup.mk w) = 1' on `List (Fin n × Bool)' (signed-letter words); solvability is `ComputablePred' of that predicate — genuine algorithmic decidability via a Turing machine, not a bundled Prop. The hypotheses `hsurj` + `hker` unpack `Group.IsFinitelyPresented G` for this presentation. Solvability of the word problem is independent of the chosen finite presentation, so quantifying over an arbitrary one is the standard reading. §122 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: A.V. Kuznetsov, 'Algorithms as operations in algebraic systems', Uspekhi Mat. Nauk 13 (1958) 240–241 (Russian); W.W. Boone and G. Higman, 'An algebraic characterization of groups with soluble word problem', J. Austral. Math. Soc. 18 (1974) 41–53. §122 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Kuznetsov's argument is r.e.-from-both-sides. (1) The set of words `w' with `φ(w) = 1' is recursively enumerable: enumerate the relators and all of their formal consequences (conjugates, products, and inverses). (2) For a nontrivial simple group G, the *negation* `φ(w) ≠ 1' is also r.e.: if `w' is nontrivial in G, the normal closure of `w' is all of G, so adding `w = 1' as a relator collapses the presented group to the trivial group. Concretely, semi-decide `w ≠ 1' by enumerating consequences of `rels ∪ {w}' until each generator g_i is forced to equal 1; once that finite generator-collapse certificate appears, `w ≠ 1' is confirmed. (3) Both r.e. ⇒ decidable (the standard `r.e. ∧ co-r.e. ⇒ decidable' theorem). The lean-eval `IsSimpleGroup' typeclass extends `Nontrivial', so the trivial-group degeneracy is excluded automatically. Mathlib has `Group.IsFinitelyPresented', `Subgroup.IsNormalClosureFG', `FreeGroup', `PresentedGroup', `IsSimpleGroup', and the `ComputablePred` / `Computable` / `Partrec` stack, but no notion of a word problem, no Kuznetsov / Novikov result, and no r.e./co-r.e. machinery wired to group presentations.
theorem boone_higman_simple {G : Type*} [Group G] [IsSimpleGroup G]
{n : ℕ} (φ : FreeGroup (Fin n) →* G)
(_hsurj : Function.Surjective φ)
(_hker : (MonoidHom.ker φ).IsNormalClosureFG) :
LeanEval.GroupTheory.BooneHigmanSimpleProblem.WordProblemSolvable φ := G:Type u_1inst✝¹:Group Ginst✝:IsSimpleGroup Gn:ℕφ:FreeGroup (Fin n) →* G_hsurj:Function.Surjective ⇑φ_hker:φ.ker.IsNormalClosureFG⊢ WordProblemSolvable φ
All goals completed! 🐙Character values of finite groups lie in cyclotomic fields
brauer_character_in_cyclotomic
Submitter: Kim Morrison.
Notes: For a finite group G of exponent n, every value of every complex character of G lies in (the image of) the cyclotomic field ℚ(ζₙ). Stated uniformly for the fixed group G: there is a ring embedding φ : CyclotomicField (Monoid.exponent G) ℚ →+* ℂ whose range contains tr(ρ(g)) for every finite-dimensional complex representation ρ of G and every g. This is a corollary of Brauer's induction theorem; the full splitting-field statement (every irreducible representation has a ℚ(ζₙ)-form) is strictly stronger and requires more scalar-extension scaffolding than mathlib currently exposes cleanly.
Source: R. Brauer, On the representation of a group of order g in the field of g-th roots of unity, Amer. J. Math. 67 (1945).
Informal solution: Choose an embedding φ : ℚ(ζₙ) ↪ ℂ once and for all for the fixed group G. Then apply Brauer's induction theorem uniformly: every complex character of G is a ℤ-combination of characters induced from elementary subgroups, and those induced character values lie in φ(ℚ(ζₙ)). Hence for every finite-dimensional complex representation ρ of G and every g ∈ G, tr(ρ(g)) lies in φ.range.
theorem brauer_character_in_cyclotomic (G : Type) [Group G] [Fintype G] :
∃ φ : CyclotomicField (Monoid.exponent G) ℚ →+* ℂ,
∀ (V : Type) (_ : AddCommGroup V) (_ : Module ℂ V) (_ : FiniteDimensional ℂ V)
(ρ : Representation ℂ G V) (g : G),
LinearMap.trace ℂ V (ρ g) ∈ φ.range := G:Typeinst✝¹:Group Ginst✝:Fintype G⊢ ∃ φ,
∀ (V : Type) (x : AddCommGroup V) (x_1 : Module ℂ V),
FiniteDimensional ℂ V → ∀ (ρ : Representation ℂ G V) (g : G), (LinearMap.trace ℂ V) (ρ g) ∈ φ.range
All goals completed! 🐙Brauer–Fowler theorem
Submitter: Kim Morrison.
Notes: The order of a finite nonabelian simple group is bounded by a function of the order of any involution centralizer. R. Brauer and K. A. Fowler, 'On groups of even order', Ann. of Math. 62 (1955), 565-583. A foundational result of the CFSG programme: it reduced (in principle) the classification of finite simple groups to the analysis of involution centralizers — the strategy used by Brauer–Suzuki, Brauer–Suzuki–Wall, Janko, and many others to identify sporadic simple groups. Statement uses only Mathlib (IsSimpleGroup, Nat.card, Subgroup.centralizer, orderOf), no new definitions.
Source: R. Brauer and K. A. Fowler, On groups of even order, Ann. of Math. (2) 62 (1955), 565-583. https://doi.org/10.2307/1970080
Informal solution: Counting argument. For an involution t in a finite simple group G with C := |C_G(t)|, every pair of involutions a, b generates a dihedral subgroup ⟨a,b⟩ of order 2k for some k ≥ 1; the product ab has order k. Use the class equation and orbit-counting on conjugates of t to show that |G| divides (2C^2)! or a similar explicit factorial of a polynomial in C — any such bound furnishes the required f.
theorem brauer_fowler :
∃ f : ℕ → ℕ, ∀ (G : Type) [Group G] [Finite G],
IsSimpleGroup G → (∃ a b : G, a * b ≠ b * a) →
∀ t : G, orderOf t = 2 →
Nat.card G ≤ f (Nat.card (Subgroup.centralizer ({t} : Set G))) := ⊢ ∃ f,
∀ (G : Type) [inst : Group G] [Finite G],
IsSimpleGroup G →
(∃ a b, a * b ≠ b * a) → ∀ (t : G), orderOf t = 2 → Nat.card G ≤ f (Nat.card ↥(Subgroup.centralizer {t}))
All goals completed! 🐙Brauer's splitting field theorem
Submitter: Kim Morrison.
Notes: For a finite group G of exponent n, the cyclotomic field ℚ(ζₙ) is a splitting field for G: every finite-dimensional complex representation ρ of G descends to ℚ(ζₙ). Concretely, there exists an embedding φ : CyclotomicField n ℚ →+* ℂ, a ℚ(ζₙ)-representation (W, σ) of G, and a ℂ-linear G-equivariant isomorphism ℂ ⊗[ℚ(ζₙ)] W ≃ V (with ℂ viewed as a ℚ(ζₙ)-algebra via φ). The G-equivariance is expressed against the base-changed action `(σ g).baseChange ℂ`. Strictly stronger than the character-value statement `brauer_character_in_cyclotomic`, which follows by taking traces and is in fact elementary.
Source: R. Brauer, On the representation of a group of order g in the field of g-th roots of unity, Amer. J. Math. 67 (1945), 461–471.
Informal solution: Pick any embedding φ : ℚ(ζₙ) ↪ ℂ. By Maschke's theorem ρ decomposes as a direct sum of irreducible complex representations, so it suffices to descend each irreducible ρᵢ separately. Brauer's induction theorem expresses the character of each ρᵢ as a ℤ-combination of characters induced from one-dimensional characters of elementary subgroups; these one-dimensional characters take values in ℚ(ζₙ), so each induced representation is realised on a ℚ(ζₙ)-module. The Schur index of each ρᵢ over ℚ(ζₙ) is therefore 1, meaning ρᵢ itself descends to ℚ(ζₙ): there exists a ℚ(ζₙ)[G]-module Wᵢ with ℂ ⊗_{ℚ(ζₙ)} Wᵢ ≃ Vᵢ as ℂ[G]-modules. Assemble the Wᵢ into W and the isomorphisms into f to conclude.
theorem brauer_splitting_field (G : Type) [Group G] [Fintype G]
(V : Type) [AddCommGroup V] [Module ℂ V] [FiniteDimensional ℂ V]
(ρ : Representation ℂ G V) :
∃ (φ : CyclotomicField (Monoid.exponent G) ℚ →+* ℂ)
(W : Type) (_ : AddCommGroup W)
(_ : Module (CyclotomicField (Monoid.exponent G) ℚ) W)
(σ : Representation (CyclotomicField (Monoid.exponent G) ℚ) G W),
letI : Algebra (CyclotomicField (Monoid.exponent G) ℚ) ℂ := φ.toAlgebra
∃ (f : (ℂ ⊗[CyclotomicField (Monoid.exponent G) ℚ] W) ≃ₗ[ℂ] V),
∀ (g : G) (x : ℂ ⊗[CyclotomicField (Monoid.exponent G) ℚ] W),
f ((σ g).baseChange ℂ x) = ρ g (f x) := G:Typeinst✝⁴:Group Ginst✝³:Fintype GV:Typeinst✝²:AddCommGroup Vinst✝¹:Module ℂ Vinst✝:FiniteDimensional ℂ Vρ:Representation ℂ G V⊢ ∃ φ W x x_1 σ f,
∀ (g : G) (x_2 : ℂ ⊗[CyclotomicField (Monoid.exponent G) ℚ] W), f ((LinearMap.baseChange ℂ (σ g)) x_2) = (ρ g) (f x_2)
All goals completed! 🐙Brauer–Suzuki theorem (quaternion Sylow 2-subgroup)
Submitter: Kim Morrison.
Notes: If a finite group G has generalized quaternion Sylow 2-subgroups, then the unique involution of G maps to a central element of G/O(G), where O(G) is the largest normal odd-order subgroup. R. Brauer and M. Suzuki, 'On finite groups of even order whose 2-Sylow group is a quaternion group', Proc. Nat. Acad. Sci. U.S.A. 45 (1959), 1757-1759. Historical precursor of Glauberman's Z*-theorem (1966) and the local-analysis programme in CFSG. Introduces Defs/OddCore.lean defining O(G) as the supremum of all normal odd-order subgroups (Mathlib has no `oddCore` operation).
Source: R. Brauer and M. Suzuki, On finite groups of even order whose 2-Sylow group is a quaternion group, Proc. Nat. Acad. Sci. U.S.A. 45 (1959), 1757-1759. https://doi.org/10.1073/pnas.45.12.1757
Informal solution: The argument is character-theoretic and proceeds via a careful analysis of the principal 2-block of G. In a generalized quaternion 2-Sylow P, the unique involution z = a^{2^{n-2}} is central in P (where a is the generator of the cyclic maximal subgroup of P). Brauer's principal-block reformulation: z lies in the kernel of every ordinary irreducible character not in the principal 2-block, plus an analysis of how the principal block's characters restrict to ⟨z⟩, forces z·O(G) into the center of G/O(G). Modern simplification: Glauberman's Z*-theorem, of which Brauer-Suzuki is the prototypical case, says any isolated involution is in Z*(G); the unique involution of a generalized-quaternion Sylow 2-subgroup is automatically isolated.
theorem brauer_suzuki {G : Type*} [Group G] [Finite G]
(n : ℕ) (hn : 3 ≤ n)
(P : Sylow 2 G)
(hquat : Nonempty ((P : Subgroup G) ≃* QuaternionGroup (2 ^ (n - 2))))
(t : G) (ht_mem : t ∈ (P : Subgroup G)) (ht_ord : orderOf t = 2) :
(QuotientGroup.mk t : G ⧸ LeanEval.GroupTheory.Defs.oddCore G) ∈
Subgroup.center (G ⧸ LeanEval.GroupTheory.Defs.oddCore G) := G:Type u_1inst✝¹:Group Ginst✝:Finite Gn:ℕhn:3 ≤ nP:Sylow 2 Ghquat:Nonempty (↥↑P ≃* QuaternionGroup (2 ^ (n - 2)))t:Ght_mem:t ∈ ↑Pht_ord:orderOf t = 2⊢ ↑t ∈ Subgroup.center (G ⧸ oddCore G)
All goals completed! 🐙Brouwer fixed-point theorem
Submitter: Kim Morrison.
Notes: §33 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' (additional statement of the game-theory section; Brouwer underlies Nash's 1950 proof of equilibrium existence). Every continuous self-map of a nonempty compact convex K ⊆ ℝᵈ has a fixed point. Mathlib has the Banach fixed-point theorem (strictly weaker — needs Lipschitz < 1); `grep -ri brouwer` returns only Brouwerian lattices/logics. Brouwer is theorem #36 on Freek Wiedijk's 'Formalizing 100 Theorems' list and is formalized in Lean outside mathlib (per docs/100.yaml `links` entry), in Isabelle/AFP, HOL Light, and Coq.
Source: L. E. J. Brouwer, Über Abbildung von Mannigfaltigkeiten, Math. Ann. 71 (1912). Listed as §33 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf); also #36 on Freek Wiedijk's 100 list (https://www.cs.ru.nl/~freek/100/).
Informal solution: Reduce to the closed unit ball B^d via a homeomorphism (any nonempty compact convex K ⊆ ℝᵈ is homeomorphic to a closed ball of the appropriate dimension). On the ball, suppose for contradiction f has no fixed point; then for each x ∈ B^d the ray from f(x) through x meets ∂B^d in a unique point r(x), defining a continuous retraction r : B^d → ∂B^d with r|∂B^d = id. Such a retraction is impossible by a homotopy/homology argument (the sphere S^{d-1} is not contractible / has H_{d-1} = ℤ while the ball has trivial reduced homology), giving a contradiction. Alternative proofs go through Sperner's lemma, simplicial approximation, or homotopy invariance of degree.
theorem brouwer_fixed_point {d : ℕ}
{K : Set (EuclideanSpace ℝ (Fin d))}
(_hK_compact : IsCompact K) (_hK_convex : Convex ℝ K)
(_hK_nonempty : K.Nonempty)
(f : EuclideanSpace ℝ (Fin d) → EuclideanSpace ℝ (Fin d))
(_hf_cont : ContinuousOn f K) (_hf_maps : MapsTo f K K) :
∃ x ∈ K, f x = x := d:ℕK:Set (EuclideanSpace ℝ (Fin d))_hK_compact:IsCompact K_hK_convex:Convex ℝ K_hK_nonempty:K.Nonemptyf:EuclideanSpace ℝ (Fin d) → EuclideanSpace ℝ (Fin d)_hf_cont:ContinuousOn f K_hf_maps:MapsTo f K K⊢ ∃ x ∈ K, f x = x
All goals completed! 🐙Comparison principle for the Dirichlet BVP
Submitter: Kim Morrison.
Notes: 1D maximum principle: -u'' <= -v'' on (0,1) and u <= v at the endpoints implies u <= v on [0,1].
Source: Standard maximum-principle argument; Protter-Weinberger.
Informal solution: From -u'' <= -v'' we get (u - v)'' >= 0 on (0, 1), so u - v is convex on [0, 1] (using continuity at the endpoints). A convex function lies below its chord, which here is non-positive at both endpoints, so u - v <= chord <= 0. A perturbation form: psi := (u - v) - delta x (1 - x) is strictly convex (psi'' >= 2 delta > 0) and attains its supremum at the boundary, where psi <= 0; let delta -> 0+.
theorem bvp_comparison (J : Set ℝ) (hJ_open : IsOpen J) (hJ_sub : Set.Icc (0 : ℝ) 1 ⊆ J)
(u v : ℝ → ℝ)
(hu : ∀ x ∈ J, HasDerivAt u (deriv u x) x)
(hu' : ∀ x ∈ J, HasDerivAt (deriv u) (deriv (deriv u) x) x)
(hv : ∀ x ∈ J, HasDerivAt v (deriv v x) x)
(hv' : ∀ x ∈ J, HasDerivAt (deriv v) (deriv (deriv v) x) x)
(hineq : ∀ x ∈ Set.Ioo (0 : ℝ) 1, -deriv (deriv u) x ≤ -deriv (deriv v) x)
(hu0 : u 0 ≤ v 0) (hu1 : u 1 ≤ v 1) :
∀ x ∈ Set.Icc (0 : ℝ) 1, u x ≤ v x := J:Set ℝhJ_open:IsOpen JhJ_sub:Set.Icc 0 1 ⊆ Ju:ℝ → ℝv:ℝ → ℝhu:∀ x ∈ J, HasDerivAt u (deriv u x) xhu':∀ x ∈ J, HasDerivAt (deriv u) (deriv (deriv u) x) xhv:∀ x ∈ J, HasDerivAt v (deriv v x) xhv':∀ x ∈ J, HasDerivAt (deriv v) (deriv (deriv v) x) xhineq:∀ x ∈ Set.Ioo 0 1, -deriv (deriv u) x ≤ -deriv (deriv v) xhu0:u 0 ≤ v 0hu1:u 1 ≤ v 1⊢ ∀ x ∈ Set.Icc 0 1, u x ≤ v x
All goals completed! 🐙Cauchy–Kovalevskaya theorem
Submitter: Kim Morrison.
Notes: §32 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The quasi-linear scalar Cauchy problem with real-analytic data has a unique local analytic solution. Stated with off-the-shelf mathlib (AnalyticOnNhd, fderiv, EuclideanSpace); the PDE is encoded through the Fréchet derivative, with fderiv u p (0,1) the time derivative and fderiv u p (v,0) the spatial directional derivative. Mathlib has no Cauchy-Kovalevskaya theorem, and no formalization of it was found in any other proof assistant.
Source: A.-L. Cauchy (1842) and S. Kovalevskaya (1875). Listed as §32 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Construct the solution as a formal power series in (x, t) whose coefficients are determined recursively by differentiating the PDE and using the initial data; prove convergence by the method of majorants — bound the analytic data F, f, u₀ by geometric majorants for which the majorant Cauchy problem has an explicitly convergent closed-form solution, so the formal series converges on a neighborhood and is analytic there. Uniqueness holds because the power-series coefficients of any analytic solution with the given initial data are forced by the equation.
theorem cauchy_kovalevskaya {d : ℕ}
(F : LeanEval.Analysis.E d × ℝ × ℝ → LeanEval.Analysis.E d) (f : LeanEval.Analysis.E d × ℝ × ℝ → ℝ) (u₀ : LeanEval.Analysis.E d → ℝ)
(_hF : AnalyticOnNhd ℝ F univ) (_hf : AnalyticOnNhd ℝ f univ)
(_hu₀ : AnalyticOnNhd ℝ u₀ univ) (x₀ : LeanEval.Analysis.E d) :
∃ (U : Set (LeanEval.Analysis.E d × ℝ)) (u : LeanEval.Analysis.E d × ℝ → ℝ),
(x₀, (0 : ℝ)) ∈ U ∧ IsOpen U ∧ AnalyticOnNhd ℝ u U ∧
(∀ x : LeanEval.Analysis.E d, (x, (0 : ℝ)) ∈ U → u (x, 0) = u₀ x) ∧
(∀ p ∈ U,
fderiv ℝ u p ((0 : LeanEval.Analysis.E d), (1 : ℝ)) =
fderiv ℝ u p (F (p.1, p.2, u p), (0 : ℝ)) + f (p.1, p.2, u p)) ∧
(∀ v : LeanEval.Analysis.E d × ℝ → ℝ, AnalyticOnNhd ℝ v U →
(∀ x : LeanEval.Analysis.E d, (x, (0 : ℝ)) ∈ U → v (x, 0) = u₀ x) →
(∀ p ∈ U,
fderiv ℝ v p ((0 : LeanEval.Analysis.E d), (1 : ℝ)) =
fderiv ℝ v p (F (p.1, p.2, v p), (0 : ℝ)) + f (p.1, p.2, v p)) →
∀ p ∈ U, u p = v p) := d:ℕF:E d × ℝ × ℝ → E df:E d × ℝ × ℝ → ℝu₀:E d → ℝ_hF:AnalyticOnNhd ℝ F univ_hf:AnalyticOnNhd ℝ f univ_hu₀:AnalyticOnNhd ℝ u₀ univx₀:E d⊢ ∃ U u,
(x₀, 0) ∈ U ∧
IsOpen U ∧
AnalyticOnNhd ℝ u U ∧
(∀ (x : E d), (x, 0) ∈ U → u (x, 0) = u₀ x) ∧
(∀ p ∈ U, (fderiv ℝ u p) (0, 1) = (fderiv ℝ u p) (F (p.1, p.2, u p), 0) + f (p.1, p.2, u p)) ∧
∀ (v : E d × ℝ → ℝ),
AnalyticOnNhd ℝ v U →
(∀ (x : E d), (x, 0) ∈ U → v (x, 0) = u₀ x) →
(∀ p ∈ U, (fderiv ℝ v p) (0, 1) = (fderiv ℝ v p) (F (p.1, p.2, v p), 0) + f (p.1, p.2, v p)) →
∀ p ∈ U, u p = v p
All goals completed! 🐙Cerf's theorem: every self-diffeomorphism of S3 is smoothly isotopic to a linear isometry
Submitter: Kim Morrison.
Notes: Cerf's 1968 theorem, the X = point (unparameterized) case of the Smale conjecture. Stated as the existence of a smooth isotopy [0,1] x S3 -> S3 from f to a linear isometry, witnessed by a smooth slice-inverse to encode the diffeomorphism property of each slice without needing a topology on Diffeomorph.
Source: J. Cerf, Sur les diffeomorphismes de la sphere de dimension trois, Lecture Notes in Mathematics 53, Springer (1968).
Informal solution: Cerf's original proof uses pseudo-isotopy theory: a self-diffeomorphism of S3 extends to a pseudo-isotopy of D4, and Cerf's theorem on the triviality of pi_0 of the pseudo-isotopy space in dimension 4 implies the extension is isotopic to a genuine isotopy. Hatcher (1983) reproved this as a corollary of the full Smale conjecture using configurations of 2-spheres.
theorem cerf_gamma_four (f : sphere (0 : EuclideanSpace ℝ (Fin 4)) 1 ≃ₘ⟮𝓡 3, 𝓡 3⟯
sphere (0 : EuclideanSpace ℝ (Fin 4)) 1) :
∃ (A : Matrix.orthogonalGroup (Fin 4) ℝ)
(F F' : unitInterval × sphere (0 : EuclideanSpace ℝ (Fin 4)) 1 →
sphere (0 : EuclideanSpace ℝ (Fin 4)) 1),
ContMDiff ((𝓡∂ 1).prod (𝓡 3)) (𝓡 3) ∞ F ∧
ContMDiff ((𝓡∂ 1).prod (𝓡 3)) (𝓡 3) ∞ F' ∧
(∀ t p, F (t, F' (t, p)) = p) ∧
(∀ t p, F' (t, F (t, p)) = p) ∧
(∀ p, F (0, p) = f p) ∧
(∀ p, (F (1, p) : EuclideanSpace ℝ (Fin 4)) =
Matrix.UnitaryGroup.toLinearEquiv A
(p : EuclideanSpace ℝ (Fin 4))) := f:↑(sphere 0 1) ≃ₘ⟮𝓡 3, 𝓡 3⟯ ↑(sphere 0 1)⊢ ∃ A F F',
ContMDiff ((𝓡∂ 1).prod (𝓡 3)) (𝓡 3) ∞ F ∧
ContMDiff ((𝓡∂ 1).prod (𝓡 3)) (𝓡 3) ∞ F' ∧
(∀ (t : ↑unitInterval) (p : ↑(sphere 0 1)), F (t, F' (t, p)) = p) ∧
(∀ (t : ↑unitInterval) (p : ↑(sphere 0 1)), F' (t, F (t, p)) = p) ∧
(∀ (p : ↑(sphere 0 1)), F (0, p) = f p) ∧
∀ (p : ↑(sphere 0 1)), (↑(F (1, p))).ofLp = (Matrix.UnitaryGroup.toLinearEquiv A) (↑p).ofLp
All goals completed! 🐙Hardy–Littlewood sign-change for the prime race mod 4
Submitter: Kim Morrison.
Notes: The difference π₃(n) − π₁(n), where πᵢ(n) counts primes ≤ n congruent to i mod 4, takes both positive and negative values infinitely often. Chebyshev (1853) observed the empirical bias toward π₃(n) > π₁(n); Hardy and Littlewood (1914) proved unconditionally that π₁ nevertheless overtakes π₃ infinitely often, and the reverse direction is the typical Chebyshev-bias inequality. §106 of Knill's *Some Fundamental Theorems in Mathematics* lists this under the metamathematical 'strong law of small numbers'; the formalised theorem here is the Hardy–Littlewood sign-change theorem.
Source: G.H. Hardy and J.E. Littlewood, 'Contributions to the theory of the Riemann zeta-function and the theory of the distribution of primes', Acta Math. 41 (1916) 119–196 (announced 1914). Chebyshev's original observation: P. Chebyshev, letter to M. Fuss, 1853, in *Œuvres de P.L. Tchebychef*, vol. I (Saint Petersburg, 1899). Listed as §106 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: This is an analytic-number-theory theorem of Hardy and Littlewood. The modern argument studies the difference π₃(x) − π₁(x) via the non-trivial real Dirichlet character χ modulo 4 and explicit-formula methods for the Dirichlet L-function L(s, χ): the functional equation, the non-vanishing of L(s, χ) for Re(s) ≥ 1, and an oscillation contribution from the non-trivial zeros together force the difference to take both signs infinitely often. The result is unconditional, but the analytic machinery — Riemann's explicit formula and quantitative prime-counting in arithmetic progressions — is well beyond mathlib v4.30.0-rc2. Mathlib has the elementary infrastructure used in the *statement* (`Nat.Prime`, `ZMod`, `Nat.primeCounting`, `Filter.limsup`/`liminf`, and Dirichlet's existence theorem for primes in arithmetic progressions via `Mathlib/NumberTheory/LSeries/PrimesInAP.lean`), but no Hardy–Littlewood sign-change framework; the `PrimeNumberTheoremAnd` external project still has PNT itself sorried.
theorem chebyshev_sign_change :
LeanEval.NumberTheory.ChebyshevSignChangeProblem.chebyshevLead.Infinite ∧
{n : ℕ | primeCountingMod 3 n < primeCountingMod 1 n}.Infinite := ⊢ chebyshevLead.Infinite ∧ {n | primeCountingMod 3 n < primeCountingMod 1 n}.Infinite
All goals completed! 🐙Choquet's representation theorem
choquet_representation_theorem
Submitter: Kim Morrison.
Notes: In a Banach space, every point of a compact convex set K is the barycenter ∫ y ∂μ of a probability measure μ supported on the extreme points of K (μ (ext K)ᶜ = 0). A norm-compact set is metrizable, so the extreme points are Borel and Choquet's theorem proper applies; the literal 'supported on ext K' rendering is faithful. Mathlib has Krein–Milman (closure_convexHull_extremePoints) and Convex.integral_mem but not Choquet's theorem, and no measure-theoretic barycenter operator. No new definitions beyond Mathlib's Set.extremePoints, IsProbabilityMeasure, and the Bochner integral. Candidate from §88 of the Knill survey.
Source: G. Choquet, *Existence et unicité des représentations intégrales au moyen des points extrémaux dans les cônes convexes*, Séminaire Bourbaki (1956). Knill, *Some fundamental theorems in mathematics*, §88.
Informal solution: For metrizable compact convex K, build the representing measure by the classical Choquet argument: choose a strictly convex lower-semicontinuous function and maximize ∫ over probability measures with barycenter x; a maximizer is supported on the extreme points (a non-extreme support point would admit a dilation strictly increasing the integral). Concretely, take a strictly convex continuous f, let μ maximize ∫ f over the (weak-* compact, convex) set of probability measures with barycenter x; maximality in the Choquet ordering forces a maximal representing measure, which in the metrizable compact case can be chosen supported on ext K. Use Krein–Milman / Bauer's maximum principle and the Choquet ordering on measures.
theorem choquet [MeasurableSpace X] [BorelSpace X]
(K : Set X) (hK_cpt : IsCompact K) (hK_cvx : Convex ℝ K)
{x : X} (hx : x ∈ K) :
∃ μ : Measure X, IsProbabilityMeasure μ ∧
μ (K.extremePoints ℝ)ᶜ = 0 ∧
x = ∫ y, y ∂μ := X:Type u_1inst✝⁴:NormedAddCommGroup Xinst✝³:NormedSpace ℝ Xinst✝²:CompleteSpace Xinst✝¹:MeasurableSpace Xinst✝:BorelSpace XK:Set XhK_cpt:IsCompact KhK_cvx:Convex ℝ Kx:Xhx:x ∈ K⊢ ∃ μ, IsProbabilityMeasure μ ∧ μ (Set.extremePoints ℝ K)ᶜ = 0 ∧ x = ∫ (y : X), y ∂μ
All goals completed! 🐙Chudnovsky formula for pi inverse
Submitter: Kim Morrison.
Notes: Uses the existing Mathlib definition of the Chudnovsky series and asks for the missing identity with pi inverse. The Chudnovsky formula states 1/π = (12 / 640320^(3/2)) · ∑_{n=0}^∞ (-1)^n · (6n)! · (545140134·n + 13591409) / ((3n)! · (n!)^3 · 640320^(3n)).
Source: https://arxiv.org/abs/1809.00533
Informal solution: Prove that the Chudnovsky series 1/π = (12 / 640320^(3/2)) · ∑_{n=0}^∞ (-1)^n · (6n)! · (545140134·n + 13591409) / ((3n)! · (n!)^3 · 640320^(3n)) holds, e.g. following Milla's detailed complex-analytic proof.
theorem chudnovsky_formula_for_pi_inv :
chudnovskySum = π⁻¹ := ⊢ chudnovskySum = π⁻¹
All goals completed! 🐙Commuting probabilities are closed
Submitter: Thomas Browning.
Notes: The set of commuting probabilities of finite groups is closed.
Source: https://arxiv.org/abs/2201.09402
Informal solution: Neumann's theorem describes the structure of finite groups with bounded below commuting probability. Then pass to subsequences of groups with similar structure.
theorem commProb_closed : IsClosed ({p : ℝ | ∃ (G : Type) (hG : Group G), commProb G = p}) := ⊢ IsClosed {p | ∃ G hG, ↑(commProb G) = p}
All goals completed! 🐙Bing's house with two rooms is contractible
contractibleSpace_houseWithTwoRooms
Submitter: Junyan Xu.
Notes: Unavailable.
Source: Allen Hatcher, *Algebraic Topology*.
Informal solution: Show that a neighborhood of the space deformation retracts onto it and is homeomorphic to a 3-ball.
theorem contractibleSpace_houseWithTwoRooms : ContractibleSpace LeanEval.Topology.HouseWithTwoRooms := ⊢ ContractibleSpace ↑HouseWithTwoRooms
All goals completed! 🐙The Conway knot is not smoothly slice
conway_knot_not_smoothly_slice
Submitter: Kim Morrison.
Notes: Lisa Piccirillo, *The Conway knot is not slice*, Annals of Mathematics 191 (2020). Resolves the last remaining case in the classification of slice knots through 12 crossings. The Conway knot has trivial Alexander polynomial so is topologically slice (Freedman), while Piccirillo's theorem rules out smooth sliceness — pairs with `conway_knot_topologically_slice` for an explicit, low-crossing-number witness to the smooth/topological gap (earlier witnesses such as Akbulut-Matveyev's Whitehead doubles existed). Two holes: `conwayKnot_isSimple` asks the solver to certify that the fixed 78-vertex braid-closure polyline is an embedded simple closed curve (a finite check, e.g. over an exact integer model), and `conway_knot_not_smoothly_slice` is Piccirillo's theorem proper; `conwayKnot` itself is trusted, `sorry`-free data. We'd like to thank Lorenzo Luccioli (using Aristotle) for identifying a mis-formalization of the notion of smoothly slice in an earlier version of this problem.
Source: https://arxiv.org/abs/1808.02923
Informal solution: Piccirillo's strategy: construct a knot K' having the same 0-trace as the Conway knot. The trace-embedding argument then transfers sliceness — if the Conway knot were smoothly slice, K' would be too. Compute Rasmussen's s-invariant of K' (a smooth slice obstruction, via Khovanov homology / Lee's perturbation); show s(K') != 0; conclude both K' and the Conway knot are not smoothly slice. Note that the standard smooth slice obstructions s and tau both vanish on the Conway knot itself, which is why the detour through K' is needed.
/-- **The Conway-knot polyline is a simple closed curve.**
A finite — if laborious — check on the fixed 78-vertex braid-closure
polyline: all vertices distinct, non-adjacent edges disjoint, adjacent
edges meeting only at their shared vertex. This certifies that `conwayKnot`
is a genuine embedded knot — the subject the slice question is about — and
is posed as its own hole so that the proof lives in the submission rather
than as an unchecked field of `conwayKnot`. -/
theorem conwayKnot_isSimple : conwayKnot.IsSimple := ⊢ conwayKnot.IsSimple
All goals completed! 🐙/-- **Piccirillo, "The Conway knot is not slice."**
The Conway knot 11n34 does not bound a smoothly properly embedded 2-disk
in `ℝ³ × [0, ∞)`. -/
theorem conway_knot_not_smoothly_slice : ¬ conwayKnot.SmoothlySlice := ⊢ ¬conwayKnot.SmoothlySlice
All goals completed! 🐙The Conway knot is topologically slice
conway_knot_topologically_slice
Submitter: Kim Morrison.
Notes: Freedman's theorem applied to the Conway knot 11n34, whose Alexander polynomial is trivial. The proof requires Freedman's full topological surgery machinery in dimension four; this is genuinely hard. Pairs with `conway_knot_not_smoothly_slice` (Piccirillo) to give the celebrated smooth/topological dichotomy for a specific named knot.
Source: Freedman, *The topology of four-dimensional manifolds*, J. Diff. Geom. 17 (1982). See also Freedman-Quinn, *Topology of 4-Manifolds*, Princeton 1990.
Informal solution: Compute the Alexander polynomial of the Conway knot from a Seifert matrix and verify Delta(t) = 1. Apply Freedman's theorem: every knot in S^3 with Alexander polynomial 1 bounds a locally flat topological disk in B^4. Construct the resulting locally flat disk image inside R^3 x [0, infty) and verify the local flatness condition pointwise.
theorem conway_knot_topologically_slice : conwayKnot.TopologicallySlice := ⊢ conwayKnot.TopologicallySlice
All goals completed! 🐙Conway–Schneeberger fifteen theorem
Submitter: Kim Morrison.
Notes: A positive-definite integer-matrix quadratic form Q : ℤⁿ → ℤ is universal (represents every positive integer) iff it represents every integer in {1, 2, …, 15}. The matrix-explicit formulation records the classically integral hypothesis: the form is given by an integral symmetric matrix, so off-diagonal polynomial coefficients are even — distinguishing this 15 theorem from Bhargava–Hanke's 290 theorem (integer-valued forms, off-diagonal half-integers allowed). §95 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: Conway–Schneeberger 1993 (unpublished, communicated by Conway in lectures); full proof M. Bhargava, 'On the Conway–Schneeberger fifteen theorem', in *Quadratic Forms and their Applications* (Contemp. Math. 272, AMS 2000). Listed as §95 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Bhargava's proof reduces universality to representation of a 9-element critical set {1, 2, 3, 5, 6, 7, 10, 14, 15} via the *escalator-tree* argument: any non-universal positive-definite integer-matrix form has a smallest non-represented integer m, and the escalator extensions by adding diagonal m form a finite tree whose leaves can be enumerated. Exhaustive case analysis on the tree shows that any non-universal form must fail to represent at least one of the nine critical integers. Mathlib has `Nat.sum_four_squares` (Lagrange) but no universal-quadratic-form framework: no `IsUniversal` predicate, no escalator construction, no integer-matrix-versus-integer-valued distinction. The 15 in the statement is sharp: the form (1, 2, 5, 5) represents {1, …, 14} but not 15.
theorem conway_schneeberger_fifteen {n : ℕ}
(Q : Matrix (Fin n) (Fin n) ℤ)
(_hsymm : Q.IsSymm) (_hpos : LeanEval.NumberTheory.ConwaySchneebergerFifteenProblem.IsPositiveQ Q) :
LeanEval.NumberTheory.ConwaySchneebergerFifteenProblem.IsUniversal Q ↔ ∀ k ∈ Finset.Icc (1 : ℤ) 15, LeanEval.NumberTheory.ConwaySchneebergerFifteenProblem.Represents Q k := n:ℕQ:Matrix (Fin n) (Fin n) ℤ_hsymm:Q.IsSymm_hpos:IsPositiveQ Q⊢ IsUniversal Q ↔ ∀ k ∈ Finset.Icc 1 15, Represents Q k
All goals completed! 🐙Polynomial decay rate of y' = -y^3
Submitter: Kim Morrison.
Notes: Asymptotic rate y t * sqrt t -> 1/sqrt 2 for the unique solution of y' = -y^3 on (0, infty) with y continuous at 0 and y 0 = 1.
Source: Standard ODE textbook exercise.
Informal solution: The closed form is y(t) = (1 + 2t)^{-1/2}, so y(t) sqrt(t) = sqrt(t / (1 + 2t)) -> 1/sqrt(2). Uniqueness on (0, infty) follows by Grönwall: any two solutions u, v of u' = -u^3 with the same right-limit 1 at 0 satisfy |u - v|' bounded by a Lipschitz constant on bounded subintervals, and continuity at 0 forces |u(t) - v(t)| -> 0 as t -> 0+, hence u = v.
theorem cubic_decay_asymptotic (y : ℝ → ℝ) (hy_diff : ∀ t : ℝ, 0 < t → HasDerivAt y (-(y t) ^ 3) t)
(hy_cont : ContinuousWithinAt y (Set.Ici 0) 0)
(hy0 : y 0 = 1) :
Tendsto (fun t : ℝ => y t * Real.sqrt t) atTop (𝓝 (1 / Real.sqrt 2)) := y:ℝ → ℝhy_diff:∀ (t : ℝ), 0 < t → HasDerivAt y (-y t ^ 3) thy_cont:ContinuousWithinAt y (Set.Ici 0) 0hy0:y 0 = 1⊢ Tendsto (fun t => y t * √t) atTop (𝓝 (1 / √2))
All goals completed! 🐙Real cyclotomic integer with house in (2, 76/33)
cyclotomic_integer_house_between_two_and_76_33
Submitter: Kim Morrison.
Notes: The 2 < house < 76/33 branch of Theorem 1.0.5 from Calegari--Morrison--Snyder, stated using Mathlib's NumberField.house.
Source: https://arxiv.org/pdf/1004.0665
Informal solution: If the house lies in (2, 76/33), then it is one of the five explicitly listed values.
theorem cyclotomic_integer_house_between_two_and_76_33 {K : Type*} [Field K] [NumberField K] [Algebra ℚ K]
(n : ℕ) [NeZero n] [IsCyclotomicExtension {n} ℚ K] {β : K}
(hβ_int : IsIntegral ℤ β)
(hβ_real : β ∈ NumberField.maximalRealSubfield K) :
(2 < house β ∧ house β < (76 : ℝ) / 33) →
house β = (Real.sqrt 7 + Real.sqrt 3) / 2 ∨
house β = Real.sqrt 5 ∨
house β = 1 + 2 * Real.cos (2 * Real.pi / 7) ∨
house β = (1 + Real.sqrt 5) / Real.sqrt 2 ∨
house β = (1 + Real.sqrt 13) / 2 := K:Type u_1inst✝⁴:Field Kinst✝³:NumberField Kinst✝²:Algebra ℚ Kn:ℕinst✝¹:NeZero ninst✝:IsCyclotomicExtension {n} ℚ Kβ:Khβ_int:IsIntegral ℤ βhβ_real:β ∈ maximalRealSubfield K⊢ 2 < house β ∧ house β < 76 / 33 →
house β = (√7 + √3) / 2 ∨
house β = √5 ∨ house β = 1 + 2 * Real.cos (2 * Real.pi / 7) ∨ house β = (1 + √5) / √2 ∨ house β = (1 + √13) / 2
All goals completed! 🐙Real cyclotomic integer with house at most 2
cyclotomic_integer_house_le_two
Submitter: Kim Morrison.
Notes: The <= 2 branch of Theorem 1.0.5 from Calegari--Morrison--Snyder, stated using Mathlib's NumberField.house.
Source: https://arxiv.org/pdf/1004.0665
Informal solution: If the house is at most 2, then it equals 2 cos(pi / m) for some positive integer m.
theorem cyclotomic_integer_house_le_two {K : Type*} [Field K] [NumberField K] [Algebra ℚ K]
(n : ℕ) [NeZero n] [IsCyclotomicExtension {n} ℚ K] {β : K}
(hβ_int : IsIntegral ℤ β)
(hβ_real : β ∈ NumberField.maximalRealSubfield K) :
house β ≤ 2 →
house β = 2 ∨ ∃ m : ℕ, 0 < m ∧ house β = 2 * Real.cos (Real.pi / m) := K:Type u_1inst✝⁴:Field Kinst✝³:NumberField Kinst✝²:Algebra ℚ Kn:ℕinst✝¹:NeZero ninst✝:IsCyclotomicExtension {n} ℚ Kβ:Khβ_int:IsIntegral ℤ βhβ_real:β ∈ maximalRealSubfield K⊢ house β ≤ 2 → house β = 2 ∨ ∃ m, 0 < m ∧ house β = 2 * Real.cos (Real.pi / ↑m)
All goals completed! 🐙Darboux's theorem (symplectic forms are locally standard)
Submitter: Kim Morrison.
Notes: §39 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. Every symplectic form on an open U ⊆ ℝ^{2n} is locally symplectomorphic to the standard symplectic form ω₀ = ∑_i dxᵢ ∧ dx_{n+i}. The local content lives on open subsets of ℝ^{2n}; formalized against mathlib's normed-space differential-form machinery (continuous alternating maps, extDeriv, OpenPartialHomeomorph). Mathlib has all the supporting infrastructure but no symplectic forms, no ω₀, and no Darboux theorem (Analysis/Calculus/Darboux.lean is the unrelated derivative-IVT theorem). No formalization of Darboux's theorem was found in any other proof assistant.
Source: J. G. Darboux, Sur le problème de Pfaff, Bull. Sci. Math. 6 (1882), 14-36, 49-68. Listed as §39 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Moser's trick: choose linear coordinates at x ∈ U so that α(x) equals ω₀ on tangent vectors at x (possible because α is non-degenerate, by linear-algebraic normalization of an alternating bilinear form). Define the path of 2-forms αₜ := (1 − t)·ω₀ + t·α; each αₜ is closed and equals α at t = 1, ω₀ at t = 0, and αₜ(x) = ω₀(x) for all t. The closedness lets one write α − ω₀ = dβ for some 1-form β near x; non-degeneracy of αₜ near x lets one solve ι_{Xₜ} αₜ = -β for a time-dependent vector field Xₜ. Integrate Xₜ for t ∈ [0,1] starting at x to get a flow φ_t; then (φ_1)*α = ω₀ on a neighborhood, giving the desired symplectomorphism (after restricting to the open set where the flow is defined and bijective).
theorem darboux {n : ℕ} {U : Set (LeanEval.Geometry.Darboux.E n)} (_hU : IsOpen U)
(α : LeanEval.Geometry.Darboux.E n → LeanEval.Geometry.Darboux.E n [⋀^Fin 2]→L[ℝ] ℝ) (_hα : LeanEval.Geometry.Darboux.IsSymplecticOn α U)
{x : LeanEval.Geometry.Darboux.E n} (_hx : x ∈ U) :
∃ φ : OpenPartialHomeomorph (LeanEval.Geometry.Darboux.E n) (LeanEval.Geometry.Darboux.E n),
x ∈ φ.source ∧ φ.source ⊆ U ∧
ContDiffOn ℝ ∞ (φ : LeanEval.Geometry.Darboux.E n → LeanEval.Geometry.Darboux.E n) φ.source ∧
ContDiffOn ℝ ∞ (φ.symm : LeanEval.Geometry.Darboux.E n → LeanEval.Geometry.Darboux.E n) φ.target ∧
∀ z ∈ φ.target,
LeanEval.Geometry.Darboux.IsDarbouxNormal
((α (φ.symm z)).compContinuousLinearMap
(fderiv ℝ (φ.symm : LeanEval.Geometry.Darboux.E n → LeanEval.Geometry.Darboux.E n) z)) := n:ℕU:Set (E n)_hU:IsOpen Uα:E n → E n [⋀^Fin 2]→L[ℝ] ℝ_hα:IsSymplecticOn α Ux:E n_hx:x ∈ U⊢ ∃ φ,
x ∈ φ.source ∧
φ.source ⊆ U ∧
ContDiffOn ℝ ∞ (↑φ) φ.source ∧
ContDiffOn ℝ ∞ (↑φ.symm) φ.target ∧
∀ z ∈ φ.target, IsDarbouxNormal ((α (↑φ.symm z)).compContinuousLinearMap (fderiv ℝ (↑φ.symm) z))
All goals completed! 🐙De Branges's theorem (Bieberbach conjecture)
Submitter: Junyan Xu.
Notes: Unavailable.
Source: John B. Conway, *Functions of One Complex Variable II*, Chapter 17.
Informal solution: Unavailable.
theorem deBranges (f : ℂ → ℂ) (diff : DifferentiableOn ℂ f (ball 0 1)) (inj : (ball 0 1).InjOn f)
(h0 : f 0 = 0) (h1 : deriv f 0 = 1) (n : ℕ) : ‖iteratedDeriv n f 0 / n.factorial‖ ≤ n := f:ℂ → ℂdiff:DifferentiableOn ℂ f (ball 0 1)inj:Set.InjOn f (ball 0 1)h0:f 0 = 0h1:deriv f 0 = 1n:ℕ⊢ ‖iteratedDeriv n f 0 / ↑n.factorial‖ ≤ ↑n
All goals completed! 🐙Dehn–Sommerville equations for simplicial spheres
Submitter: Kim Morrison.
Notes: The h-vector of a finite simplicial (d-1)-sphere is symmetric: h_j = h_{d-j}. Trusted helpers (FiniteSimplicialSphere, faceCount, extendedFaceCount, hVector) are non-holes. Mathlib has simplicial complexes but no f/h-vector or Dehn–Sommerville theory. The companion upper-bound theorem for simplicial spheres is already in lean-eval. Candidate from §142 of the Knill survey.
Source: M. Dehn (1905); D. M. Y. Sommerville (1927); see Stanley, *Combinatorics and Commutative Algebra*. Knill, *Some fundamental theorems in mathematics*, §142.
Informal solution: The Dehn–Sommerville relations follow from Poincaré duality / the Euler relations on the face lattice of a simplicial sphere. Encode the f-vector in the h-polynomial h(t) = ∑ h_j t^j defined by ∑ f_{i-1}(t-1)^{d-i} = ∑ h_i t^{d-i}; the Euler–Poincaré relation for a (d-1)-sphere (each face's link is a sphere, χ matches) translates into the functional equation h(t) = t^d h(1/t), i.e. h_j = h_{d-j}. Requires the face-ring/Euler-relation machinery absent from Mathlib.
theorem dehn_sommerville {d j : ℕ} (X : LeanEval.Combinatorics.DehnSommerville.FiniteSimplicialSphere d) (hj : j ≤ d) :
hVector X j = hVector X (d - j) := d:ℕj:ℕX:FiniteSimplicialSphere dhj:j ≤ d⊢ hVector X j = hVector X (d - j)
All goals completed! 🐙Dirichlet eigenvalues of -y'' = lambda y on [0,pi] are n^2
dirichlet_eigenvalues_eq_nat_sq
Submitter: Kim Morrison.
Notes: Characterises the spectrum of the Dirichlet Laplacian on [0,pi]: lambda is an eigenvalue iff lambda = n^2 for some positive natural n.
Source: Classical Sturm-Liouville theory.
Informal solution: Case-split on the sign of lambda. For lambda <= 0 only the zero solution satisfies both boundary conditions. For lambda > 0 the general solution is A sin(sqrt lambda x) + B cos(sqrt lambda x); the boundary conditions force B = 0 and sqrt lambda in N_{>0}. Conversely, for lambda = n^2 with n in N_{>0}, the function sin(n x) is a nontrivial Dirichlet eigenfunction.
theorem dirichlet_eigenvalues_eq_nat_sq (lam : ℝ) :
(∃ (y : ℝ → ℝ) (J : Set ℝ),
IsOpen J ∧ Set.Icc (0 : ℝ) Real.pi ⊆ J ∧
(∀ x ∈ J, HasDerivAt y (deriv y x) x) ∧
(∀ x ∈ J, HasDerivAt (deriv y) (-(lam * y x)) x) ∧
y 0 = 0 ∧ y Real.pi = 0 ∧
∃ x ∈ Set.Ioo (0 : ℝ) Real.pi, y x ≠ 0) ↔
∃ n : ℕ, 0 < n ∧ lam = (n : ℝ) ^ 2 := lam:ℝ⊢ (∃ y J,
IsOpen J ∧
Set.Icc 0 π ⊆ J ∧
(∀ x ∈ J, HasDerivAt y (deriv y x) x) ∧
(∀ x ∈ J, HasDerivAt (deriv y) (-(lam * y x)) x) ∧ y 0 = 0 ∧ y π = 0 ∧ ∃ x ∈ Set.Ioo 0 π, y x ≠ 0) ↔
∃ n, 0 < n ∧ lam = ↑n ^ 2
All goals completed! 🐙Chen theorem for Markoff graphs
dvd_card_connectedComponent_markoffGraph
Submitter: Kim Morrison.
Notes: For prime p > 3, every connected component of the nonzero Markoff graph over ZMod p has cardinality divisible by p.
Source: https://link.springer.com/article/10.1007/s00222-025-01346-9
Informal solution: Exploit the Vieta involution symmetries of the Markoff graph over F_p and show each connected component has size divisible by p.
theorem dvd_card_connectedComponent_markoffGraph {p : ℕ} (hp : Nat.Prime p) (hgt : 3 < p) :
∀ c : (LeanEval.Combinatorics.markoffGraph p).ConnectedComponent, p ∣ Nat.card c := p:ℕhp:Nat.Prime phgt:3 < p⊢ ∀ (c : (markoffGraph p).ConnectedComponent), p ∣ Nat.card ↥c
All goals completed! 🐙Existence of a 779247-dim irreducible e₈-representation with 40 tensor-square isotypic components
Submitter: Kim Morrison.
Notes: e₈ is the largest exceptional Lie algebra (dim 248), defined here by the Serre construction (Mathlib's `LieAlgebra.e₈`). The formal statement is existential: it asks for some 779247-dimensional irreducible representation whose tensor square has 40 isotypic components. In the intended solution, one constructs such a witness using the highest-weight representation with highest weight ω₁ + ω₈ (the sum of the first and last fundamental weights, in Bourbaki labelling). The U(g)-module structure on V ⊗ V used in the statement comes from lifting the Lie action via the universal enveloping algebra.
Source: Classical: representation theory of the exceptional Lie algebra e₈.
Informal solution: Construct V as V(ω₁+ω₈), the unique 779247-dim irrep of e₈. Tensor square (LiE-verified) has 40 distinct simple summand isomorphism classes (155 components with multiplicity), with the smallest being the trivial 1-dim, the 248-dim adjoint (mult 2), the 3875-dim V(ω₁), and so on up to the 85,424,220,000-dim summand. This is used to produce the existential witness required by the formal statement.
theorem e8_irrep_tensor_square_decomp :
∃ (V : Type) (_ : AddCommGroup V) (_ : Module ℂ V)
(_ : LieRingModule (LieAlgebra.e₈ ℂ) V) (_ : LieModule ℂ (LieAlgebra.e₈ ℂ) V),
Module.finrank ℂ V = 779247 ∧
LieModule.IsIrreducible ℂ (LieAlgebra.e₈ ℂ) V ∧
(isotypicComponents (UniversalEnvelopingAlgebra ℂ (LieAlgebra.e₈ ℂ))
(V ⊗[ℂ] V)).ncard = 40 := ⊢ ∃ V x x_1 x_2,
∃ (x_3 : LieModule ℂ (LieAlgebra.e₈ ℂ) V),
Module.finrank ℂ V = 779247 ∧
LieModule.IsIrreducible ℂ (LieAlgebra.e₈ ℂ) V ∧
(isotypicComponents (UniversalEnvelopingAlgebra ℂ (LieAlgebra.e₈ ℂ)) (V ⊗[ℂ] V)).ncard = 40
All goals completed! 🐙Lai-Sang Young entropy–dimension–Lyapunov theorem
Submitter: Kim Morrison.
Notes: Lai-Sang Young (1982): for a C²-diffeomorphism T of a compact surface (modelled on EuclideanSpace ℝ (Fin 2) with a compact invariant K) and a T-invariant ergodic probability measure μ, h_μ(T) = dim(μ)·λ(T,μ)/2, where λ(T,μ) is the harmonic mean of (λ₁, −λ₂). Shares trusted (non-hole) helpers with the rest of §103: dimMeasure, kolmogorovSinaiEntropy (via sSup), entropyW/lyapunov* (via Filter.limsup), harmonicMeanLyapunov. These helpers are total functions (sSup/limsup are junk outside their intended bounded regime); in the compact-C² setting entropy and exponents are finite and the (DT^n)⁻¹ is genuine because T has a C² two-sided inverse. Mathlib has dimH, Ergodic, MeasurePreserving, Real.negMulLog, fderiv, but no Kolmogorov–Sinai entropy, no Lyapunov exponents/Oseledec, and none of these theorems. Candidate from §103 of the Knill survey.
Source: L.-S. Young, *Dimension, entropy and Lyapunov exponents*, Ergodic Theory Dynam. Systems 2 (1982), 109–124. Knill, *Some fundamental theorems in mathematics*, §103.
Informal solution: Young's argument relates the Kolmogorov–Sinai entropy, the Hausdorff dimension of μ, and the Lyapunov exponents for a surface diffeomorphism. Build a measurable partition into small dynamical rectangles aligned with the stable/unstable directions (Oseledec splitting); the entropy is computed along unstable manifolds (Shannon–McMillan–Breiman) while the pointwise dimension dim(μ) is governed by the contraction/expansion rates λ₁, −λ₂ via a Borel–Cantelli/covering argument. Equating the two expressions for the local scaling of μ-mass on dynamical balls gives h_μ = dim(μ)·(2λ₁(−λ₂)/(λ₁−λ₂))/2. Requires Oseledec MET, absolute continuity of the unstable foliation, and the entropy-via-increasing-partitions machinery, none in Mathlib.
theorem entropy_dimension_lyapunov (T T_inv : LeanEval.Dynamics.EucPlane → LeanEval.Dynamics.EucPlane)
(hT_smooth : ContDiff ℝ 2 T)
(hT_inv_smooth : ContDiff ℝ 2 T_inv)
(hT_left : Function.LeftInverse T_inv T)
(hT_right : Function.RightInverse T_inv T)
(K : Set LeanEval.Dynamics.EucPlane)
(hK_compact : IsCompact K)
(hK_inv : T '' K = K)
(μ : Measure LeanEval.Dynamics.EucPlane) [IsProbabilityMeasure μ]
(hμ_supp : μ Kᶜ = 0)
(hμ_pres : MeasurePreserving T μ μ)
(hμ_erg : Ergodic T μ) :
kolmogorovSinaiEntropy μ T =
(dimMeasure μ).toReal *
harmonicMeanLyapunov
(∫ x, lyapunovUpperAt T x ∂μ)
(∫ x, lyapunovLowerAt T x ∂μ) / 2 := T:EucPlane → EucPlaneT_inv:EucPlane → EucPlanehT_smooth:ContDiff ℝ 2 ThT_inv_smooth:ContDiff ℝ 2 T_invhT_left:Function.LeftInverse T_inv ThT_right:Function.RightInverse T_inv TK:Set EucPlanehK_compact:IsCompact KhK_inv:T '' K = Kμ:Measure EucPlaneinst✝:IsProbabilityMeasure μhμ_supp:μ Kᶜ = 0hμ_pres:MeasurePreserving T μ μhμ_erg:Ergodic T μ⊢ kolmogorovSinaiEntropy μ T =
(dimMeasure μ).toReal *
harmonicMeanLyapunov (∫ (x : EucPlane), lyapunovUpperAt T x ∂μ) (∫ (x : EucPlane), lyapunovLowerAt T x ∂μ) /
2
All goals completed! 🐙Erdős's unit-distance conjecture is false
erdos_unit_distance_conjecture_false
Submitter: Kim Morrison.
Notes: Erdős (1946) conjectured ν(n) ≤ n^{1 + C / log log n} for some absolute C and all sufficiently large n. The conjecture stood for 80 years and was widely believed to be true prior to OpenAI's 2026 construction, in part because Alon-Bucić-Sauermann (2025) had proved a matching bound (d/2) n log₂ n for typical norms on ℝ^d (later sharpened by Greilhuber-Schildkraut-Tidor, 2025). The refutation also disproves the stronger Erdős-Falconer (1997) k-equidistant variant: along the refuting sequence the unit-distance graph has average degree n^{Ω(1)}, while Erdős-Falconer predicted at most n^{o(1)}. ν is defined as the number of unordered pairs in P ⊆ ℝ² at Euclidean distance exactly 1; the planar metric is the one from EuclideanSpace ℝ (Fin 2), not the product sup-metric.
Source: OpenAI, *Planar Point Sets with Many Unit Distances*, 2026. https://cdn.openai.com/pdf/74c24085-19b0-4534-9c90-465b8e29ad73/unit-distance-proof.pdf . Original conjecture: P. Erdős, *On sets of distances of n points*, Amer. Math. Monthly 53 (1946), 248-250. k-equidistant variant: P. Erdős, K. Falconer, *Some problems in combinatorial geometry*, 1997.
Informal solution: Split into an arithmetic and a geometric part. (1) Arithmetic: build an admissible datum (L, K = L(i), t, q₁, …, q_t) where L is a totally real number field of growing degree f, K is its CM extension by i, and each q_b ≡ 1 mod 4 splits completely in L. Use the Hajir-Maire class-field-theoretic tower-cutting trick — start from the cyclic cubic subfield F of ℚ(ζ_{r_1 · … · r_ℓ}) for distinct primes r_i ≡ 1 mod 3, observe M/F is everywhere unramified to get d(G) ≥ ℓ - 1 for the maximal unramified pro-3 tower's Galois group G, kill prescribed Frobenius elements by quotienting G by relations chosen via Chebotarev, and apply Shafarevich's relation-rank estimate r(G) ≤ d(G) + C₀ together with Golod-Shafarevich (r > d²/4 for finite pro-p groups) to keep the quotient tower infinite. Adjoining i preserves bounded root discriminants, so Minkowski gives class numbers at most exponential in the degree: h(K_j) ≤ H^{f_j}. The split primes give m = t · f_j conjugate pairs of prime ideals; pigeonholing 2^m ε-vectors by class gives ≥ 2^m / h(K_j) ≥ exp(γ f_j) elements u ∈ K^× with N_{K/L}(u) = u · c(u) = 1 (hence |σ(u)| = 1 for every complex embedding). (2) Geometric: embed K via the Minkowski map into V = ℂ^f, take a random translate of the lattice Q^{-2} 𝒪_K cut by the polydisc B_R, and project to the first complex coordinate. Lemma 2.4 averages over cosets to find a coset with E_a ≥ exp(γ f / 2) · N_a directed unit-distance pairs; Lemma 2.6 packs the polydisc to bound |P| ≤ exp(B f) uniformly. Combining n_j ≤ exp(B f_j) with ν(P_j) ≥ n_j · exp(γ f_j / 2) / 2 gives ν(P_j) ≥ n_j^{1 + δ} with δ = γ / (4B), refuting any proposed bound n^{1 + C / log log n} once log log n_j < δ.
theorem erdos_unit_distance_conjecture_false :
∃ δ : ℝ, 0 < δ ∧
∀ N : ℕ, ∃ (n : ℕ) (P : Finset (EuclideanSpace ℝ (Fin 2))),
N ≤ n ∧ P.card = n ∧ (n : ℝ) ^ (1 + δ) ≤ (unitDist P : ℝ) := ⊢ ∃ δ, 0 < δ ∧ ∀ (N : ℕ), ∃ n P, N ≤ n ∧ P.card = n ∧ ↑n ^ (1 + δ) ≤ ↑(unitDist P)
All goals completed! 🐙Euler–Lagrange equation
Submitter: Kim Morrison.
Notes: §44 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The Euler–Lagrange equation: a sufficiently regular stationary path x of the action I(y) = ∫_a^b L(t, y(t), y'(t)) dt satisfies ∂L/∂x = (d/dt)(∂L/∂x') pointwise on the open interval (a, b). Stationarity is expressed as the first variation of the action vanishing against every smooth compactly supported perturbation inside (a, b). It is the central necessary condition of the calculus of variations. mathlib has related ingredients such as the fundamental lemma of the calculus of variations, but no bundled action-functional extremum notion and no Euler–Lagrange theorem.
Source: L. Euler (1744) and J.-L. Lagrange (1755). Listed as §44 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Let h be a smooth variation with compact support in (a, b). Differentiating I(x + ε h) under the integral at ε = 0 gives the first variation ∫_a^b (∂L/∂x · h + ∂L/∂x' · h') dt, which vanishes for all such h since x is a variational extremum. Integrate the second term by parts; the boundary terms vanish because h is compactly supported in (a, b), leaving ∫_a^b (∂L/∂x − d/dt(∂L/∂x')) h dt = 0 for all h. By the fundamental lemma of the calculus of variations the continuous factor ∂L/∂x − d/dt(∂L/∂x') is identically zero on (a, b), which is the Euler–Lagrange equation. C² regularity of L and x makes ∂L/∂x' differentiable in t so the integration by parts and the d/dt term are justified.
theorem euler_lagrange_equation {a b : ℝ} (L : ℝ → ℝ → ℝ → ℝ) (x : ℝ → ℝ) (_hab : a < b)
(_hL : ContDiff ℝ 2 (fun p : ℝ × ℝ × ℝ => L p.1 p.2.1 p.2.2))
(_hx : ContDiff ℝ 2 x)
(_hxe : LeanEval.Analysis.IsVariationalExtremum a b L x) :
∀ t ∈ Set.Ioo a b,
lagrangianPartialX L x t = deriv (lagrangianPartialV L x) t := a:ℝb:ℝL:ℝ → ℝ → ℝ → ℝx:ℝ → ℝ_hab:a < b_hL:ContDiff ℝ 2 fun p => L p.1 p.2.1 p.2.2_hx:ContDiff ℝ 2 x_hxe:IsVariationalExtremum a b L x⊢ ∀ t ∈ Ioo a b, lagrangianPartialX L x t = deriv (lagrangianPartialV L x) t
All goals completed! 🐙Existence of a chiral oriented knot
Submitter: Kim Morrison.
Notes: Challenge problem of the knot-theory benchmark. Asks for an oriented smooth knot whose image is not ambient-isotopic to its mirror image (under reflection through the xy-plane), using the benchmark's orientation-sensitive notion of isotopy induced by the parametrization. The model must construct an ambient-isotopy invariant that takes different values on a knot and its mirror -- the knot determinant and Alexander polynomial alone do not suffice, since the figure-eight is amphichiral in the usual unoriented sense.
Source: Classical; see https://en.wikipedia.org/wiki/Chirality_(mathematics) and https://en.wikipedia.org/wiki/Trefoil_knot.
Informal solution: Take K = right-handed trefoil. Construct the knot signature sigma(K) from a Seifert matrix V as the signature of V + V^T, and verify that sigma is an ambient-isotopy invariant of knots that negates under mirror reflection. Compute sigma(right trefoil) = -2, so sigma(K) != sigma(mirror K) and K is chiral. (Alternatively, use the Jones polynomial V_K(t) = -t^{-4} + t^{-3} + t^{-1}, which is not symmetric under t <-> t^{-1}.)
theorem exists_chiral_knot : ∃ K : LeanEval.KnotTheory.Knot, K.Chiral := ⊢ ∃ K, K.Chiral
All goals completed! 🐙Complementary polynomial on the unit circle
exists_complementary_polynomial_on_unit_circle
Submitter: Kim Morrison.
Notes: If a complex polynomial has modulus at most 1 on the unit circle, then there is a same-degree complementary polynomial whose squared moduli add to 1 on the circle.
Source: https://link.springer.com/article/10.1007/s00220-025-05302-9
Informal solution: Construct a polynomial Q so that |P(z)|^2 + |Q(z)|^2 = 1 for all z on the unit circle.
theorem exists_complementary_polynomial_on_unit_circle (P : ℂ[X])
(hP : ∀ z : Circle, ‖P.eval (z : ℂ)‖ ≤ 1) :
∃ Q : ℂ[X],
Q.natDegree ≤ P.natDegree ∧
∀ z : Circle, ‖P.eval (z : ℂ)‖ ^ 2 + ‖Q.eval (z : ℂ)‖ ^ 2 = 1 := P:ℂ[X]hP:∀ (z : Circle), ‖eval (↑z) P‖ ≤ 1⊢ ∃ Q, Q.natDegree ≤ P.natDegree ∧ ∀ (z : Circle), ‖eval (↑z) P‖ ^ 2 + ‖eval (↑z) Q‖ ^ 2 = 1
All goals completed! 🐙Existence of a non-isotopic pair of oriented knots
Submitter: Kim Morrison.
Notes: Asks for two oriented smooth knots in R^3 that are not ambient-isotopic. The benchmark uses an orientation-sensitive notion of isotopy induced by the parametrizations. Mathlib has no knot-invariant infrastructure, so the model must construct an isotopy invariant from scratch. Suggested: the Alexander polynomial / knot determinant, or the Fox 3-coloring count, both of which distinguish the unknot from the trefoil.
Source: Classical; see https://en.wikipedia.org/wiki/Knot_invariant.
Informal solution: Take K1 = unknot (round circle in the xy-plane) and K2 = right-handed trefoil parametrized as t -> (sin t + 2 sin 2t, cos t - 2 cos 2t, -sin 3t). Construct an ambient-isotopy invariant; the simplest computable choice is the number of Fox 3-colorings of any diagram of K, which counts homomorphisms from the knot group to D_3. The unknot admits 3 such colorings (all monochromatic); the trefoil admits 9. Hence the two knots are not ambient-isotopic.
theorem exists_nonisotopic_knots : ∃ K₁ K₂ : LeanEval.KnotTheory.Knot, ¬ K₁.Isotopic K₂ := ⊢ ∃ K₁ K₂, ¬K₁.Isotopic K₂
All goals completed! 🐙Existence of a non-isotopic pair of oriented two-component links
Submitter: Kim Morrison.
Notes: Warmup for the knot-theory benchmark. Asks for two oriented smooth two-component links in R^3 that are not ambient-isotopic. The benchmark uses an orientation-sensitive notion of isotopy induced by the parametrizations, so the Gauss linking integral is a natural real-valued invariant distinguishing the unlink (lk = 0) from the Hopf link (lk = +/- 1, depending on orientation choice).
Source: Classical; see https://en.wikipedia.org/wiki/Linking_number.
Informal solution: Take L1 = unlink (two unit circles in parallel planes) and L2 = Hopf link, with explicit orientations induced by the parametrizations. Define lk(K, L) by the Gauss double integral (1/4 pi) int int <K(s) - L(t), K'(s) x L'(t)> / |K(s) - L(t)|^3 ds dt. Prove lk is invariant under ambient isotopy of oriented links by exhibiting it as the integral of a closed 2-form on R^3 minus the origin pulled back along (K, L), so Stokes-style arguments show invariance. Compute lk(unlink) = 0 and choose the Hopf-link orientations so that lk(Hopf) = 1. Conclude L1 and L2 are not ambient-isotopic.
theorem exists_nonisotopic_link : ∃ L₁ L₂ : LeanEval.KnotTheory.TwoLink, ¬ L₁.Isotopic L₂ := ⊢ ∃ L₁ L₂, ¬L₁.Isotopic L₂
All goals completed! 🐙Existence of a topologically slice, not smoothly slice knot
exists_topologically_slice_not_smoothly_slice
Submitter: Kim Morrison.
Notes: The smooth/topological gap in dimension four. Casson, Akbulut-Matveyev, and Hedden-Kirk-Livingston gave explicit witnesses; Piccirillo later resolved the Conway knot 11n34 — a much smaller, celebrated example of the same phenomenon. The solver may choose any witness. Topological sliceness here means bounding a *locally flat* topological 2-disk in R^3 x [0, infty); the locally flat clause is essential since without it the cone over any knot is a topological disk.
Source: Casson, 1980s (unpublished); Akbulut-Matveyev, *A convex decomposition theorem for 4-manifolds*, IMRN 1998. See also Hedden-Kirk-Livingston, *Non-slice linear combinations of algebraic knots*, J. Eur. Math. Soc. 14 (2012).
Informal solution: Take K = positive Whitehead double of a knot K_0 with tau(K_0) > 0 (e.g. the right-handed trefoil; Akbulut-Matveyev). Whitehead doubles always have trivial Alexander polynomial, so K is topologically slice by Freedman's theorem. The Ozsvath-Szabo tau-invariant of K equals tau(K_0) > 0, and tau is a smooth slice obstruction (tau != 0 implies not smoothly slice), so K is not smoothly slice.
theorem exists_topologically_slice_not_smoothly_slice :
∃ K : LeanEval.KnotTheory.PLKnot, K.TopologicallySlice ∧ ¬ K.SmoothlySlice := ⊢ ∃ K, K.TopologicallySlice ∧ ¬K.SmoothlySlice
All goals completed! 🐙Morrison–Walker Lemma B.0.1: adapting families of maps to open covers
Submitter: Kim Morrison.
Notes: Lemma B.0.1 of Morrison–Walker, *The Blob Complex* (arXiv:1009.5025, Appendix B, pp. 93–96). Two holes that must both be filled: `FamiliesOfMapsB01.continuous` is the continuous case (clauses 1–3); `FamiliesOfMapsB01.biLipschitz` is the bi-Lipschitz variant of clause 4. Given a continuous family `f : P × X → T` parametrised by a convex linear polyhedron `P ⊆ ℝᵏ` and a partition of unity subordinate to an open cover `U` of a compact space `X`, produce a continuous homotopy `F : I × P × X → T` from `f` to a family adapted to `U` on each closed cell of a polyhedral subdivision of `P`, with support preserved on `I × P` and along boundary subpolyhedra `I × Q ⊆ I × ∂P`. The polyhedral-subdivision conclusion (rather than a loose closed cover) is what makes Lemma B.0.2 (the chain-level deformation retract) a chain-complex consequence: each closed cell is a generator of C∗(Maps(X → T)) and adjacent cells share (k−1)-faces with cancelling orientations. The bi-Lipschitz variant bundles each slice as a homeomorphism `slice p : X ≃ₜ T` (capturing surjectivity), imposes the paper's joint Lipschitz hypothesis ('f is Lipschitz in the P direction as well') via `LipschitzWith L f.toFun`, and concludes the same bundled bi-Lipschitz homeomorphism structure for every slice `F (t, p, ·)`. The smooth-diffeomorphism / immersion / PL variants are not stated. The paper explicitly does *not* prove the analogous statement for plain continuous homeomorphisms (cf. remark at the end of Appendix B; only Edwards–Kirby's 1-parameter version is known). Supporting definitions `Supported`, `AdaptedTo`, `IsPolyhedron`, `Subdivision`, `closedCell`, `IsBoundarySubpolyhedron` are trusted infrastructure rather than holes — the multi-hole pipeline factors them into `ChallengeDeps.lean`. Mathlib has `Geometry.SimplicialComplex`, `PartitionOfUnity`, `intrinsicFrontier`, `ContinuousMap`, `LipschitzWith`, etc. — what is missing is the polyhedral-subdivision API and the lemma itself.
Source: S. Morrison and K. Walker, *The Blob Complex*, arXiv:1009.5025, Appendix B, Lemma B.0.1 (pp. 93–96): https://arxiv.org/pdf/1009.5025
Informal solution: Choose for each cover index α a cell decomposition Kα of P in general position with respect to each other, with a common refinement L. For each top k-cell C of each Kα, pick a point p(C, α) ∈ C (along boundaries when C meets ∂P). On each k-handle D of L̃ define u(t, p, x) := (1−t) p + t Σα rα(x) p(D, α), and extend u inductively over lower-dimensional handles of L̃ via the product structure of each (k−j)-handle E ≃ B^{k−j} × B^j using auxiliary functions ηβⁱ : B^j → [0, 1] that form a partition of unity in the normal direction (formula (B.1) in the paper). Set F(t, p, x) := f(u(t, p, x), x). Then F is continuous, F(0, ·, ·) = f, F(1, ·, ·) restricted to a top handle D of L̃ depends on x only through the at-most-k partition functions rα that vary across D's chosen points (so each handle is adapted), and F preserves the support of f on I × P and on I × Q for any subpolyhedral Q ⊆ ∂P (because u maps I × Q × X into Q). For the bi-Lipschitz variant: the same construction works. The slice regularity follows from the chain rule ∂F/∂x = ∂f/∂x + (∂f/∂p)(∂u/∂x), where ∂f/∂x is bi-Lipschitz with constant L uniformly in p (compactness of P), ∂f/∂p is bounded by the joint Lipschitz constant L, and ∂u/∂x is made small by choosing the Kα sufficiently fine — so F(t, p, ·) is bi-Lipschitz with a constant L' close to L.
/-- **Lemma B.0.1** of Morrison–Walker, *The Blob Complex*
(arXiv:1009.5025, §B), continuous case. -/
theorem continuous
{P : Set (Fin k → ℝ)} (_hP : IsPolyhedron P)
[CompactSpace X]
(U : ι → Set X) (_hUopen : ∀ α, IsOpen (U α))
(ρ : PartitionOfUnity ι X univ) (_hρ : ρ.IsSubordinate U)
(f : C(P × X, T)) :
∃ F : C(I × P × X, T),
(∀ p : P, ∀ x : X, F (0, p, x) = f (p, x)) ∧
(∃ K : Subdivision P,
∀ D ∈ K.complex.facets,
AdaptedTo U k
(fun q : closedCell P D × X => F (1, q.1.1, q.2))) ∧
(∀ S : Set X, Supported (f := f.toFun) S →
Supported (fun q : (I × P) × X => F (q.1.1, q.1.2, q.2)) S) ∧
(∀ Q : Set P, IsBoundarySubpolyhedron Q →
∀ S' : Set X,
Supported (fun q : Q × X => f (q.1.1, q.2)) S' →
Supported (fun q : (I × Q) × X => F (q.1.1, q.1.2.1, q.2)) S') := k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)_hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set X_hUopen:∀ (α : ι), IsOpen (U α)ρ:PartitionOfUnity ι X_hρ:ρ.IsSubordinate Uf:C(↑P × X, T)⊢ ∃ F,
(∀ (p : ↑P) (x : X), F (0, p, x) = f (p, x)) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => F (1, ↑q.1, q.2)) ∧
(∀ (S : Set X), Supported f.toFun S → Supported (fun q => F (q.1.1, q.1.2, q.2)) S) ∧
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ (S' : Set X), Supported (fun q => f (↑q.1, q.2)) S' → Supported (fun q => F (q.1.1, ↑q.1.2, q.2)) S'
All goals completed! 🐙/-- **Lemma B.0.1**, bi-Lipschitz variant (part 4 of the paper). -/
theorem biLipschitz
{X T : Type*} [MetricSpace X] [MetricSpace T] [CompactSpace X]
{P : Set (Fin k → ℝ)} (_hP : IsPolyhedron P)
{ι : Type*}
(U : ι → Set X) (_hUopen : ∀ α, IsOpen (U α))
(ρ : PartitionOfUnity ι X univ) (_hρ : ρ.IsSubordinate U)
(f : C(P × X, T))
(slice : P → (X ≃ₜ T))
(_h_slice_eq : ∀ p : P, ∀ x : X, f (p, x) = slice p x)
(L : NNReal)
(_hf_joint : LipschitzWith L f.toFun)
(_hf_slice_inv : ∀ p : P, LipschitzWith L (slice p).symm) :
∃ F : C(I × P × X, T), ∃ L' : NNReal, ∃ Slice : I × P → (X ≃ₜ T),
(∀ p : P, ∀ x : X, F (0, p, x) = f (p, x)) ∧
(∀ t : I, ∀ p : P, ∀ x : X, F (t, p, x) = Slice (t, p) x) ∧
(∃ K : Subdivision P,
∀ D ∈ K.complex.facets,
AdaptedTo U k
(fun q : closedCell P D × X => F (1, q.1.1, q.2))) ∧
(∀ S : Set X, Supported (f := f.toFun) S →
Supported (fun q : (I × P) × X => F (q.1.1, q.1.2, q.2)) S) ∧
(∀ Q : Set P, IsBoundarySubpolyhedron Q →
∀ S' : Set X,
Supported (fun q : Q × X => f (q.1.1, q.2)) S' →
Supported (fun q : (I × Q) × X => F (q.1.1, q.1.2.1, q.2)) S') ∧
(∀ tp : I × P, LipschitzWith L' (Slice tp)) ∧
(∀ tp : I × P, LipschitzWith L' (Slice tp).symm) := k:ℕX:Type u_4T:Type u_5inst✝²:MetricSpace Xinst✝¹:MetricSpace Tinst✝:CompactSpace XP:Set (Fin k → ℝ)_hP:IsPolyhedron Pι:Type u_6U:ι → Set X_hUopen:∀ (α : ι), IsOpen (U α)ρ:PartitionOfUnity ι X_hρ:ρ.IsSubordinate Uf:C(↑P × X, T)slice:↑P → X ≃ₜ T_h_slice_eq:∀ (p : ↑P) (x : X), f (p, x) = (slice p) xL:NNReal_hf_joint:LipschitzWith L f.toFun_hf_slice_inv:∀ (p : ↑P), LipschitzWith L ⇑(slice p).symm⊢ ∃ F L' Slice,
(∀ (p : ↑P) (x : X), F (0, p, x) = f (p, x)) ∧
(∀ (t : ↑I) (p : ↑P) (x : X), F (t, p, x) = (Slice (t, p)) x) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => F (1, ↑q.1, q.2)) ∧
(∀ (S : Set X), Supported f.toFun S → Supported (fun q => F (q.1.1, q.1.2, q.2)) S) ∧
(∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ (S' : Set X),
Supported (fun q => f (↑q.1, q.2)) S' → Supported (fun q => F (q.1.1, ↑q.1.2, q.2)) S') ∧
(∀ (tp : ↑I × ↑P), LipschitzWith L' ⇑(Slice tp)) ∧ ∀ (tp : ↑I × ↑P), LipschitzWith L' ⇑(Slice tp).symm
All goals completed! 🐙Fang–Xia: tiling of the symmetric group by transpositions implies λ-transitivity
fang_xia_tiling_partition_transitive
Submitter: Kim Morrison.
Notes: If T_n = {1} ∪ {all transpositions} and (T_n, Y) tiles the symmetric group S_n (every element of S_n has a unique factorisation x · y with x ∈ T_n, y ∈ Y), then for every integer partition λ of n whose Young-diagram content sum is nonnegative, Y is λ-transitive in the Martin–Sagan sense: there is a fixed positive integer r such that, for every pair P, Q of ordered set partitions of shape λ, exactly r elements of Y send P to Q blockwise. Content sum is encoded in the row-length formula `∑ᵢ aᵢ · (aᵢ − 2i − 1)` (zero-indexed rows), matching the paper's one-indexed `λᵢ · (λᵢ − 2i + 1)`. Headline Theorem 1.4 of Fang–Xia, *Tiling the symmetric group by transpositions*, Bull. London Math. Soc. 58(5) (2026).
Source: T. Fang and B. Xia, 'Tiling the symmetric group by transpositions', Bull. London Math. Soc. 58(5) (2026); DOI 10.1112/blms.70366; arXiv:2506.00360. The λ-transitivity notion in the statement is due to Martin–Sagan.
Informal solution: The paper proves Theorem 1.4 by symmetric-group character theory. In the group algebra of S_n, the tiling condition gives the convolution identity `1_{T_n} * 1_Y = 1_{S_n}`. Since T_n is conjugation-invariant, convolution by `1_{T_n}` acts on each Specht module by a scalar expressible in terms of the content sum of λ. For partitions with nonnegative content sum that scalar is nonzero, so the corresponding Specht component survives in 1_Y, which implies the Martin–Sagan constant-count transitivity condition for Y on ordered set partitions of shape λ. Mathlib has `Equiv.Perm (Fin n)`, `Equiv.swap`, `Finset`, `YoungDiagram`, `Combinatorics.Tiling.Tile`, `SimpleGraph.Cayley`, and `RepresentationTheory.Character`, but no Specht-module / symmetric-group central-character content-sum theorem and no partition-transitivity API.
theorem fang_xia_partition_transitive_of_tiling {n : ℕ} {Y : Set (Equiv.Perm (Fin n))}
(_h : LeanEval.Combinatorics.FangXiaTilingProblem.IsTiling (LeanEval.Combinatorics.FangXiaTilingProblem.transpositionsWithOne n) Y) :
∀ lam : LeanEval.Combinatorics.FangXiaTilingProblem.PartitionShape n, 0 ≤ lam.contentSum → LeanEval.Combinatorics.FangXiaTilingProblem.IsPartitionTransitive Y lam := n:ℕY:Set (Equiv.Perm (Fin n))_h:IsTiling (transpositionsWithOne n) Y⊢ ∀ (lam : PartitionShape n), 0 ≤ lam.contentSum → IsPartitionTransitive Y lam
All goals completed! 🐙Fáry–Milnor theorem (knot total curvature ≤ 4π implies unknotted)
Submitter: Kim Morrison.
Notes: A smooth knot in ℝ³ with total curvature at most 4π is unknotted. A knot is a smooth, regular, 2π-periodic, simple-on-`[0, 2π)` curve `r : ℝ → ℝ³`. Curvature is the standard parametrized expression `‖r'(t) × r''(t)‖ / ‖r'(t)‖³`; total curvature is the arc-length integral. Unknottedness is encoded as a smooth isotopy through smooth knots from r to the standard unit circle. Mathlib has the analytic primitives (`deriv`, interval integrals, `ContDiff`, `crossProduct`, Euclidean norm) but no knot-total-curvature / unknottedness API. §161 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: I. Fáry, 'Sur la courbure totale d'une courbe gauche faisant un nœud', Bull. Soc. Math. France 77 (1949) 128–138; J. Milnor, 'On the total curvature of knots', Ann. of Math. (2) 52 (1950) 248–257. §161 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classical proof goes via the **crookedness** invariant `μ(r)` of a knot: for a generic unit vector `u ∈ S²`, let `M(u)` be the number of local maxima of the height function `t ↦ ⟨r(t), u⟩` on one period, and set `μ(r) := inf M(u)` over generic `u`. (1) Every smooth knot has `M(u) ≥ 1`. A nontrivial knot has `μ(r) ≥ 2`, by the *bridge lemma*: a curve with `μ(r) = 1` lies in two half-spaces meeting along a common boundary plane and bounds an embedded disk by interpolation, hence is unknotted (this is the content Knill calls Fáry/Milnor's crookedness step). (2) An integral-geometric Crofton-style identity, with the normalised area measure `dσ` on `S²` chosen so `∫_{S²} 1 dσ = 1`, gives `∫_{S²} M(u) dσ(u) = totalCurvature(r) / (2π)`. (3) Combining (1)–(2): for a nontrivial knot, `totalCurvature(r) / (2π) = ∫ M ≥ μ(r) ≥ 2`, hence `totalCurvature(r) ≥ 4π`; the contrapositive is the Fáry–Milnor theorem. Mathlib has interval integrals, deriv, `ContDiff`, and `crossProduct`, but no knot framework, no crookedness invariant, no Crofton-style integral-geometric identity, and no unknottedness criterion.
theorem fary_milnor_total_curvature {r : ℝ → LeanEval.Geometry.FaryMilnorProblem.Space} (_hknot : LeanEval.Geometry.FaryMilnorProblem.IsSmoothKnot r)
(_hK : LeanEval.Geometry.FaryMilnorProblem.totalCurvature r ≤ 4 * Real.pi) :
LeanEval.Geometry.FaryMilnorProblem.IsUnknotted r := r:ℝ → Space_hknot:IsSmoothKnot r_hK:totalCurvature r ≤ 4 * π⊢ IsUnknotted r
All goals completed! 🐙Fatou–Julia / Cantor dichotomy
Submitter: Kim Morrison.
Notes: For the quadratic family T_c(z) = z² + c, the filled Julia set K_c is connected when c is in the Mandelbrot set and homeomorphic to the Cantor space ℕ → Bool when c is not. §62 (additional statement 1) of Knill's 'Some Fundamental Theorems in Mathematics'. The submitted statement uses the filled Julia set rather than the boundary Julia set ∂K_c; this is equivalent for the dichotomy since K_c is connected iff ∂K_c is, and in the escaping case K_c = ∂K_c is a Cantor set.
Source: P. Fatou, *Sur les équations fonctionnelles*, Bull. Soc. Math. France 47 (1919), 161-271; 48 (1920), 33-94, 208-314. G. Julia, *Mémoire sur l'itération des fonctions rationnelles*, J. Math. Pures Appl. 1 (1918), 47-245. Modern statement: A. Douady and J. H. Hubbard, *Étude dynamique des polynômes complexes I, II*, Publ. Math. Orsay 84-02, 85-04. Listed as §62 (additional statement 1) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Connected case: use the standard theorem for polynomials that the filled Julia set is connected iff all critical orbits are bounded; for z² + c the only critical point is 0, so K_c is connected iff the orbit of 0 is bounded, i.e. iff c ∈ M. Escaping case: outside M the critical orbit escapes, K_c is compact, perfect, totally disconnected, and homeomorphic to Cantor space — the standard symbolic-dynamics conjugacy via the 2-branched preimages of a large invariant disc.
theorem julia_cantor_dichotomy (c : ℂ) :
(c ∈ LeanEval.ComplexAnalysis.FatouJuliaProblem.Mandelbrot → IsConnected (LeanEval.ComplexAnalysis.FatouJuliaProblem.FilledJulia c)) ∧
(c ∉ LeanEval.ComplexAnalysis.FatouJuliaProblem.Mandelbrot → Nonempty ((LeanEval.ComplexAnalysis.FatouJuliaProblem.FilledJulia c) ≃ₜ (ℕ → Bool))) := c:ℂ⊢ (c ∈ Mandelbrot → IsConnected (FilledJulia c)) ∧ (c ∉ Mandelbrot → Nonempty (↑(FilledJulia c) ≃ₜ (ℕ → Bool)))
All goals completed! 🐙Feit–Thompson odd-order theorem
Submitter: Kim Morrison.
Notes: Every finite group of odd order is solvable. W. Feit and J. G. Thompson, Pacific J. Math. 13 (1963), 775-1029. A 255-page paper that opened the path to the Classification of Finite Simple Groups; Thompson received the Fields Medal in 1970 in part for this work. Coq formalization by Gonthier et al. 2012 (~170 000 lines); no Lean port. Stated with zero new definitions on top of mathlib (IsSolvable, Odd, Nat.card, Group, Finite). Honorable-mention entry on Freek Wiedijk's 'Formalizing 100 Theorems' page (alongside the Classification of Finite Simple Groups itself).
Source: W. Feit and J. G. Thompson, Solvability of groups of odd order, Pacific J. Math. 13 (1963), 775-1029. Coq formalization: G. Gonthier et al., A Machine-Checked Proof of the Odd Order Theorem, ITP 2013 (https://hal.inria.fr/hal-00816699). Listed as a named honorable mention on https://www.cs.ru.nl/~freek/100/.
Informal solution: The proof proceeds by contradiction: assume G is a minimal counterexample, a non-solvable group of minimal odd order. (i) Generic case: by Hall-Wielandt and the Feit-Hall theorem on solvable signalizer functors, G has a unique conjugacy class of maximal subgroups containing every Sylow normalizer; rule out via character-theoretic identities (Suzuki's Brauer table machinery). (ii) Uniqueness case: G has a single 'large' maximal subgroup M whose structure is heavily constrained; case analysis on |M|/|G| and the action of M on its Frobenius-like complements gives the contradiction. (iii) The 'CN' (centralizer-normalizer) and 'CIT' (centralizer-of-involution-trivial) case analyses use the Frobenius theorem on Frobenius groups (whose only known proof uses character theory) to constrain centralizer structure. The whole argument is organized around the dichotomy 'large' vs 'small' Sylow 2-subgroups (or rather Sylow 2-substructures, since |G| is odd: there are none, so the dichotomy is about Sylow p for the smallest p dividing |G|).
theorem feit_thompson {G : Type*} [Group G] [Finite G]
(_h : Odd (Nat.card G)) : IsSolvable G := G:Type u_1inst✝¹:Group Ginst✝:Finite G_h:Odd (Nat.card G)⊢ IsSolvable G
All goals completed! 🐙Fermat's Last Theorem
Submitter: Xuanji Li.
Notes: Fermat's Last Theorem: a^n + b^n = c^n has no nontrivial natural solution when n >= 3.
Source: https://en.wikipedia.org/wiki/Fermat%27s_Last_Theorem
Informal solution: via https://en.wikipedia.org/wiki/Modularity_theorem
theorem fermat_last_theorem :
FermatLastTheorem := ⊢ FermatLastTheorem
All goals completed! 🐙Finite Ramsey theorem for graphs
Submitter: Kim Morrison.
Notes: States finite Ramsey existence for red/blue edge colourings of complete graphs, encoded by a graph and its complement.
Source: Classical theorem in Ramsey theory.
Informal solution: Show that for every r and s there is an n such that every graph on n vertices contains either a clique of size r or an independent set of size s.
theorem finite_graph_ramsey_theorem :
∀ r s : ℕ, 2 ≤ r → 2 ≤ s → ∃ n : ℕ, ∀ G : SimpleGraph (Fin n), ¬ G.CliqueFree r ∨ ¬ Gᶜ.CliqueFree s := ⊢ ∀ (r s : ℕ), 2 ≤ r → 2 ≤ s → ∃ n, ∀ (G : SimpleGraph (Fin n)), ¬G.CliqueFree r ∨ ¬Gᶜ.CliqueFree s
All goals completed! 🐙Burnside p^a q^b theorem
finite_group_isSolvable_of_card_eq_prime_pow_mul_prime_pow
Submitter: Kim Morrison.
Notes: Burnside's theorem that a finite group of order p^a q^b is solvable.
Source: Classical theorem in finite group theory.
Informal solution: Use character theory and induction on the group order to prove solvability.
theorem finite_group_isSolvable_of_card_eq_prime_pow_mul_prime_pow {G : Type*} [Group G] [Fintype G]
{p q a b : ℕ}
(hp : Nat.Prime p)
(hq : Nat.Prime q)
(hpq : p ≠ q)
(hcard : Fintype.card G = p ^ a * q ^ b) :
IsSolvable G := G:Type u_1inst✝¹:Group Ginst✝:Fintype Gp:ℕq:ℕa:ℕb:ℕhp:Nat.Prime phq:Nat.Prime qhpq:p ≠ qhcard:Fintype.card G = p ^ a * q ^ b⊢ IsSolvable G
All goals completed! 🐙Possible orders of 5-transitive finite permutation groups
five_transitive_card_classification
Submitter: Kim Morrison.
Notes: If a finite group acts faithfully and 5-transitively on a set X with |X| ≥ 5, then |G| is one of n!, n!/2 (only when n ≥ 7), 95040 (= |M₁₂|), or 244823040 (= |M₂₄|). The 5 ≤ |X| hypothesis prevents the 5-transitivity condition from being vacuously satisfied (otherwise small groups like C₃ on Fin 3 would qualify). Classification is folklore via CFSG; no CFSG-free proof is known.
Source: Folklore via CFSG; classical work of Mathieu, Jordan; modern accounts in P. Cameron, Permutation Groups (1999).
Informal solution: By CFSG, the only finite 2-transitive groups are explicitly classified. Restricting to 5-transitive: the symmetric group Sₙ is k-transitive for all k ≤ n; the alternating group Aₙ is k-transitive for k ≤ n − 2 (so 5-transitive for n ≥ 7); among the Mathieu groups, M₁₂ is sharply 5-transitive on 12 points and M₂₄ is 5-transitive on 24 points. M₁₁ and M₂₃ are only 4-transitive and so do not appear. No other finite simple group has a 5-transitive permutation representation.
theorem five_transitive_card_classification (G X : Type) [Group G] [Fintype G] [Fintype X]
[MulAction G X] [FaithfulSMul G X]
(hcard : 5 ≤ Fintype.card X)
(h5 : ∀ a b : Fin 5 → X, Function.Injective a → Function.Injective b →
∃ g : G, ∀ i, g • a i = b i) :
let n := Fintype.card X
Fintype.card G = n.factorial ∨
(7 ≤ n ∧ Fintype.card G = n.factorial / 2) ∨
(n = 12 ∧ Fintype.card G = 95040) ∨
(n = 24 ∧ Fintype.card G = 244823040) := G:TypeX:Typeinst✝⁴:Group Ginst✝³:Fintype Ginst✝²:Fintype Xinst✝¹:MulAction G Xinst✝:FaithfulSMul G Xhcard:5 ≤ Fintype.card Xh5:∀ (a b : Fin 5 → X), Function.Injective a → Function.Injective b → ∃ g, ∀ (i : Fin 5), g • a i = b i⊢ let n := Fintype.card X;
Fintype.card G = n.factorial ∨
7 ≤ n ∧ Fintype.card G = n.factorial / 2 ∨ n = 12 ∧ Fintype.card G = 95040 ∨ n = 24 ∧ Fintype.card G = 244823040
All goals completed! 🐙Pointwise and Cesàro convergence of Fourier series (Dirichlet, Fejér)
Submitter: Kim Morrison.
Notes: §46 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' records two Fourier convergence theorems for complex-valued 2π-periodic functions. Dirichlet's theorem says that if f is C¹, the symmetric Fourier partial sums S_N(f)(x) = ∑_{n=-N}^N f̂_n e^{inx} converge pointwise to f(x). Fejér's theorem says that if f is merely continuous, the Cesàro means (S_0 + ⋯ + S_N)/(N+1) converge uniformly to f. Mathlib has Fourier coefficients, Fourier characters, L² Fourier theory, and uniform convergence from summable coefficients (the C¹ bound |f̂_n| ≤ C/n is not ℓ¹-summable, so that route does not apply), but not the Dirichlet-kernel pointwise theorem, Fejér kernels/Cesàro means, or Fejér's theorem.
Source: P. G. L. Dirichlet (1829) and L. Fejér (1900). Listed as §46 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Dirichlet: write S_N(f)(x) = (1/2π) ∫ f(x−t) D_N(t) dt with the Dirichlet kernel D_N(t) = ∑_{n=−N}^N e^{int} = sin((N+½)t)/sin(t/2). Then S_N(f)(x) − f(x) = (1/2π) ∫ (f(x−t) − f(x)) D_N(t) dt; for C¹ f the difference quotient (f(x−t)−f(x))/sin(t/2) is bounded and integrable, so by the Riemann–Lebesgue lemma the integral against sin((N+½)t) tends to 0. Fejér: the Cesàro means satisfy σ_N(f)(x) = (1/2π) ∫ f(x−t) F_N(t) dt with the Fejér kernel F_N(t) = (1/(N+1)) (sin((N+1)t/2)/sin(t/2))², which is a nonnegative approximate identity (F_N ≥ 0, total mass 1, mass concentrating at 0). Convolution of a continuous (hence uniformly continuous) periodic f with an approximate identity converges uniformly, giving σ_N(f) → f uniformly.
/-- **Dirichlet's pointwise convergence theorem** (§46). For every `C¹`
2π-periodic complex function `f`, the symmetric Fourier partial sums `S_N(f)(x)`
converge to `f(x)` at every point `x ∈ ℝ`. -/
theorem dirichlet_pointwise
{f : ℝ → ℂ} (_hperiod : Function.Periodic f (2 * Real.pi)) (_hC1 : ContDiff ℝ 1 f)
(x : ℝ) :
Tendsto (fun N : ℕ => fourierPartialSum f N x) atTop (𝓝 (f x)) := f:ℝ → ℂ_hperiod:Function.Periodic f (2 * Real.pi)_hC1:ContDiff ℝ 1 fx:ℝ⊢ Tendsto (fun N => fourierPartialSum f N x) atTop (𝓝 (f x))
All goals completed! 🐙/-- **Fejér's theorem** (§46). For every *continuous* 2π-periodic complex
function `f` — without the `C¹` hypothesis of Dirichlet's theorem — the Cesàro
means `σ_N(f)` of the symmetric Fourier partial sums converge to `f` uniformly
on `ℝ`. -/
theorem fejer
{f : ℝ → ℂ} (_hperiod : Function.Periodic f (2 * Real.pi)) (_hcont : Continuous f) :
TendstoUniformly (fun N : ℕ => fourierCesaroMean f N) f atTop := f:ℝ → ℂ_hperiod:Function.Periodic f (2 * Real.pi)_hcont:Continuous f⊢ TendstoUniformly (fun N => fourierCesaroMean f N) f atTop
All goals completed! 🐙Fraser: Fourier decay for finite-field Kakeya sets is q^{-1} and sharp
Submitter: Kim Morrison.
Notes: For every d ≥ 2, every finite-field Kakeya set K ⊆ F_q^d (a subset containing a line in every direction) supports a probability measure μ whose finite-field Fourier transform `μ̂(ξ) = ∑_x χ(-ξ·x) μ(x)` satisfies `‖μ̂(ξ)‖ ≤ q^{-1}` at every nonzero frequency, and this exponent is sharp in every dimension: for every κ ∈ (0, 1) some threshold Q makes the bound `κ · q^{-1}` saturated by every probability measure on a suitable Kakeya set, for every finite field of cardinality ≥ Q. Headline Theorem 2.4 of Fraser, *Fourier analytic properties of Kakeya sets in finite fields*, arXiv:2505.09464.
Source: J.M. Fraser, 'Fourier analytic properties of Kakeya sets in finite fields', Bull. London Math. Soc. 58(5) (2026); DOI 10.1112/blms.70367; arXiv:2505.09464.
Informal solution: For the upper bound, Fraser builds μ as an incidence-weighted measure: choose one affine line through each direction (a `(d, 1)`-set realising the Kakeya property), and weight the resulting union by the appropriate normalised line-counting measure. Expanding `μ̂(ξ)` and applying orthogonality of additive characters along each line — `∑_{a ∈ F_q} χ(a · ⟨ξ, x⟩) = 0` whenever `⟨ξ, x⟩ ≠ 0` — collapses the sum at every nonzero frequency to the residual contribution from directions parallel to `ξ`, yielding the `q^{-1}` bound. For sharpness, Fraser starts with a small planar Kakeya set `K₀ ⊆ F_q²` (an O(q²)-size configuration with the Kakeya property), lifts it to `K = K₀ ⊕ F_q^{d−2} ⊆ F_q^d`, and projects an arbitrary probability measure on `K` down to `F_q²`. A support-size Plancherel argument on the projected measure produces a nonzero frequency at which the Fourier coefficient is at least `(1 − o(1)) · q^{-1}`. Mathlib has `AddChar`, the primitive-character lift `AddChar.FiniteField.primitiveChar_to_Complex`, finite vector-space arithmetic via `Fin d → F`, and `Fintype.card` / finite-sum integration over a finite type, but no finite-field Kakeya theorem, no Salem-set API, no Plancherel for finite abelian groups in the form Fraser uses, and no formalisation of arXiv:2505.09464.
theorem fraser_kakeya_fourier_decay_and_sharp {d : ℕ} (_hd : 2 ≤ d) {K : Set (LeanEval.Combinatorics.FraserKakeyaProblem.Space F d)} (_hK : LeanEval.Combinatorics.FraserKakeyaProblem.IsKakeya K)
(χ : AddChar F ℂ) (_hχ : χ ≠ 1) :
(∃ μ : LeanEval.Combinatorics.FraserKakeyaProblem.Space F d → ℝ, LeanEval.Combinatorics.FraserKakeyaProblem.IsProbabilityMeasureOn K μ ∧
∀ ξ : LeanEval.Combinatorics.FraserKakeyaProblem.Space F d, ξ ≠ 0 →
‖fourier χ μ ξ‖ ≤ (Fintype.card F : ℝ)⁻¹) ∧
(∀ κ : ℝ, 0 < κ → κ < 1 →
∃ Q : ℕ, ∀ (F' : Type*) [Field F'] [Fintype F'] [DecidableEq F'],
Q ≤ Fintype.card F' →
∃ K' : Set (LeanEval.Combinatorics.FraserKakeyaProblem.Space F' d), LeanEval.Combinatorics.FraserKakeyaProblem.IsKakeya K' ∧
∀ μ : LeanEval.Combinatorics.FraserKakeyaProblem.Space F' d → ℝ, LeanEval.Combinatorics.FraserKakeyaProblem.IsProbabilityMeasureOn K' μ →
∃ ξ : LeanEval.Combinatorics.FraserKakeyaProblem.Space F' d, ξ ≠ 0 ∧
κ * (Fintype.card F' : ℝ)⁻¹ ≤
‖fourier (AddChar.FiniteField.primitiveChar_to_Complex F') μ ξ‖) := F:Type u_1inst✝²:Field Finst✝¹:Fintype Finst✝:DecidableEq Fd:ℕ_hd:2 ≤ dK:Set (Space F d)_hK:IsKakeya Kχ:AddChar F ℂ_hχ:χ ≠ 1⊢ (∃ μ,
IsProbabilityMeasureOn K μ ∧
∀ (ξ : Space F d), ξ ≠ 0 → ‖LeanEval.Combinatorics.FraserKakeyaProblem.fourier χ μ ξ‖ ≤ (↑(Fintype.card F))⁻¹) ∧
∀ (κ : ℝ),
0 < κ →
κ < 1 →
∃ Q,
∀ (F' : Type u_2) [inst : Field F'] [inst_1 : Fintype F'] [DecidableEq F'],
Q ≤ Fintype.card F' →
∃ K',
IsKakeya K' ∧
∀ (μ : Space F' d → ℝ),
IsProbabilityMeasureOn K' μ →
∃ ξ,
ξ ≠ 0 ∧
κ * (↑(Fintype.card F'))⁻¹ ≤
‖LeanEval.Combinatorics.FraserKakeyaProblem.fourier
(AddChar.FiniteField.primitiveChar_to_Complex F') μ ξ‖
All goals completed! 🐙Frobenius's theorem: the Frobenius kernel is normal
Submitter: Kim Morrison.
Notes: For a Frobenius group G acting transitively and faithfully on X with |X| ≥ 2, non-trivial point stabilisers, and the Frobenius condition (no non-identity element fixes more than one point), the set {1} ∪ {g | g fixes no point} is a normal subgroup. The only known proof uses Frobenius's induction-of-characters argument; no purely group-theoretic proof has been found in over a century.
Source: G. Frobenius, Über auflösbare Gruppen IV, Sitzungsber. Akad. Wiss. Berlin (1901).
Informal solution: Let H = stabilizer(x₀). Construct a class function θ on H of the form (1_H minus restriction of certain induced characters), and apply Frobenius reciprocity to lift θ to a generalised character of G whose kernel is exactly the Frobenius kernel K. The fact that the lift remains a virtual character (i.e. integer-valued combination of irreducibles) is exactly the content; that K is then a subgroup follows from K being a kernel.
theorem frobenius_kernel_isNormal (G X : Type) [Group G] [Fintype G] [Fintype X]
[MulAction G X] [FaithfulSMul G X]
(hcard : 2 ≤ Fintype.card X)
(htrans : ∀ x y : X, ∃ g : G, g • x = y)
(hstab : ∀ x : X, MulAction.stabilizer G x ≠ ⊥)
(hfrob : ∀ g : G, g ≠ 1 → ∀ x y : X, g • x = x → g • y = y → x = y) :
∃ N : Subgroup G, N.Normal ∧
(N : Set G) = {1} ∪ {g : G | ∀ x : X, g • x ≠ x} := G:TypeX:Typeinst✝⁴:Group Ginst✝³:Fintype Ginst✝²:Fintype Xinst✝¹:MulAction G Xinst✝:FaithfulSMul G Xhcard:2 ≤ Fintype.card Xhtrans:∀ (x y : X), ∃ g, g • x = yhstab:∀ (x : X), MulAction.stabilizer G x ≠ ⊥hfrob:∀ (g : G), g ≠ 1 → ∀ (x y : X), g • x = x → g • y = y → x = y⊢ ∃ N, N.Normal ∧ ↑N = {1} ∪ {g | ∀ (x : X), g • x ≠ x}
All goals completed! 🐙Fundamental theorem of topos theory
Submitter: Kim Morrison.
Notes: The slice category E/X of an elementary topos E is again an elementary topos. The trusted helper IsTopos (non-hole) bundles finite limits + cartesian-closed (CartesianMonoidalCategory + MonoidalClosed) + a subobject classifier. Mathlib has finite limits and cartesian-monoidal structure on Over X and a HasSubobjectClassifier class, but neither MonoidalClosed (Over X) (the locally-cartesian-closed upgrade) nor HasSubobjectClassifier (Over X). Candidate from §54 of the Knill survey.
Source: F. W. Lawvere & M. Tierney (elementary topos, 1970); see S. Mac Lane & I. Moerdijk, *Sheaves in Geometry and Logic*, IV.7. Knill, *Some fundamental theorems in mathematics*, §54.
Informal solution: Reconstruct the three topos structures on E/X from those on E. Finite limits in the slice come from the comma-category construction (already in Mathlib). Cartesian closedness is the locally-cartesian-closed upgrade: the pullback functor f* : E/Y → E/X has a right adjoint Π_f (dependent product), built from exponentials in E; this gives internal homs in E/X. The subobject classifier of E/X is (Ω × X → X): a subobject of (A → X) is classified by composing A's characteristic map with the projection. Verifying the pullback/universal properties (Mac Lane–Moerdijk IV.7) is the substantive work.
theorem fundamental_topos_theory {E : Type*} [Category E]
(hE : LeanEval.ToposTheory.IsTopos E) (X : E) : LeanEval.ToposTheory.IsTopos (Over X) := E:Type u_1inst✝:Category.{u_2, u_1} EhE:IsTopos EX:E⊢ IsTopos (Over X)
All goals completed! 🐙Furstenberg measure-preserving multiple recurrence
Submitter: Kim Morrison.
Notes: Furstenberg's 1977 measure-preserving multiple recurrence theorem. For every measure-preserving T on a probability space (Ω, μ), every measurable A with μ A > 0, and every d ≥ 1, some n ≥ 1 satisfies μ(A ∩ T^{-n}A ∩ T^{-2n}A ∩ ⋯ ∩ T^{-d·n}A) > 0. §56 (additional statement) of Knill's 'Some Fundamental Theorems in Mathematics'. Knill states the automorphism/image version; this file uses the standard preimage formulation for a general measure-preserving transformation. For invertible T the two are equivalent (apply the statement to T⁻¹, or shift the intersection by an iterate). The d = 1 case is the classical Poincaré recurrence theorem.
Source: H. Furstenberg, *Ergodic behavior of diagonal measures and a theorem of Szemerédi on arithmetic progressions*, Journal d'Analyse Mathématique 31 (1977), 204-256. Listed as §56 (additional statement 1) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Furstenberg's structure-theorem proof decomposes the measure-preserving system (Ω, μ, T) into a transfinite tower of relatively compact (Kronecker) extensions and weakly-mixing extensions. Multiple recurrence is established for each layer — for compact factors via uniform almost-periodicity and equidistribution; for weakly-mixing extensions via van der Corput estimates — and lifted through the tower by a Furstenberg–Zimmer-style relative theorem. Furstenberg used this multiple recurrence theorem to give the first ergodic-theoretic proof of Szemerédi's theorem on arithmetic progressions.
theorem furstenberg_measure_recurrence {Ω : Type*}
[MeasurableSpace Ω] (μ : MeasureTheory.Measure Ω)
[MeasureTheory.IsProbabilityMeasure μ]
{T : Ω → Ω} (_hT : MeasureTheory.MeasurePreserving T μ μ)
{A : Set Ω} (_hA : MeasurableSet A) (_h0 : 0 < μ A)
(d : ℕ) (_hd : 1 ≤ d) :
∃ n : ℕ, 1 ≤ n ∧
0 < μ (A ∩ ⋂ j ∈ Finset.Icc 1 d, T^[j * n] ⁻¹' A) := Ω:Type u_1inst✝¹:MeasurableSpace Ωμ:Measure Ωinst✝:IsProbabilityMeasure μT:Ω → Ω_hT:MeasurePreserving T μ μA:Set Ω_hA:MeasurableSet A_h0:0 < μ Ad:ℕ_hd:1 ≤ d⊢ ∃ n, 1 ≤ n ∧ 0 < μ (A ∩ ⋂ j ∈ Finset.Icc 1 d, T^[j * n] ⁻¹' A)
All goals completed! 🐙Furstenberg–Weiss topological multiple recurrence (single-transformation form)
Submitter: Kim Morrison.
Notes: Single-transformation form of the Furstenberg–Weiss topological multiple recurrence theorem (1978), as stated in §56 of Knill's 'Some Fundamental Theorems in Mathematics'. For every homeomorphism T of a nonempty compact metric space X, there is a multiply recurrent point: for every d ≥ 1 there is a strictly increasing n : ℕ → ℕ with T^{j · n_k}(x) → x for every j ∈ {1, …, d}. The file ships the IsMultiplyRecurrent predicate. Compact-Hausdorff alone is insufficient for the sequential formulation (the shift on Ultrafilter ℤ is a counterexample); first-countability would suffice, but the standard Furstenberg–Weiss statement uses compact metric. This is the specialisation to the family T, T², …, T^d of the more general theorem for commuting homeomorphisms.
Source: H. Furstenberg and B. Weiss, *Topological dynamics and combinatorial number theory*, Journal d'Analyse Mathématique 34 (1978), 61-85. Listed as §56 (main theorem) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Standard proof via compactness + Zorn's lemma. Consider the product diagonal T̃ := (T, T², …, T^d) acting on the product Xᵈ, and pass to a minimal nonempty closed T̃-invariant subset M ⊆ Xᵈ (Zorn). The diagonal point (x, x, …, x) ∈ M for some x ∈ X is the multiply recurrent point: the recurrence of (x, …, x) under T̃ is exactly simultaneous return of T(x), …, T^d(x) to x. Showing the diagonal point lies in M requires the multiple-recurrence content of the proof, typically via topological IP-recurrence in product systems or via Furstenberg's correspondence principle reducing to van der Waerden / Hales–Jewett. The d = 1 case is the classical Birkhoff recurrence, which uses the same Zorn-minimality argument.
theorem furstenberg_topological_recurrence {X : Type*} [MetricSpace X]
[CompactSpace X] [Nonempty X] (T : X ≃ₜ X) :
∃ x : X, LeanEval.Dynamics.IsMultiplyRecurrent (T : X → X) x := X:Type u_1inst✝²:MetricSpace Xinst✝¹:CompactSpace Xinst✝:Nonempty XT:X ≃ₜ X⊢ ∃ x, IsMultiplyRecurrent (⇑T) x
All goals completed! 🐙Existence of a 64-dim irreducible g₂-representation with 14 tensor-square isotypic components
Submitter: Kim Morrison.
Notes: g₂ is the smallest exceptional Lie algebra, defined here by the Serre construction (Mathlib's `LieAlgebra.g₂`). The formal statement is existential: it asks for some 64-dimensional irreducible representation whose tensor square has 14 isotypic components. In the intended solution, one constructs such a witness using the highest-weight representation with highest weight ω₁ + ω₂ (the sum of the two fundamental weights). The U(g)-module structure on V ⊗ V used in the statement comes from lifting the Lie action via the universal enveloping algebra.
Source: Classical: representation theory of the exceptional Lie algebra g₂.
Informal solution: Construct V as the irreducible 64-dim representation V(ω₁+ω₂). Decomposition (LiE-verified): V⊗V = V(0,0) + V(1,0) + 2V(0,1) + 2V(2,0) + 2V(1,1) + 2V(0,2) + 3V(3,0) + 3V(2,1) + V(1,2) + V(0,3) + 2V(4,0) + 2V(3,1) + V(2,2) + V(5,0). This is used to produce the existential witness required by the formal statement.
theorem g2_irrep_tensor_square_decomp :
∃ (V : Type) (_ : AddCommGroup V) (_ : Module ℂ V)
(_ : LieRingModule (LieAlgebra.g₂ ℂ) V) (_ : LieModule ℂ (LieAlgebra.g₂ ℂ) V),
Module.finrank ℂ V = 64 ∧
LieModule.IsIrreducible ℂ (LieAlgebra.g₂ ℂ) V ∧
(isotypicComponents (UniversalEnvelopingAlgebra ℂ (LieAlgebra.g₂ ℂ))
(V ⊗[ℂ] V)).ncard = 14 := ⊢ ∃ V x x_1 x_2,
∃ (x_3 : LieModule ℂ (LieAlgebra.g₂ ℂ) V),
Module.finrank ℂ V = 64 ∧
LieModule.IsIrreducible ℂ (LieAlgebra.g₂ ℂ) V ∧
(isotypicComponents (UniversalEnvelopingAlgebra ℂ (LieAlgebra.g₂ ℂ)) (V ⊗[ℂ] V)).ncard = 14
All goals completed! 🐙Schur-Weyl duality: GL(V) image equals centralizer of S_k image
glAction_range_eq_centralizer_symAction
Submitter: Kim Morrison.
Notes: The other direction of Schur-Weyl duality: the subalgebra of End(V^⊗k) generated by the diagonal GL(V) action equals the centralizer of the subalgebra generated by the S_k action.
Source: H. Weyl, The Classical Groups, 1939; I. Schur, Über die rationalen Darstellungen der allgemeinen linearen Gruppe, 1927.
Informal solution: By polarization over R with k! invertible, the subalgebra generated by {g^⊗k : g ∈ GL(V)} is precisely the image of Sym^k(End V), i.e., the endomorphisms of V^⊗k fixed by the S_k-action on tensor factors of End V. An endomorphism of V^⊗k fixed by this action is exactly one commuting with the S_k action on V^⊗k.
theorem glAction_range_eq_centralizer_symAction {R : Type*} [Field R]
{M : Type*} [AddCommGroup M] [Module R M] [FiniteDimensional R M]
{k : ℕ} [Invertible (k.factorial : R)] :
Algebra.adjoin R (Set.range (LeanEval.RepresentationTheory.glAction R M k)) =
Subalgebra.centralizer R (Set.range (LeanEval.RepresentationTheory.symAction R M k)) := R:Type u_1inst✝⁴:Field RM:Type u_2inst✝³:AddCommGroup Minst✝²:Module R Minst✝¹:FiniteDimensional R Mk:ℕinst✝:Invertible ↑k.factorial⊢ Algebra.adjoin R (Set.range ⇑(glAction R M k)) = Subalgebra.centralizer R (Set.range ⇑(symAction R M k))
All goals completed! 🐙Glauberman's Z* theorem for isolated involutions
Submitter: Kim Morrison.
Notes: For a finite group G with an isolated involution t (no distinct conjugate of t commutes with t), there is a normal subgroup N ⊴ G of odd order such that every commutator g·t·g⁻¹·t⁻¹ lies in N — i.e., t is central in G/N. The hypothesis is the global form of isolation, equivalent to (but more self-contained than) the standard Sylow-local form. Proof uses modular Brauer character theory.
Source: G. Glauberman, Central elements in core-free groups, J. Algebra 4 (1966).
Informal solution: Take N = O(G), the largest normal subgroup of odd order. By Glauberman's modular character argument, isolation of t in C_G(t) implies t commutes with every element of G modulo O(G). The core of the proof is the analysis of the principal 2-block of G via Brauer characters and the Z*-style fusion theorem.
theorem glauberman_zStar (G : Type) [Group G] [Fintype G]
(t : G) (ht1 : t ≠ 1) (ht2 : t * t = 1)
(hisolated : ∀ g : G, (g * t * g⁻¹) * t = t * (g * t * g⁻¹) →
g * t * g⁻¹ = t) :
∃ N : Subgroup G, N.Normal ∧ Odd (Nat.card N) ∧
∀ g : G, g * t * g⁻¹ * t⁻¹ ∈ N := G:Typeinst✝¹:Group Ginst✝:Fintype Gt:Ght1:t ≠ 1ht2:t * t = 1hisolated:∀ (g : G), g * t * g⁻¹ * t = t * (g * t * g⁻¹) → g * t * g⁻¹ = t⊢ ∃ N, N.Normal ∧ Odd (Nat.card ↥N) ∧ ∀ (g : G), g * t * g⁻¹ * t⁻¹ ∈ N
All goals completed! 🐙Gleason's theorem (finite-dimensional)
Submitter: Kim Morrison.
Notes: Gleason's theorem in finite dimensions: every frame function on the orthogonal projections of a complex Hilbert space of dimension at least 3 is given by P ↦ Tr(ρ P) for the unique density operator ρ. Stated using a bespoke `FrameFunction` structure (non-negative, additive on orthogonal projection pairs, normalized at the identity) and the standard Mathlib trace `LinearMap.trace`. Finite additivity on orthogonal pairs already implies countable additivity in finite dimensions, so the hypothesis matches Gleason's original σ-additive frame functions.
Source: A. M. Gleason, Measures on the closed subspaces of a Hilbert space, J. Math. Mech. 6 (1957), 885-893.
Informal solution: Gleason's original proof analyses regular frame functions on the unit sphere of R^3 by showing they are continuous and then quadratic, then promotes the resulting positive quadratic form on every 3-dimensional real subspace of H to a positive operator ρ on H whose diagonal in any orthonormal basis recovers the frame function, with Tr(ρ) = μ(I) = 1 ensuring ρ is a density operator.
theorem gleason_theorem_finite {H : Type*} [NormedAddCommGroup H] [InnerProductSpace ℂ H]
[CompleteSpace H] [FiniteDimensional ℂ H]
(hdim : 3 ≤ Module.finrank ℂ H)
(f : LeanEval.Analysis.FrameFunction H) :
∃! ρ : H →L[ℂ] H,
ContinuousLinearMap.IsPositive ρ ∧
reTr ρ = 1 ∧
∀ P : H →L[ℂ] H, LeanEval.Analysis.IsOrthProj P → f.μ P = reTr (ρ * P) := H:Type u_1inst✝³:NormedAddCommGroup Hinst✝²:InnerProductSpace ℂ Hinst✝¹:CompleteSpace Hinst✝:FiniteDimensional ℂ Hhdim:3 ≤ Module.finrank ℂ Hf:FrameFunction H⊢ ∃! ρ, ρ.IsPositive ∧ reTr ρ = 1 ∧ ∀ (P : H →L[ℂ] H), IsOrthProj P → f.μ P = reTr (ρ * P)
All goals completed! 🐙Gleason's theorem (separable Hilbert space)
Submitter: Kim Morrison.
Notes: Gleason's theorem for a separable complex Hilbert space H of dimension at least 3, in Gleason's original `frame function on the unit sphere' formulation: any non-negative function on the unit sphere whose values sum to 1 along every Hilbert basis is given by x ↦ re ⟨x, ρ x⟩ for some positive bounded operator ρ. The Lean conclusion does not assert that ρ is trace-class with Tr(ρ) = 1; stating that would require trace-class infrastructure not yet at this Mathlib pin. This side-steps the absence of Schatten 1 / trace-class infrastructure in Mathlib at the time of writing.
Source: A. M. Gleason, Measures on the closed subspaces of a Hilbert space, J. Math. Mech. 6 (1957), 885-893.
Informal solution: Reduce to the real 3-dimensional case via restriction to real subspaces of H, where Gleason's continuity argument plus an analysis of regular frame functions on S^2 gives a positive quadratic form. Patch these forms together using rotation-invariance and the assumed basis-sum normalization to obtain a globally defined positive bounded operator ρ on H reproducing the frame function on every unit vector.
theorem gleason_theorem_separable {H : Type*} [NormedAddCommGroup H] [InnerProductSpace ℂ H]
[CompleteSpace H] [TopologicalSpace.SeparableSpace H]
(hdim : 3 ≤ Module.rank ℂ H)
(f : LeanEval.Analysis.SphereFrameFunction H) :
∃ ρ : H →L[ℂ] H,
ContinuousLinearMap.IsPositive ρ ∧
∀ x : Metric.sphere (0 : H) 1,
f.f x = (inner ℂ (x : H) (ρ (x : H))).re := H:Type u_1inst✝³:NormedAddCommGroup Hinst✝²:InnerProductSpace ℂ Hinst✝¹:CompleteSpace Hinst✝:TopologicalSpace.SeparableSpace Hhdim:3 ≤ Module.rank ℂ Hf:SphereFrameFunction H⊢ ∃ ρ, ρ.IsPositive ∧ ∀ (x : ↑(Metric.sphere 0 1)), f.f x = (inner ℂ (↑x) (ρ ↑x)).re
All goals completed! 🐙The Golod–Shafarevich inequality
Submitter: Kim Morrison.
Notes: For every prime p and every nontrivial finite p-group Q, d(Q)² < 4 r(Q), where d(Q) is the generator rank (minimal size of a generating set) and r(Q) = dim_{𝔽_p} H²(Q; 𝔽_p) is the relation rank. The trusted helpers generatorRank and relationRank (non-holes) fix the meaning of d and r, viewing a finite p-group as a discrete topological group so that topological generation and continuous cohomology agree with their abstract counterparts. This is one of the two external inputs taken as a hypothesis in Logical Intelligence's formalization of the disproof of Erdős's unit-distance conjecture (Hyp_GolodShafarevichInequality). The statement was reviewed for faithfulness against NSW Theorem 3.9.7 and Serre.
Source: NSW (J. Neukirch, A. Schmidt, K. Wingberg, *Cohomology of Number Fields*, 2nd ed., Grundlehren 323, Springer 2008), Theorem 3.9.7; J.-P. Serre, *Galois Cohomology*, Chapter I, Appendix 2, Theorem 1. Lean hypothesis: https://github.com/logical-intelligence/erdos-unit-distance (Hyp_GolodShafarevichInequality).
Informal solution: The Golod–Shafarevich theorem: a finite p-group with generator rank d and relation rank r, where r is identified with dim_{𝔽_p} H²(Q; 𝔽_p) (equivalently the number of relations in a minimal pro-p presentation), satisfies r > d²/4. Proof via the graded 𝔽_p-algebra of the group: form the completed group algebra 𝔽_p⟦Q⟧, filter by powers of the augmentation ideal, and study the associated graded algebra A = ⊕ 𝔞ⁿ/𝔞ⁿ⁺¹. With d generators and r relations its Hilbert series H_A(t) is bounded below termwise by (1 - dt + rt²)⁻¹; if d² ≥ 4r the quadratic 1 - dt + rt² has a positive real root, forcing the (nonnegative) coefficients to fail to terminate, contradicting finiteness of Q. Hence d² < 4r.
theorem golod_shafarevich_inequality (p : ℕ) [Fact p.Prime] (Q : Type)
[Group Q] [TopologicalSpace Q] [IsTopologicalGroup Q]
[DiscreteTopology Q] [Finite Q] :
IsPGroup p Q → Nontrivial Q →
(generatorRank Q : ℝ) ^ 2 < 4 * (relationRank p Q : ℝ) := p:ℕinst✝⁵:Fact (Nat.Prime p)Q:Typeinst✝⁴:Group Qinst✝³:TopologicalSpace Qinst✝²:IsTopologicalGroup Qinst✝¹:DiscreteTopology Qinst✝:Finite Q⊢ IsPGroup p Q → Nontrivial Q → ↑(generatorRank Q) ^ 2 < 4 * ↑(relationRank p Q)
All goals completed! 🐙Gorenstein–Walter theorem (dihedral Sylow 2-subgroup)
Submitter: Kim Morrison.
Notes: A finite nonabelian simple group with dihedral Sylow 2-subgroups is isomorphic to PSL₂(q) for some odd prime power q ≥ 5, or to A₇. D. Gorenstein and J. H. Walter, 'The characterization of finite groups with dihedral Sylow 2-subgroups', J. Algebra 2 (1965), 85-151, 218-270, 354-393 (in three parts, ~250 pages). The first major application of the Bender method in CFSG and a template for the later Sylow-2-structure papers. No new definitions: uses Mathlib's PSL notation, DihedralGroup, alternatingGroup, GaloisField, and Sylow.
Source: D. Gorenstein and J. H. Walter, The characterization of finite groups with dihedral Sylow 2-subgroups, J. Algebra 2 (1965), 85-151, 218-270, 354-393. https://doi.org/10.1016/0021-8693(65)90027-X
Informal solution: Three-part argument. Part I (Gorenstein-Walter): if G has dihedral Sylow 2-subgroup, then either G ≅ A₇, or O(G) — the largest normal subgroup of odd order — has G/O(G) of a very specific structure: an extension of PSL₂(q) for some odd q ≥ 5 by an outer automorphism. Part II rules out the outer-automorphism case using Brauer's theory of blocks of defect one and the analysis of involution centralizers (this is where the Bender method first appears). Part III shows O(G) = 1 under the simplicity hypothesis, using the Z*-theorem and signalizer functor methods. Combined, the simple G is isomorphic to PSL₂(q) for some odd q ≥ 5 or to A₇.
theorem gorenstein_walter (G : Type) [Group G] [Finite G] [IsSimpleGroup G]
(hnonab : ∃ a b : G, a * b ≠ b * a)
(P : Sylow 2 G)
(_hdih : ∃ n : ℕ, Nonempty ((P : Subgroup G) ≃* DihedralGroup n)) :
Nonempty (G ≃* alternatingGroup (Fin 7)) ∨
∃ p k : ℕ, ∃ _hp : Fact p.Prime, Odd p ∧ 5 ≤ p ^ k ∧
Nonempty (G ≃* PSL(2, GaloisField p k)) := G:Typeinst✝²:Group Ginst✝¹:Finite Ginst✝:IsSimpleGroup Ghnonab:∃ a b, a * b ≠ b * aP:Sylow 2 G_hdih:∃ n, Nonempty (↥↑P ≃* DihedralGroup n)⊢ Nonempty (G ≃* ↥(alternatingGroup (Fin 7))) ∨
∃ p k, ∃ (_hp : Fact (Nat.Prime p)), Odd p ∧ 5 ≤ p ^ k ∧ Nonempty (G ≃* PSL(2, GaloisField p k))
All goals completed! 🐙Green–Tao theorem
Submitter: Kim Morrison.
Notes: §37 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The set of primes contains arbitrarily long arithmetic progressions: for every k there exist a ≥ 0 and b ≥ 1 such that a + b·j is prime for every j < k. Mathlib has Dirichlet's theorem (Nat.infinite_setOf_prime_and_modEq) and Roth's theorem on 3-APs (roth_3ap_theorem_nat) but not Green-Tao. As of 2026 the theorem has not been formalized in any major proof assistant (a long-standing open formalization target).
Source: B. Green and T. Tao, The primes contain arbitrarily long arithmetic progressions, Ann. of Math. 167 (2008), 481-547 (announced 2004). Listed as §37 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The proof has three main steps. (i) A transference principle: it suffices to find arbitrarily long APs in any set of positive density in a suitable pseudorandom super-set. (ii) Pseudorandomness of the primes after a `W-trick': removing small prime factors via a Selberg-style sieve makes the indicator function of the primes dominated by a pseudorandom measure ν. (iii) Apply Szemerédi's theorem in the relative form (a Furstenberg-style multiple recurrence / Gowers-uniformity argument) to that pseudorandom set, transferring the AP-rich conclusion back to the primes.
theorem green_tao : LeanEval.NumberTheory.ContainsArbitraryAPs {p : ℕ | Nat.Prime p} := ⊢ ContainsArbitraryAPs {p | Nat.Prime p}
All goals completed! 🐙Hadwiger's theorem
Submitter: Kim Morrison.
Notes: §31 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The real vector space of continuous, rigid-motion-invariant valuations on convex bodies in ℝⁿ has dimension n + 1. The problem defines the IsValuation predicate (continuity in the Hausdorff metric, inclusion-exclusion additivity, invariance under linear isometries and translations) and the valuations submodule. mathlib has ConvexBody with its Hausdorff MetricSpace but no valuations, intrinsic volumes, or Hadwiger's theorem; no formalization was found in any other proof assistant. The Submodule membership-closure fields of `valuations` are shipped as sorry (routine: valuations are closed under sum and scalar multiple).
Source: H. Hadwiger (1937). Listed as §31 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Hadwiger's classification: every continuous rigid-motion-invariant valuation on convex bodies in ℝⁿ is a linear combination of the n + 1 intrinsic volumes V₀, …, Vₙ (equivalently the coefficients of the Steiner polynomial Vol(K + tB) = ∑ⱼ aⱼ tʲ). The intrinsic volumes are linearly independent valuations, so they form a basis and the space has dimension exactly n + 1. The hard direction (every such valuation is a combination of intrinsic volumes) is Hadwiger's characterization theorem, proved by reduction to the one-dimensional case via the behaviour of valuations on simple convex bodies.
theorem hadwiger (n : ℕ) : Module.finrank ℝ (valuations n) = n + 1 := n:ℕ⊢ Module.finrank ℝ ↥(valuations n) = n + 1
All goals completed! 🐙Halmos's generic weak-mixing theorem
Submitter: Kim Morrison.
Notes: On a non-atomic standard probability space (X, m), the set of weakly mixing measure-preserving automorphisms contains a dense Gδ in the weak topology on the automorphism group, AND every weakly mixing automorphism is ergodic. The Lean statement is the conjunction of these two claims: the genericity (existence of a Gδ-dense subset of weakly mixing automorphisms) and the global implication (weakly mixing ⇒ ergodic for every automorphism). The weak topology on `Automorphism m` is the topology generated by neighbourhoods `{T | m((T '' A) ∆ (T₀ '' A)) < ε}` over base points T₀, measurable A, and ε > 0; this matches Knill's `T_j → T` iff `m(T_j(A) ∆ T(A)) → 0` for every measurable A. Weak mixing is the Cesàro decay `|m((T^k)⁻¹ A ∩ B) − m A · m B|` → 0. The [NoAtoms m] hypothesis is essential. For example, on `Bool` with equal atom masses the automorphism group is finite, the weak topology is discrete, and dense would force G = univ, but the identity is not weakly mixing. §90 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: P.R. Halmos, 'In general a measure-preserving transformation is mixing', Ann. of Math. (2) 45 (1944) 786–792, and *Lectures on Ergodic Theory*, Chelsea, 1956. Related Baire-category genericity results in ergodic theory: A. Katok and A. Stepin (1967); J.R. Choksi (1965). Listed as §90 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Halmos's proof has two ingredients: (i) **the weak topology is Polish** — by the standard-Borel hypothesis, Aut(X, m) embeds via the Koopman representation into the unitary group of L²(X, m) (with the weak operator topology), and the image carries a separable complete metric; (ii) **weak mixing is a Gδ condition** — `T` is weakly mixing iff for every pair `A, B` of measurable sets, `1/n · ∑_{k<n} |m((T^k)⁻¹ A ∩ B) − m A · m B| → 0`, which is a countable intersection of open conditions (using a countable dense family of measurable sets). For density of the weakly-mixing set, Halmos uses a category argument: dyadic-permutation automorphisms are dense in Aut(X, m) (Rokhlin's lemma), and within each open weak-topology neighbourhood one can produce a weakly mixing automorphism by an explicit small perturbation of a dyadic permutation, so the set of weakly mixing automorphisms is dense. The global ergodicity claim — weakly mixing ⇒ ergodic — is the standard observation that an invariant set `A` with `0 < m A < 1` would force the Cesàro decay to land at `m A · (1 − m A) > 0` instead of 0. Mathlib has `MeasurePreserving`, `Ergodic`, `IsGδ`, `Dense`, and `symmDiff`, but no `Automorphism` bundled type, no weak topology, no `IsWeaklyMixing` predicate, no Rokhlin-style density argument, and no Baire-category framework for the automorphism group.
theorem generic_weakly_mixing [StandardBorelSpace X]
(m : Measure X) [IsProbabilityMeasure m] [NoAtoms m] :
(∃ G : Set (LeanEval.Dynamics.HalmosGenericWeakMixingProblem.Automorphism m), IsGδ G ∧ Dense G ∧
∀ T ∈ G, LeanEval.Dynamics.HalmosGenericWeakMixingProblem.IsWeaklyMixing m T) ∧
(∀ T : LeanEval.Dynamics.HalmosGenericWeakMixingProblem.Automorphism m, LeanEval.Dynamics.HalmosGenericWeakMixingProblem.IsWeaklyMixing m T →
Ergodic (T.toEquiv : X → X) m) := X:Type u_1inst✝³:MeasurableSpace Xinst✝²:StandardBorelSpace Xm:Measure Xinst✝¹:IsProbabilityMeasure minst✝:NoAtoms m⊢ (∃ G, IsGδ G ∧ Dense G ∧ ∀ T ∈ G, IsWeaklyMixing m T) ∧
∀ (T : Automorphism m), IsWeaklyMixing m T → Ergodic (⇑T.toEquiv) m
All goals completed! 🐙Hausdorff moment problem: absolute-continuity criterion
Submitter: Kim Morrison.
Notes: A positive probability measure μ supported on the unit cube (μ ((cube d)ᶜ) = 0) is uniformly absolutely continuous w.r.t. Lebesgue measure iff its iterated moment differences are dominated by those of Lebesgue measure (∃ C, (Δᵏμ)ₙ ≤ C·(Δᵏν)ₙ for k ≤ n). Trusted helpers (cube, monomial, momentOf, multiChoose, diff, UniformlyAbsolutelyContinuous) are non-holes. Companion of the §115 realizability and positivity criteria (already submitted). Mathlib has SignedMeasure and set integrals but no moment-problem machinery. Candidate from §115 (additional 2).
Source: F. Hausdorff (1921–1923); see Shohat–Tamarkin, *The Problem of Moments*. Knill, *Some fundamental theorems in mathematics*, §115.
Informal solution: Hausdorff's absolute-continuity criterion for the cube moment problem. Forward: if μ ≤ C·ν then the Bernstein/difference functionals satisfy (Δᵏμ)ₙ = ∫ x^{n−k}(1−x)ᵏ dμ ≤ C ∫ x^{n−k}(1−x)ᵏ dν = C·(Δᵏν)ₙ since the kernels are nonnegative. Converse: the dominated-difference condition says the Bernstein polynomials approximating dμ/dν are uniformly bounded, so the Radon–Nikodym density is essentially bounded by C; pass to the weak-* limit of the Bernstein densities (Helly) to conclude μ ≤ C·ν. The Bernstein-density machinery for the cube is not in Mathlib.
theorem hausdorff_absolute_continuity {d : ℕ}
(μ : Measure (EuclideanSpace ℝ (Fin d)))
[IsProbabilityMeasure μ] (hμ : μ ((LeanEval.Analysis.HausdorffAbsoluteContinuity.cube d)ᶜ) = 0) :
LeanEval.Analysis.HausdorffAbsoluteContinuity.UniformlyAbsolutelyContinuous μ (volume.restrict (LeanEval.Analysis.HausdorffAbsoluteContinuity.cube d)) ↔
∃ C : ℝ, ∀ k n : Fin d → ℕ, k ≤ n →
diff (momentOf μ) k n ≤ C * diff (momentOf (volume.restrict (LeanEval.Analysis.HausdorffAbsoluteContinuity.cube d))) k n := d:ℕμ:Measure (EuclideanSpace ℝ (Fin d))inst✝:IsProbabilityMeasure μhμ:μ (cube d)ᶜ = 0⊢ UniformlyAbsolutelyContinuous μ (volume.restrict (cube d)) ↔
∃ C, ∀ (k n : Fin d → ℕ), k ≤ n → diff (momentOf μ) k n ≤ C * diff (momentOf (volume.restrict (cube d))) k n
All goals completed! 🐙The Hausdorff–Hildebrandt–Schoenberg moment theorem
hausdorff_hildebrandt_schoenberg
Submitter: Kim Morrison.
Notes: A multi-indexed real sequence is the moment sequence of a signed bounded-variation Borel measure on the unit cube Iᵈ = [0,1]ᵈ iff it is Hausdorff bounded (∃ C, ∀ n, ∑_{0≤k≤n} |C(n,k)·(Δᵏa)ₙ| ≤ C). Signed BV measures are encoded by their Jordan decomposition (difference of two finite positive measures); moments are integrated over the cube; Δᵏ is the iterated backward difference in closed form. The helper defs (cube, monomial, momentOf, IsMomentConfiguration, multiChoose, diff, HausdorffBounded, IsPositiveMomentConfiguration) are trusted non-holes. Mathlib has SignedMeasure/Jordan decomposition and set integrals but no moment-problem machinery. Candidate from §115 of the Knill survey.
Source: F. Hausdorff (1921, 1923); T. H. Hildebrandt and I. J. Schoenberg, *On linear functional operations and the moment problem for a finite interval in one or several dimensions*, Ann. of Math. 34 (1933). Knill, *Some fundamental theorems in mathematics*, §115.
Informal solution: The d-dimensional Hausdorff moment problem for signed measures. Forward: if aₙ = ∫ xⁿ d(μ−ν), expand the iterated backward differences as (Δᵏa)ₙ = ∫ x^{n−k}(1−x)ᵏ d(μ−ν); the Hausdorff sum ∑_k C(n,k)|(Δᵏa)ₙ| is bounded by the total variation |μ|+|ν| of the cube (the weighted kernels C(n,k)·x^{n−k}(1−x)ᵏ sum to 1 on Iᵈ), giving a uniform bound C. Converse: from Hausdorff boundedness, the finite signed 'Bernstein measures' assigning mass C(n,k)(Δᵏa)ₙ to the Bernstein grid are of uniformly bounded variation; pass to a weak-* limit (Banach–Alaoglu on the dual of C(Iᵈ), Riesz representation) to obtain a signed BV measure whose moments are a. Use the Jordan decomposition for the μ−ν packaging.
theorem hausdorff_hildebrandt_schoenberg {d : ℕ} (a : (Fin d → ℕ) → ℝ) :
LeanEval.Analysis.IsMomentConfiguration a ↔ LeanEval.Analysis.HausdorffBounded a := d:ℕa:(Fin d → ℕ) → ℝ⊢ IsMomentConfiguration a ↔ HausdorffBounded a
All goals completed! 🐙The Hausdorff positivity (complete-monotonicity) criterion
hausdorff_positivity_criterion
Submitter: Kim Morrison.
Notes: A multi-indexed real sequence is a positive moment configuration on the unit cube Iᵈ (realized by a positive finite measure) iff it is completely monotone: all iterated backward differences are nonnegative, (Δᵏa)ₙ ≥ 0 for all k ≤ n. Shares the §115 trusted scaffolding (cube, monomial, momentOf, multiChoose, diff, IsPositiveMomentConfiguration). Not in Mathlib (no completely-monotone sequences / Hausdorff moment problem). Companion candidate from §115 of the Knill survey.
Source: F. Hausdorff, *Summationsmethoden und Momentfolgen I, II*, Math. Z. 9 (1921). Knill, *Some fundamental theorems in mathematics*, §115.
Informal solution: Classical Hausdorff moment problem (positive case). Forward: if aₙ = ∫ xⁿ dμ with μ ≥ 0, then (Δᵏa)ₙ = ∫ x^{n−k}(1−x)ᵏ dμ ≥ 0 since the integrand is nonnegative on the cube. Converse (complete monotonicity ⇒ positive realizing measure): the Bernstein/Hausdorff construction — the nonnegative numbers C(n,k)(Δᵏa)ₙ define positive masses on a refining sequence of cube partitions, giving a consistent family of positive measures of bounded total mass a_0; take a weak-* limit (Helly/Banach–Alaoglu + Riesz) to get a finite positive measure μ on Iᵈ with the prescribed moments.
theorem hausdorff_positivity {d : ℕ} (a : (Fin d → ℕ) → ℝ) :
LeanEval.Analysis.IsPositiveMomentConfiguration a ↔ ∀ k n : Fin d → ℕ, k ≤ n → 0 ≤ diff a k n := d:ℕa:(Fin d → ℕ) → ℝ⊢ IsPositiveMomentConfiguration a ↔ ∀ (k n : Fin d → ℕ), k ≤ n → 0 ≤ diff a k n
All goals completed! 🐙Gaussian heat kernel solves the 1D heat equation
heat_kernel_solves_heat_equation
Submitter: Kim Morrison.
Notes: The Gaussian convolution u(t,x) = (4 pi t)^{-1/2} integral exp(-(x-y)^2/(4t)) f(y) dy satisfies the heat equation on (0, infty) x R, with initial datum f recovered as t -> 0+.
Source: Classical heat-equation theory.
Informal solution: Differentiate under the integral sign in t and twice in x; the kernel itself satisfies the heat equation, so does its convolution with f. As t -> 0+, the Gaussian is an approximate identity with total mass 1. After the change of variables y = x + sqrt(t) z, the integral becomes an average of f(x + sqrt(t) z) against a fixed integrable Gaussian weight; continuity of f at x and boundedness of f then give pointwise convergence to f(x) by dominated convergence in z.
theorem heat_kernel_solves_heat_equation (f : ℝ → ℝ) (hf_cont : Continuous f) (hf_bdd : ∃ M : ℝ, ∀ x, |f x| ≤ M) :
-- The PDE on (0, ∞) × ℝ.
(∀ t : ℝ, 0 < t → ∀ x : ℝ, ∃ ux : ℝ → ℝ, ∃ uxx : ℝ,
(∀ y : ℝ, HasDerivAt (fun z => heatSolution f t z) (ux y) y) ∧
HasDerivAt ux uxx x ∧
HasDerivAt (fun s => heatSolution f s x) uxx t) ∧
-- Initial condition recovered as a one-sided limit at t = 0.
(∀ x : ℝ,
Filter.Tendsto (fun t : ℝ => heatSolution f t x)
(nhdsWithin (0 : ℝ) (Set.Ioi 0)) (nhds (f x))) := f:ℝ → ℝhf_cont:Continuous fhf_bdd:∃ M, ∀ (x : ℝ), |f x| ≤ M⊢ (∀ (t : ℝ),
0 < t →
∀ (x : ℝ),
∃ ux uxx,
(∀ (y : ℝ), HasDerivAt (fun z => heatSolution f t z) (ux y) y) ∧
HasDerivAt ux uxx x ∧ HasDerivAt (fun s => heatSolution f s x) uxx t) ∧
∀ (x : ℝ), Filter.Tendsto (fun t => heatSolution f t x) (nhdsWithin 0 (Set.Ioi 0)) (nhds (f x))
All goals completed! 🐙Higman's infinite finitely-presented simple group
Submitter: Kim Morrison.
Notes: There exists an infinite, finitely presented, simple group: some n and a finite relator set rels ⊆ FreeGroup (Fin n) for which PresentedGroup rels is both simple and infinite. Pure existence of a pathological finite presentation. The first such examples come from Higman's 1974 monograph (the Higman–Thompson groups G_{n,r}); Higman's 1951 paper only constructs a finitely *generated* infinite simple group (a simple quotient of the four-generator group with no nontrivial finite quotients), not a finitely presented one. Mathlib v4.30 has FreeGroup, PresentedGroup, IsSimpleGroup, Infinite, HNN extensions (`Mathlib/GroupTheory/HNNExtension.lean`), and Britton's lemma, but no Higman–Thompson construction, no Higman embedding theorem, and no construction of an infinite finitely-presented simple group. §122 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: G. Higman, 'A finitely generated infinite simple group', J. London Math. Soc. 26 (1951) 61–64; G. Higman, *Finitely Presented Infinite Simple Groups*, Notes on Pure Mathematics 8, Australian National University, 1974. §122 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Higman's 1974 monograph constructs the Higman–Thompson groups G_{n,r} (for integers n ≥ 2, r ≥ 1) as groups of piecewise-linear bijections of certain Cantor-like spaces / r-tuples of n-ary trees. Each G_{n,r} is finitely presented (explicit finite generators and relations are written down) and infinite by construction; the commutator subgroups G_{n,r}' (or G_{n,r} itself for suitable n, r) are simple, by an analysis of the action on the underlying space. Higman's 1951 paper had earlier exhibited a finitely *generated* infinite simple group — a simple quotient of the four-generator group `⟨a, b, c, d | bab⁻¹ = a², cbc⁻¹ = b², dcd⁻¹ = c², ada⁻¹ = d²⟩` with no nontrivial finite quotients — but did not give a finite presentation of the simple quotient. Mathlib v4.30 has the substrate (`FreeGroup`, `PresentedGroup`, `IsSimpleGroup`, `Infinite`, `Subgroup.IsNormalClosureFG`), HNN extensions and Britton's lemma (`Mathlib/GroupTheory/HNNExtension.lean`), but no Higman–Thompson groups, no Higman embedding theorem, and no construction of an infinite finitely-presented simple group.
theorem higman_infinite_simple :
∃ (n : ℕ) (rels : Set (FreeGroup (Fin n))),
rels.Finite ∧ IsSimpleGroup (PresentedGroup rels) ∧
Infinite (PresentedGroup rels) := ⊢ ∃ n rels, rels.Finite ∧ IsSimpleGroup (PresentedGroup rels) ∧ Infinite (PresentedGroup rels)
All goals completed! 🐙Hippocrates' theorem on lunes
Submitter: Kim Morrison.
Notes: For a right triangle, the sum of the areas of the two Hippocrates lunes equals the area of the triangle. Trusted helpers (det2, closedHalfDisk, hypotenuseSemidisk, horizontalLune, verticalLune, rightTriangle, …) are non-holes; the Euclidean squared distance is used explicitly to avoid the ℝ×ℝ sup metric. Mathlib has no lune-area result. Candidate from §166 of the Knill survey.
Source: Hippocrates of Chios (c. 440 BC). Knill, §166.
Informal solution: Unavailable.
theorem hippocrates_lunes (a b : ℝ) (ha : 0 < a) (hb : 0 < b) :
volume (LeanEval.Geometry.HippocratesLunes.horizontalLune a b) + volume (LeanEval.Geometry.HippocratesLunes.verticalLune a b) =
volume (LeanEval.Geometry.HippocratesLunes.rightTriangle a b) := a:ℝb:ℝha:0 < ahb:0 < b⊢ volume (horizontalLune a b) + volume (verticalLune a b) = volume (rightTriangle a b)
All goals completed! 🐙Hopf–Rinow theorem
Submitter: Kim Morrison.
Notes: For a connected, finite-dimensional, smooth Riemannian manifold M that is also locally compact, metric completeness and geodesic completeness are equivalent. §93 of Knill's 'Some Fundamental Theorems in Mathematics'. The file ships IsGeodesic (a path with locally linear edist — a metric formulation of affinely parametrised local minimising geodesics, avoiding any Levi-Civita / connection infrastructure) and IsGeodesicallyComplete (every geodesic on a bounded open interval extends to all of ℝ).
Source: H. Hopf and W. Rinow, *Ueber den Begriff der vollständigen differentialgeometrischen Fläche*, Comment. Math. Helv. 3 (1931), 209-225. Listed as §93 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Standard Hopf–Rinow proof. Metric ⇒ geodesic completeness: a constant-speed geodesic γ : (a, b) → M is uniformly Cauchy as t → b⁻ because edist (γ s) (γ t) = c · |s − t|; the limit exists by metric completeness, and the geodesic ODE extends past the limit point using local existence of geodesics (Picard–Lindelöf on the tangent bundle). Geodesic ⇒ metric completeness: the central Hopf–Rinow lemma shows that under the smooth-Riemannian-and-locally-compact hypotheses, closed bounded subsets of M are compact (Heine–Borel). A Cauchy sequence is bounded, hence contained in a compact set, hence convergent.
theorem hopf_rinow {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
[FiniteDimensional ℝ E]
{H : Type*} [TopologicalSpace H] (I : ModelWithCorners ℝ E H)
(M : Type*) [EMetricSpace M] [ChartedSpace H M] [IsManifold I ∞ M]
[Bundle.RiemannianBundle (fun x : M => TangentSpace I x)]
[IsRiemannianManifold I M]
[LocallyCompactSpace M] [ConnectedSpace M] :
LeanEval.Geometry.IsGeodesicallyComplete M ↔ CompleteSpace M := E:Type u_1inst✝¹⁰:NormedAddCommGroup Einst✝⁹:NormedSpace ℝ Einst✝⁸:FiniteDimensional ℝ EH:Type u_2inst✝⁷:TopologicalSpace HI:ModelWithCorners ℝ E HM:Type u_3inst✝⁶:EMetricSpace Minst✝⁵:ChartedSpace H Minst✝⁴:IsManifold I ∞ Minst✝³:Bundle.RiemannianBundle fun x => TangentSpace I xinst✝²:IsRiemannianManifold I Minst✝¹:LocallyCompactSpace Minst✝:ConnectedSpace M⊢ IsGeodesicallyComplete M ↔ CompleteSpace M
All goals completed! 🐙The Hopf Umlaufsatz (theorem of turning tangents)
Submitter: Kim Morrison.
Notes: A positively oriented simple closed unit-speed plane curve has total signed curvature 2π. Trusted helpers (signedArea, signedCurvature, totalCurvature, IsPositiveSimpleClosedUnitSpeedCurve, IsTangentAngleLift, …) are non-holes. Mathlib has no turning-tangents theorem. Candidate from §170 of the Knill survey.
Source: H. Hopf, *Über die Drehung der Tangenten...*, Compositio Math. 2 (1935). Knill, §170.
Informal solution: Unavailable.
theorem hopf_umlaufsatz {r : ℝ → LeanEval.Geometry.HopfUmlaufsatz.Plane} {α : ℝ → ℝ}
(_hr : LeanEval.Geometry.HopfUmlaufsatz.IsPositiveSimpleClosedUnitSpeedCurve r)
(_hα : LeanEval.Geometry.HopfUmlaufsatz.IsTangentAngleLift r α) :
totalCurvature α = 2 * Real.pi := r:ℝ → Planeα:ℝ → ℝ_hr:IsPositiveSimpleClosedUnitSpeedCurve r_hα:IsTangentAngleLift r α⊢ totalCurvature α = 2 * Real.pi
All goals completed! 🐙Hurewicz theorem in degree 1 (H₁ = abelianization of π₁)
Submitter: Kim Morrison.
Notes: For a path-connected space X, the first integral singular homology group is the abelianization of the fundamental group. Trusted helper IntegralHomology (non-hole). Path-connectedness is essential. Mathlib has singular homology and the fundamental group but not the degree-1 Hurewicz isomorphism. Candidate from §153 of the Knill survey.
Source: W. Hurewicz (1935); see Hatcher, *Algebraic Topology*, Theorem 2A.1. Knill, *Some fundamental theorems in mathematics*, §153.
Informal solution: Construct the natural map h : π₁(X,x) → H₁(X;ℤ) sending a loop to its singular 1-cycle. It kills commutators (H₁ is abelian), giving Φ : π₁^{ab} → H₁. Surjectivity: for path-connected X every 1-cycle is homologous to a sum of loops based at x (connect with paths). Injectivity: a loop bounding a 2-chain can be filled by a homotopy, using the path-connectedness to base everything at x. Hence Φ is an isomorphism. Requires comparing the simplicial/singular chain model with π₁, not in Mathlib.
theorem hurewicz_h1_abelianization (X : Type) [TopologicalSpace X] [PathConnectedSpace X] (x : X) :
Nonempty (Additive (Abelianization (FundamentalGroup X x)) ≃+
(IntegralHomology 1 X : Type)) := X:Typeinst✝¹:TopologicalSpace Xinst✝:PathConnectedSpace Xx:X⊢ Nonempty (Additive (Abelianization (FundamentalGroup X x)) ≃+ ↑(IntegralHomology 1 X))
All goals completed! 🐙Perron-Frobenius for irreducible nonnegative matrices
irreducible_nonnegative_matrix_has_positive_eigenvector_at_spectralRadius
Submitter: Kim Morrison.
Notes: A Perron-Frobenius style eigenvector existence statement at the spectral radius.
Source: Classical theorem in linear algebra.
Informal solution: Show that an irreducible nonnegative matrix has a strictly positive eigenvector with eigenvalue equal to its spectral radius.
theorem irreducible_nonnegative_matrix_has_positive_eigenvector_at_spectralRadius {n : Type*} [Fintype n] [DecidableEq n] [Nonempty n]
(A : Matrix n n ℝ)
(hA : A.IsIrreducible) :
∃ v : n → ℝ,
Module.End.HasEigenvector (Matrix.toLin' A) (spectralRadius ℝ A).toReal v ∧
(∀ i, 0 < v i) := n:Type u_1inst✝²:Fintype ninst✝¹:DecidableEq ninst✝:Nonempty nA:Matrix n n ℝhA:A.IsIrreducible⊢ ∃ v, Module.End.HasEigenvector (Matrix.toLin' A) (spectralRadius ℝ A).toReal v ∧ ∀ (i : n), 0 < v i
All goals completed! 🐙Onsager's 2D Ising phase transition
Submitter: Kim Morrison.
Notes: The thermodynamic-limit free energy of the zero-field ferromagnetic square-lattice Ising model exists for every inverse temperature and is non-analytic at a positive critical βc (Onsager 1944). Trusted helpers (isingEnergy, isingPartitionFunction, finiteIsingFreeEnergy, …) are non-holes; the ∀β limit clause pins F to the genuine infinite-volume free energy so βc must be a real non-analyticity point. Mathlib has no statistical-mechanics machinery. Candidate from §158 of the Knill survey.
Source: L. Onsager, *Crystal statistics I*, Phys. Rev. 65 (1944). Knill, §158.
Informal solution: Unavailable.
theorem ising_2d_phase_transition :
∃ (F : ℝ → ℝ) (βc : ℝ),
0 < βc ∧
(∀ β : ℝ,
Tendsto (fun n : ℕ => finiteIsingFreeEnergySeq n β) atTop (𝓝 (F β))) ∧
¬ AnalyticAt ℝ F βc := ⊢ ∃ F βc, 0 < βc ∧ (∀ (β : ℝ), Tendsto (fun n => finiteIsingFreeEnergySeq n β) atTop (𝓝 (F β))) ∧ ¬AnalyticAt ℝ F βc
All goals completed! 🐙Isoperimetric inequality (n-dim, topological-frontier form)
Submitter: Kim Morrison.
Notes: n-dimensional isoperimetric inequality for measurable bounded B ⊆ ℝⁿ, n ≥ 2: n^n · volume(B)^{n−1} · volume(closedBall 0 1) ≤ μHE[n−1](frontier B)^n, with μHE[n−1] the (n−1)-dim Euclidean Hausdorff measure on the topological frontier. The topological-frontier formulation is strictly weaker than the canonical De Giorgi finite-perimeter form: the topological frontier can strictly contain the reduced boundary, so this RHS is pointwise larger than the perimeter. For a smooth bounded domain with regular bounding hypersurface S = frontier B, μHE[n−1](frontier B) agrees with the classical surface area. The 2 ≤ n hypothesis excludes the n = 1 case where the ENNReal formulation has B = ∅ as a counterexample (0^0 · 2 = 2 ≠ 0). §71 of Knill's 'Some Fundamental Theorems in Mathematics'.
Source: Classical isoperimetric inequality; modern finite-perimeter / GMT formulations are due to E. De Giorgi and H. Federer. Listed as §71 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). The Wiedijk-100 entry 'The Isoperimetric Theorem' is unformalised in Lean.
Informal solution: Standard proofs work at the De Giorgi perimeter level via Brunn–Minkowski plus Steiner symmetrization: Steiner-symmetrize B with respect to n hyperplanes, each step preserves volume and decreases perimeter, converging to a ball B* of the same volume, where equality holds. Lower-semicontinuity of perimeter under Steiner symmetrization closes the inequality. The frontier version of this PR follows from the perimeter version because the De Giorgi perimeter is bounded above by μHE[n−1](frontier B). Alternative routes: optimal transport (Brenier / Knothe), Sobolev W^{1,1} → L^{n/(n−1)} via Federer–Fleming with co-area, or Gromov's proof.
theorem isoperimetric (n : ℕ) (_hn : 2 ≤ n) (B : Set (LeanEval.Geometry.E n))
(_hB : MeasurableSet B) (_hBdd : Bornology.IsBounded B) :
(n : ℝ≥0∞) ^ n * (volume B) ^ (n - 1) * volume (closedBall (0 : LeanEval.Geometry.E n) 1)
≤ (μHE[n - 1] (frontier B)) ^ n := n:ℕ_hn:2 ≤ nB:Set (E n)_hB:MeasurableSet B_hBdd:Bornology.IsBounded B⊢ ↑n ^ n * volume B ^ (n - 1) * volume (closedBall 0 1) ≤ μHE[n - 1] (frontier B) ^ n
All goals completed! 🐙Jacobian of a smooth proper curve (Merten challenge)
Submitter: Christian Merten.
Notes: Unavailable.
Informal solution: Build the Albanese variety of C as the universal abelian variety receiving a pointed map from C; Weil's construction of the Jacobian of a curve makes this concrete via Pic^0(C). The universal property is the no-cheating clamp.
/-- The genus of a smooth proper curve. -/
def genus (C : Over (Spec (.of k))) [IsProper C.hom] [SmoothOfRelativeDimension 1 C.hom]
[GeometricallyIrreducible C.hom] : ℕ :=
sorry/-- The Jacobian of a smooth, proper curve over a field `k`. -/
def Jacobian (C : Over (Spec (.of k))) [IsProper C.hom] [SmoothOfRelativeDimension 1 C.hom]
[GeometricallyIrreducible C.hom] : Over (Spec (.of k)) :=
sorry/-- The group scheme structure on the Jacobian of the curve `C`. -/
instance instGrpObj : GrpObj (Jacobian C) :=
sorry/-- The Jacobian of `C` is smooth of relative dimension `g` over `k`, where `g` is the
genus of `C`. -/
instance smoothOfRelativeDimension_genus :
SmoothOfRelativeDimension (genus C) (Jacobian C).hom :=
sorry/-- The Jacobian of `C` is proper over `k`. -/
instance instIsProper : IsProper (Jacobian C).hom :=
sorry/-- The Jacobian of `C` is geometrically irreducible over `k`. -/
instance instGeometricallyIrreducible : GeometricallyIrreducible (Jacobian C).hom :=
sorry/-- The Abel-Jacobi map from a smooth, proper curve to its Jacobian associated
to a `k`-rational point of `C`. -/
def ofCurve (P : 𝟙_ (Over (Spec (.of k))) ⟶ C) : C ⟶ Jacobian C :=
sorry/-- The Abel-Jacobi map sends the `k`-rational point `P` to `0`, where `0` (denoted by `η` below) is
the neutral element of the group scheme `Jacobian C`. -/
theorem comp_ofCurve (C : Over (Spec (.of k))) [IsProper C.hom]
[SmoothOfRelativeDimension 1 C.hom] [GeometricallyIrreducible C.hom]
(P : 𝟙_ (Over (Spec (.of k))) ⟶ C) :
P ≫ ofCurve P = η[Jacobian C] :=
sorry/--
The universal property of the Jacobian variety: For any abelian variety `A`,
any morphism `f : C ⟶ A` such that `f(P) = 0` factors uniquely through the
Jacobian of `C`.
In other words, `Jacobian C` is the Albanese variety of `C`.
-/
theorem exists_unique_ofCurve_comp (C : Over (Spec (.of k))) [IsProper C.hom]
[SmoothOfRelativeDimension 1 C.hom] [GeometricallyIrreducible C.hom]
(P : 𝟙_ (Over (Spec (.of k))) ⟶ C)
{A : Over (Spec (.of k))} [Smooth A.hom] [IsProper A.hom] [GrpObj A]
[GeometricallyIrreducible A.hom] (f : C ⟶ A) (hf : P ≫ f = η[A]) :
∃! (g : Jacobian C ⟶ A), f = ofCurve P ≫ g :=
sorryJacobian of a compact Riemann surface (Buzzard challenge)
Submitter: Kevin Buzzard.
Notes: Unavailable.
Source: https://leanprover.zulipchat.com/#narrow/stream/583336-Autoformalization/topic/Jacobian%20challenge
Informal solution: Construct J(X) as H^0(X, Omega^1)* / H_1(X, Z), the period lattice quotient; the Abel-Jacobi map sends a point to the linear functional 'integrate from a fixed basepoint to here'. Functoriality and the projection formula come from pushforward and pullback of differential forms.
def genus (X : Type u) [TopologicalSpace X] [T2Space X] [CompactSpace X] [ConnectedSpace X]
[Nonempty X] [ChartedSpace ℂ X] [IsManifold (modelWithCornersSelf ℂ ℂ) ω X] : ℕ := sorrytheorem genus_eq_zero_iff_homeo :
genus X = 0 ↔ Nonempty (X ≃ₜ (Metric.sphere (0 : EuclideanSpace ℝ (Fin 3)) 1)) :=
sorrydef Jacobian (X : Type u) [TopologicalSpace X] [T2Space X] [CompactSpace X] [ConnectedSpace X]
[Nonempty X] [ChartedSpace ℂ X] [IsManifold (modelWithCornersSelf ℂ ℂ) ω X] : Type u := sorryinstance instAddCommGroup : AddCommGroup (Jacobian X) := sorryinstance instTopologicalSpace : TopologicalSpace (Jacobian X) := sorryinstance instT2Space : T2Space (Jacobian X) := sorryinstance instCompactSpace : CompactSpace (Jacobian X) := sorryinstance instChartedSpace : ChartedSpace (Fin (genus X) → ℂ) (Jacobian X) := sorryinstance instIsManifold :
IsManifold (modelWithCornersSelf ℂ (Fin (genus X) → ℂ)) ω (Jacobian X) := sorryinstance instLieAddGroup :
LieAddGroup (modelWithCornersSelf ℂ (Fin (genus X) → ℂ)) ω (Jacobian X) := sorrydef ofCurve (P : X) : X → Jacobian X := sorrytheorem ofCurve_contMDiff (P : X) :
ContMDiff (modelWithCornersSelf ℂ ℂ)
(modelWithCornersSelf ℂ (Fin (genus X) → ℂ)) ω (ofCurve P) := sorrytheorem ofCurve_self (P : X) : ofCurve P P = 0 := sorrytheorem ofCurve_inj (P : X) (h : 0 < genus X) : Function.Injective (ofCurve P) := sorrydef pushforward (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f) :
Jacobian X →ₜ+ Jacobian Y := sorrytheorem pushforward_contMDiff (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f) :
ContMDiff (modelWithCornersSelf ℂ (Fin (genus X) → ℂ))
(modelWithCornersSelf ℂ (Fin (genus Y) → ℂ)) ω (pushforward f hf) := sorrytheorem pushforward_id_apply (P : Jacobian X) :
pushforward id contMDiff_id P = P := sorrytheorem pushforward_comp_apply (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f)
(g : Y → Z) (hg : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω g)
(P : Jacobian X) :
pushforward (g ∘ f) (hg.comp hf) P = pushforward g hg (pushforward f hf P) :=
sorrydef pullback (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f) :
Jacobian Y →ₜ+ Jacobian X := sorrytheorem pullback_contMDiff (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f) :
ContMDiff (modelWithCornersSelf ℂ (Fin (genus Y) → ℂ))
(modelWithCornersSelf ℂ (Fin (genus X) → ℂ)) ω (pullback f hf) := sorrytheorem pullback_id_apply (P : Jacobian X) :
pullback id contMDiff_id P = P := sorrytheorem pullback_comp_apply (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f)
(g : Y → Z) (hg : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω g)
(P : Jacobian Z) :
pullback (g.comp f) (hg.comp hf) P = pullback f hf (pullback g hg P) := sorrydef degree (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f) : ℕ :=
sorry -- 0 for constant casetheorem pushforward_pullback (f : X → Y)
(hf : ContMDiff (modelWithCornersSelf ℂ ℂ) (modelWithCornersSelf ℂ ℂ) ω f)
(P : Jacobian Y) :
pushforward f hf (pullback f hf P) = (degree f hf) • P := sorryJordan–Brouwer separation theorem
Submitter: Kim Morrison.
Notes: §48 of Knill's 'Some Fundamental Theorems in Mathematics'. The high-dimensional generalization of the Jordan curve theorem: for d ≥ 2, the complement in ℝᵈ of a topological (d-1)-sphere has exactly two connected components. The hypothesis 2 ≤ d is essential: in dimension d = 1 the (d-1)-sphere is the two-point set {-1, 1}, whose complement in ℝ has three connected components. Mathlib has Metric.sphere, EuclideanSpace, ConnectedComponents, Nat.card, but no Jordan–Brouwer separation theorem, no Alexander duality, no invariance of domain in a form that would discharge it. Stateable with zero new definitions.
Source: L. E. J. Brouwer, *Beweis des Jordanschen Satzes für den n-dimensionalen Raum*, Math. Annalen 71 (1912) (first proof). Listed as §48 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). No formalization found in any major prover.
Informal solution: Modern proofs use singular homology via Alexander duality: H̃_0(ℝᵈ ∖ Σ) ≅ H̃^{d-1}(Σ), and an embedded (d-1)-sphere Σ has H̃^{d-1}(Σ) ≅ ℤ, giving exactly two components. Brouwer's original proof used direct simplicial-approximation arguments without modern homology.
theorem jordan_brouwer (d : ℕ) (_hd : 2 ≤ d)
(r : Metric.sphere (0 : EuclideanSpace ℝ (Fin d)) 1 → EuclideanSpace ℝ (Fin d))
(_hcont : Continuous r) (_hinj : Function.Injective r) :
Nat.card
(ConnectedComponents ((Set.range r)ᶜ : Set (EuclideanSpace ℝ (Fin d)))) =
2 := d:ℕ_hd:2 ≤ dr:↑(Metric.sphere 0 1) → EuclideanSpace ℝ (Fin d)_hcont:Continuous r_hinj:Function.Injective r⊢ Nat.card (ConnectedComponents ↑(Set.range r)ᶜ) = 2
All goals completed! 🐙Jordan curve theorem
Submitter: Kim Morrison.
Notes: §48 of Knill's 'Some Fundamental Theorems in Mathematics'. Every continuous injection r : S¹ → ℝ² has a complement with exactly two connected components. Mathlib has Metric.sphere, EuclideanSpace, ConnectedComponents, and Nat.card, but no Jordan curve theorem (`grep -ri 'jordan curve' Mathlib/`: no hits), no winding numbers / invariance of domain in a form that would discharge it. Stateable with zero new definitions.
Source: C. Jordan, *Cours d'analyse* (1887, 2nd ed.; first statement and a famously gap-laden proof). The first rigorous proof is by O. Veblen, *Theory on plane curves in non-metrical analysis situs*, Trans. AMS 6 (1905). Listed as §48 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). Formalized in Mizar (Korniłowicz et al., 2005) and HOL Light (Hales, 2007); not in Lean or Coq mathlib-equivalents.
Informal solution: Modern proofs use either singular homology of the complement (Alexander duality H̃_0(ℝ² ∖ C) ≅ H̃¹(S¹) = ℤ giving exactly two components) or planar combinatorics (approximate by polygonal Jordan curves, use winding-number parity to define inside/outside, transfer to the continuous curve via uniform convergence).
theorem jordan_curve (r : Metric.sphere (0 : EuclideanSpace ℝ (Fin 2)) 1 → EuclideanSpace ℝ (Fin 2))
(_hcont : Continuous r) (_hinj : Function.Injective r) :
Nat.card
(ConnectedComponents ((Set.range r)ᶜ : Set (EuclideanSpace ℝ (Fin 2)))) =
2 := r:↑(Metric.sphere 0 1) → EuclideanSpace ℝ (Fin 2)_hcont:Continuous r_hinj:Function.Injective r⊢ Nat.card (ConnectedComponents ↑(Set.range r)ᶜ) = 2
All goals completed! 🐙Jordan normal form
Submitter: Kim Morrison.
Notes: Over an algebraically closed field, every endomorphism of Kⁿ has a Jordan-chain basis (every n×n matrix is similar to a block-diagonal Jordan matrix). Trusted helpers (StdSpace, JordanChainBasis) are non-holes. Mathlib has the Jordan–Chevalley–Dunford decomposition but not the Jordan-chain-basis/Jordan normal form. Candidate from §165 of the Knill survey.
Source: C. Jordan (1870). Knill, §165.
Informal solution: Unavailable.
theorem jordan_normal_form {K : Type*} [Field K] [IsAlgClosed K] (n : ℕ)
(f : Module.End K (LeanEval.LinearAlgebra.JordanNormalForm.StdSpace K n)) :
Nonempty (LeanEval.LinearAlgebra.JordanNormalForm.JordanChainBasis f) := K:Type u_1inst✝¹:Field Kinst✝:IsAlgClosed Kn:ℕf:Module.End K (StdSpace K n)⊢ Nonempty (JordanChainBasis f)
All goals completed! 🐙Kakutani fixed-point theorem
Submitter: Kim Morrison.
Notes: §33 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' (additional statement of the game-theory section; underlies Nash's 1951 equilibrium-existence proof). The set-valued generalization of Brouwer: every upper-hemicontinuous correspondence F from a nonempty compact convex K ⊆ ℝᵈ to itself with nonempty convex closed values has a fixed point x ∈ F x. Mathlib's `grep -ri kakutani` returns only the Riesz-Markov-Kakutani representation theorem (a different theorem); the fixed-point theorem itself is not in mathlib.
Source: S. Kakutani, A generalization of Brouwer's fixed point theorem, Duke Math. J. 8 (1941), 457-459. Listed as an additional statement of §33 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Reduce to Brouwer by an approximation argument. Cover K by ε-balls and pick a finite subcover; on each ball define f_ε(x) := average of some selection from F(x) over the cover, producing a continuous single-valued ε-approximation f_ε : K → K. Apply Brouwer to f_ε to get a fixed point x_ε with x_ε ∈ F(x_ε) up to ε-error in the closed-graph sense. Take ε → 0 along a convergent subsequence (K compact); the limit point x is in the graph of F by upper hemicontinuity (closed graph), so x ∈ F(x).
theorem kakutani_fixed_point {d : ℕ}
{K : Set (EuclideanSpace ℝ (Fin d))}
(_hK_compact : IsCompact K) (_hK_convex : Convex ℝ K)
(_hK_nonempty : K.Nonempty)
(F : EuclideanSpace ℝ (Fin d) → Set (EuclideanSpace ℝ (Fin d)))
(_hF_uhc : LeanEval.Topology.IsUpperHemicontinuous F)
(_hF_nonempty : ∀ x ∈ K, (F x).Nonempty)
(_hF_convex : ∀ x ∈ K, Convex ℝ (F x))
(_hF_closed : ∀ x ∈ K, IsClosed (F x))
(_hF_maps : ∀ x ∈ K, F x ⊆ K) :
∃ x ∈ K, x ∈ F x := d:ℕK:Set (EuclideanSpace ℝ (Fin d))_hK_compact:IsCompact K_hK_convex:Convex ℝ K_hK_nonempty:K.NonemptyF:EuclideanSpace ℝ (Fin d) → Set (EuclideanSpace ℝ (Fin d))_hF_uhc:IsUpperHemicontinuous F_hF_nonempty:∀ x ∈ K, (F x).Nonempty_hF_convex:∀ x ∈ K, Convex ℝ (F x)_hF_closed:∀ x ∈ K, IsClosed (F x)_hF_maps:∀ x ∈ K, F x ⊆ K⊢ ∃ x ∈ K, x ∈ F x
All goals completed! 🐙KAM persistence of an invariant curve
Submitter: Kim Morrison.
Notes: Kolmogorov–Arnold–Moser for a twist map: for Diophantine α and real-analytic, 1-periodic, non-constant, mean-zero f, for small |c| the functional equation q(t+α)−2q(t)+q(t−α) = c·f(q(t)) has a smooth strictly increasing solution with q−id periodic — the c=0 invariant curve persists. The linearisation is non-invertible (small divisors), so the IFT fails and the Diophantine condition drives a Newton/Nash–Moser scheme. The trusted helper IsDiophantine is a non-hole. Mathlib has no KAM theory (no twist maps, invariant curves, small divisors, Nash–Moser). Candidate from §83 of the Knill survey.
Source: A. N. Kolmogorov (1954); V. I. Arnold (1963); J. Moser, *On invariant curves of area-preserving mappings of an annulus*, Nachr. Akad. Wiss. Göttingen (1962). Knill, *Some fundamental theorems in mathematics*, §83.
Informal solution: KAM via a Newton/Nash–Moser iteration with small-divisor control. Linearise the functional operator F(q) = q(·+α) − 2q + q(·−α) − c·f∘q at the approximate solution; the constant-coefficient part L u = u(·+α) − 2u + u(·−α) is diagonal in Fourier with symbol 2cos(2πnα) − 2, invertible off n = 0 with inverse bounded by the Diophantine estimate |2cos(2πnα)−2|⁻¹ ≲ |n|²/C. Run a quadratically-convergent Newton scheme on a scale of analyticity-shrinking norms (Cauchy estimates absorb the polynomial small-divisor loss), solving the cohomological equation at each step after projecting out the mean (using f mean-zero), and control the analyticity-width loss so the iteration converges for |c| < c₀ to a real-analytic q with q−id periodic and StrictMono.
theorem kam_invariant_curve (α : ℝ) (_hα : LeanEval.Dynamics.IsDiophantine α)
(f : ℝ → ℝ)
(_hf_analytic : AnalyticOnNhd ℝ f Set.univ)
(_hf_per : Function.Periodic f 1)
(_hf_nonconst : ¬ ∃ k : ℝ, ∀ x, f x = k)
(_hf_mean : ∫ x in (0 : ℝ)..1, f x = 0) :
∃ c₀ : ℝ, 0 < c₀ ∧ ∀ c : ℝ, |c| < c₀ →
∃ q : ℝ → ℝ,
ContDiff ℝ ∞ q ∧ StrictMono q ∧
Function.Periodic (fun t => q t - t) 1 ∧
∀ t : ℝ, q (t + α) - 2 * q t + q (t - α) = c * f (q t) := α:ℝ_hα:IsDiophantine αf:ℝ → ℝ_hf_analytic:AnalyticOnNhd ℝ f Set.univ_hf_per:Function.Periodic f 1_hf_nonconst:¬∃ k, ∀ (x : ℝ), f x = k_hf_mean:∫ (x : ℝ) in 0..1, f x = 0⊢ ∃ c₀,
0 < c₀ ∧
∀ (c : ℝ),
|c| < c₀ →
∃ q,
ContDiff ℝ ∞ q ∧
StrictMono q ∧
Function.Periodic (fun t => q t - t) 1 ∧ ∀ (t : ℝ), q (t + α) - 2 * q t + q (t - α) = c * f (q t)
All goals completed! 🐙Kepler conjecture (optimal sphere packing in ℝ³)
Submitter: Kim Morrison.
Notes: The optimal sphere-packing density in three dimensions equals π / √18, the density of the face-centred-cubic packing. The packing is taken over arbitrary (not necessarily lattice) sets of centres in ℝ³, with density defined via the limsup of the fraction of B_R(0) covered by the union of unit balls. §96 of Knill's *Some Fundamental Theorems in Mathematics*. The d = 8 (Viazovska) sphere-packing case is being formalised separately in `thefundamentaltheor3m/Sphere-Packing-Lean` and is excluded from this submission per the dedicated-external-project rule.
Source: Kepler conjecture 1611 (J. Kepler, *Strena seu de Nive Sexangula*); proof T. Hales, 'A proof of the Kepler conjecture', Ann. of Math. (2) 162 (2005) 1065–1185; formal verification in HOL Light + Isabelle by the Flyspeck project (T. Hales et al., completed August 2014), Forum Math. Pi 5 (2017) e2. Wiedijk-1000 #209; listed as §96 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Hales's proof reduces the global density bound to a finite collection of local nonlinear inequalities on decomposition stars built from Voronoi–Delaunay data around each packing centre, then certifies these inequalities by interval arithmetic and linear programming over roughly 100 000 subproblems. The Flyspeck formalisation (HOL Light core + Isabelle/HOL for the LP component) discharged both the geometric reduction and the computational certificates. Mathlib has Lebesgue volume on `EuclideanSpace ℝ (Fin 3)`, ZLattice covolume, and limsup, but no packing density, no Voronoi/Delaunay machinery, no nonlinear-LP framework, and no Flyspeck-style certified interval arithmetic.
theorem kepler_conjecture : Δ 3 = Real.pi / Real.sqrt 18 := ⊢ Δ 3 = Real.pi / √18
All goals completed! 🐙Kolmogorov–Arnold superposition theorem (non-universal Lorentz form)
kolmogorov_arnold_superposition
Submitter: Kim Morrison.
Notes: Non-universal Lorentz-form existence statement of the Kolmogorov–Arnold superposition theorem on the closed cube Set.Icc (0 : Fin n → ℝ) 1. Both the outer function g : ℝ → ℝ and the inner functions φ_{k,l} : ℝ → ℝ may depend on f; this is weaker than formulations with universal inner functions. Resolves the continuous form of Hilbert's 13th problem since the two-variable combining function is addition.
Source: A. N. Kolmogorov, *On the representation of continuous functions of several variables by superposition of continuous functions of one variable and addition*, Doklady Akad. Nauk SSSR 114 (1957), 953-956. V. I. Arnold, *On functions of three variables*, Doklady Akad. Nauk SSSR 114 (1957), 679-681. G. G. Lorentz, *Metric entropy, widths, and superpositions of functions*, Amer. Math. Monthly 69 (1962), 469-485 (single-outer-function refinement). Listed as §80 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Standard consequence of the Kolmogorov–Arnold superposition theorem in Lorentz form: for each continuous f on [0, 1]^n, the theorem provides continuous one-variable inner functions and a single continuous outer function such that f is the stated finite sum over 2n+1 layers. The construction uses rationally-independent positive reals λ_1, …, λ_n and step-approximating monotone Lipschitz functions ψ_0, …, ψ_{2n} separating cells of a nested partition of [0, 1]; the inner sums y_k(x) = ∑_l λ_l ψ_k(x_l) distinguish nearby points of the cube in at least one of the 2n + 1 indices k. The outer function is built iteratively using uniform continuity of f. Functions originally defined only on the compact sets where they are used can be extended to continuous functions on ℝ by Tietze extension.
theorem kolmogorov_arnold (n : ℕ) (_hn : 1 ≤ n)
(f : (Fin n → ℝ) → ℝ) (_hf : ContinuousOn f (Set.Icc 0 1)) :
∃ (g : ℝ → ℝ) (φ : Fin (2 * n + 1) → Fin n → ℝ → ℝ),
Continuous g ∧ (∀ k l, Continuous (φ k l)) ∧
∀ x ∈ Set.Icc (0 : Fin n → ℝ) 1,
f x = ∑ k, g (∑ l, φ k l (x l)) := n:ℕ_hn:1 ≤ nf:(Fin n → ℝ) → ℝ_hf:ContinuousOn f (Set.Icc 0 1)⊢ ∃ g φ,
Continuous g ∧
(∀ (k : Fin (2 * n + 1)) (l : Fin n), Continuous (φ k l)) ∧ ∀ x ∈ Set.Icc 0 1, f x = ∑ k, g (∑ l, φ k l (x l))
All goals completed! 🐙Koszul formula
Submitter: Kim Morrison.
Notes: §38 of Knill's 'Some Fundamental Theorems in Mathematics' (additional statement of the Riemannian-geometry section; the boxed main theorem is Levi-Civita). The Koszul formula: 2⟨∇_X Y, Z⟩ equals the cyclic sum of directional derivatives X·⟨Y,Z⟩ + Y·⟨X,Z⟩ − Z·⟨X,Y⟩ minus the Lie-bracket cyclic sum ⟨X,[Y,Z]⟩ + ⟨Y,[X,Z]⟩ − ⟨Z,[X,Y]⟩. The identity that forces uniqueness of the Levi-Civita connection. Mathlib has the covariant-derivative / Riemannian-bundle / Lie-bracket machinery but no metric-compatibility predicate and no Koszul formula. The Challenge ships one helper (IsMetricCompatible).
Source: J.-L. Koszul (course notes, 1950s); cf. do Carmo, Riemannian Geometry. Listed as §38 additional statement in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Direct algebraic manipulation from metric compatibility and torsion-freeness. Metric compatibility gives X·g(Y,Z) = g(∇_X Y, Z) + g(Y, ∇_X Z), and cyclic permutations Y·g(Z,X) and Z·g(X,Y). Torsion-freeness gives ∇_X Y − ∇_Y X = [X,Y] (and permutations). Form the linear combination X·g(Y,Z) + Y·g(X,Z) − Z·g(X,Y); expand each term via metric compatibility; substitute the torsion-free identities to convert ∇_X Z − ∇_Z X, ∇_Y Z − ∇_Z Y, and ∇_X Y − ∇_Y X into Lie brackets. The cross-terms ±g(∇_Y X, Z), ±g(∇_X Z, Y), ±g(∇_Y Z, X) collapse pairwise except for 2·g(∇_X Y, Z), yielding the formula.
theorem koszul_formula {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
[FiniteDimensional ℝ E] [CompleteSpace E]
{H : Type*} [TopologicalSpace H] {I : ModelWithCorners ℝ E H}
{M : Type*} [TopologicalSpace M] [ChartedSpace H M]
[IsManifold I ∞ M]
[RiemannianBundle (fun (x : M) ↦ TangentSpace I x)]
[IsContMDiffRiemannianBundle I ∞ E (fun (x : M) ↦ TangentSpace I x)]
(cov : CovariantDerivative I E (TangentSpace I (M := M)))
[ContMDiffCovariantDerivative cov ∞]
(_htor : cov.torsion = 0) (_hmet : LeanEval.Geometry.KoszulFormula.IsMetricCompatible cov)
(X Y Z : Π x : M, TangentSpace I x)
(_hX : CMDiff ∞ (T% X)) (_hY : CMDiff ∞ (T% Y)) (_hZ : CMDiff ∞ (T% Z))
(x : M) :
2 * inner ℝ (cov Y x (X x)) (Z x) =
extDerivFun (fun y : M => inner ℝ (Y y) (Z y)) x (X x)
+ extDerivFun (fun y : M => inner ℝ (X y) (Z y)) x (Y x)
- extDerivFun (fun y : M => inner ℝ (X y) (Y y)) x (Z x)
- inner ℝ (X x) (mlieBracket I Y Z x)
- inner ℝ (Y x) (mlieBracket I X Z x)
+ inner ℝ (Z x) (mlieBracket I X Y x) := E:Type u_1inst✝¹⁰:NormedAddCommGroup Einst✝⁹:NormedSpace ℝ Einst✝⁸:FiniteDimensional ℝ Einst✝⁷:CompleteSpace EH:Type u_2inst✝⁶:TopologicalSpace HI:ModelWithCorners ℝ E HM:Type u_3inst✝⁵:TopologicalSpace Minst✝⁴:ChartedSpace H Minst✝³:IsManifold I ∞ Minst✝²:RiemannianBundle fun x => TangentSpace I xinst✝¹:IsContMDiffRiemannianBundle I ∞ E fun x => TangentSpace I xcov:CovariantDerivative I E (TangentSpace I)inst✝:cov.ContMDiffCovariantDerivative ∞_htor:cov.torsion = 0_hmet:IsMetricCompatible covX:(x : M) → TangentSpace I xY:(x : M) → TangentSpace I xZ:(x : M) → TangentSpace I x_hX:ContMDiff I (I.prod 𝓘(ℝ, E)) ∞ fun x => ⟨x, X x⟩_hY:ContMDiff I (I.prod 𝓘(ℝ, E)) ∞ fun x => ⟨x, Y x⟩_hZ:ContMDiff I (I.prod 𝓘(ℝ, E)) ∞ fun x => ⟨x, Z x⟩x:M⊢ 2 * Inner.inner ℝ ((↑cov Y x) (X x)) (Z x) =
(extDerivFun (fun y => Inner.inner ℝ (Y y) (Z y)) x) (X x) +
(extDerivFun (fun y => Inner.inner ℝ (X y) (Z y)) x) (Y x) -
(extDerivFun (fun y => Inner.inner ℝ (X y) (Y y)) x) (Z x) -
Inner.inner ℝ (X x) (mlieBracket I Y Z x) -
Inner.inner ℝ (Y x) (mlieBracket I X Z x) +
Inner.inner ℝ (Z x) (mlieBracket I X Y x)
All goals completed! 🐙The Landsberg–Schaar relation
Submitter: Kim Morrison.
Notes: For positive odd integers p, q, S(2q,p) = e^{iπ/4}·S(−p,2q), where S(q,p) = (1/√p) ∑_{x<p} e^{iπ x² q/p} is the normalized quadratic Gauss sum (trusted helper gaussS, a non-hole). Mathlib has the character-theoretic gaussSum (giving |g|²=p) and Jacobi-theta machinery, but neither the quadratic Gauss-sum value nor the Landsberg–Schaar relation. Candidate from §120 of the Knill survey.
Source: G. Landsberg (1893); M. Schaar (1848). Knill, *Some fundamental theorems in mathematics*, §120.
Informal solution: Landsberg–Schaar via theta-function reciprocity. Apply the Jacobi theta transformation θ(−1/τ) = √(−iτ) θ(τ) (Poisson summation for the Gaussian) along a path where the modular parameter degenerates to the rationals p/q: take τ → it with the finite quadratic sums appearing as the boundary values of θ at rational points. The modular transformation relates the sum at modulus p (argument 2q) to the sum at modulus 2q (argument −p), and the automorphy factor √(−iτ) contributes the e^{iπ/4} phase. Mathlib has jacobiTheta₂ and its functional equation; assembling the rational-degeneration limit into the finite-sum identity is the missing step.
theorem landsberg_schaar (p q : ℕ) (hp : Odd p) (hq : Odd q) :
gaussS (2 * q : ℕ) p
= Complex.exp ((Real.pi : ℂ) * Complex.I / 4) * gaussS (-(p : ℤ)) (2 * q) := p:ℕq:ℕhp:Odd phq:Odd q⊢ gaussS (↑(2 * q)) p = cexp (↑Real.pi * I / 4) * gaussS (-↑p) (2 * q)
All goals completed! 🐙Lax's approximation theorem for toral homeomorphisms
Submitter: Kim Morrison.
Notes: Peter Lax (1971): every volume-preserving homeomorphism of the d-torus (d ≥ 1) is approximated arbitrarily well, in the L∞-metric δ(T,S) = ess sup d(Tx,Sx), by cyclic cube exchange transformations (a single full nᵈ-cycle rigidly permuting the 1/n-grid cubes). Trusted helpers (Torus, VolumePreservingEquiv, deltaDist, ToralDynamicalSystem, cube, cubeShift, IsCyclicCubeExchange) are non-holes. 'Cyclic' = σ.IsCycle ∧ σ.support = univ; 0 < d required. Mathlib has the torus, measure-preserving maps, and Hall's marriage theorem but not Lax's theorem or cube exchanges. Candidate from §110 of the Knill survey.
Source: P. D. Lax, *Approximation of measure preserving transformations*, Comm. Pure Appl. Math. 24 (1971). Knill, *Some fundamental theorems in mathematics*, §110.
Informal solution: Lax's grid argument. Fix a fine mesh n with 1/n < ε-scale. Partition 𝕋ᵈ into nᵈ cubes; since T is volume-preserving, the images T(cube k) and the cubes match up in measure, so by Hall's marriage theorem there is a bijection σ of cube-indices with T(cube k) ∩ cube(σ k) of positive measure (each target within ε of the source), giving a cube exchange S₀ with δ(T,S₀) small. Upgrade σ to a single full cycle: any permutation is a product of cycles, and one can perturb/relabel within the ε-tolerance (concatenating the cycles through shared boundary cubes) to make it one nᵈ-cycle without increasing δ beyond ε. Requires the measure-matching (Hall) and the cyclic upgrade, neither packaged in Mathlib.
theorem lax_approximation {d : ℕ} (hd : 0 < d) (T : LeanEval.Dynamics.LaxApproximation.ToralDynamicalSystem d)
{ε : ℝ≥0∞} (hε : 0 < ε) :
∃ (n : ℕ) (S : LeanEval.Dynamics.LaxApproximation.VolumePreservingEquiv d),
LeanEval.Dynamics.LaxApproximation.IsCyclicCubeExchange S n ∧ deltaDist T.toVolumePreservingEquiv S < ε := d:ℕhd:0 < dT:ToralDynamicalSystem dε:ℝ≥0∞hε:0 < ε⊢ ∃ n S, IsCyclicCubeExchange S n ∧ deltaDist T.toVolumePreservingEquiv S < ε
All goals completed! 🐙Fundamental theorem of Riemannian geometry (Levi-Civita)
Submitter: Kim Morrison.
Notes: §38 of Knill's 'Some Fundamental Theorems in Mathematics'. On a C^∞ finite-dimensional Riemannian manifold, there exists a unique smooth torsion-free metric-compatible covariant derivative on TM (the Levi-Civita connection); uniqueness is stated on the smooth-section subspace via `SameOnSmooth` since mathlib's `CovariantDerivative` is bundled over all sections. Mathlib has the covariant-derivative / Riemannian-bundle / Lie-bracket machinery but no metric-compatibility predicate and no Levi-Civita existence/uniqueness.
Source: T. Levi-Civita, Nozione di parallelismo in una varietà qualunque, Rend. Circ. Mat. Palermo 42 (1917). Listed as §38 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Existence + uniqueness via the Koszul formula. Solve 2·g(∇_X Y, Z) = X·g(Y,Z) + Y·g(X,Z) − Z·g(X,Y) − g(X,[Y,Z]) − g(Y,[X,Z]) + g(Z,[X,Y]) for the unknown ∇_X Y: the right-hand side is C^∞(M)-linear in Z and a derivation in Y, so by non-degeneracy of g it determines ∇_X Y as a smooth section. Direct verification that this `cov` is torsion-free and metric-compatible. For uniqueness: any other torsion-free metric-compatible smooth connection ∇' must satisfy the same Koszul identity, hence agrees with ∇ on smooth Y at every smooth X-direction.
theorem levi_civita_exists_unique {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
[FiniteDimensional ℝ E] [CompleteSpace E]
{H : Type*} [TopologicalSpace H] {I : ModelWithCorners ℝ E H}
{M : Type*} [TopologicalSpace M] [ChartedSpace H M]
[IsManifold I ∞ M]
[RiemannianBundle (fun (x : M) ↦ TangentSpace I x)]
[IsContMDiffRiemannianBundle I ∞ E (fun (x : M) ↦ TangentSpace I x)] :
∃ cov : CovariantDerivative I E (TangentSpace I (M := M)),
(ContMDiffCovariantDerivative cov ∞ ∧
cov.torsion = 0 ∧ LeanEval.Geometry.LeviCivita.IsMetricCompatible cov) ∧
∀ cov' : CovariantDerivative I E (TangentSpace I (M := M)),
(ContMDiffCovariantDerivative cov' ∞ ∧
cov'.torsion = 0 ∧ LeanEval.Geometry.LeviCivita.IsMetricCompatible cov') →
LeanEval.Geometry.LeviCivita.SameOnSmooth cov cov' := E:Type u_1inst✝⁹:NormedAddCommGroup Einst✝⁸:NormedSpace ℝ Einst✝⁷:FiniteDimensional ℝ Einst✝⁶:CompleteSpace EH:Type u_2inst✝⁵:TopologicalSpace HI:ModelWithCorners ℝ E HM:Type u_3inst✝⁴:TopologicalSpace Minst✝³:ChartedSpace H Minst✝²:IsManifold I ∞ Minst✝¹:RiemannianBundle fun x => TangentSpace I xinst✝:IsContMDiffRiemannianBundle I ∞ E fun x => TangentSpace I x⊢ ∃ cov,
(cov.ContMDiffCovariantDerivative ∞ ∧ cov.torsion = 0 ∧ IsMetricCompatible cov) ∧
∀ (cov' : CovariantDerivative I E (TangentSpace I)),
cov'.ContMDiffCovariantDerivative ∞ ∧ cov'.torsion = 0 ∧ IsMetricCompatible cov' → SameOnSmooth cov cov'
All goals completed! 🐙Lidskii's inequality
Submitter: Kim Morrison.
Notes: §99 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' (additional statement of the section on spectral perturbation; the boxed main theorem lidskii_last is the p = 1 case combined with an entrywise bound). For self-adjoint complex matrices A, B with eigenvalues sorted in the same order and p ≥ 1, ∑_j |α_j - β_j|^p ≤ ∑_j |γ_j|^p where γ_j are the eigenvalues of B - A. Uses Matrix.IsHermitian.eigenvalues₀; mathlib has no Lidskii, Ky Fan, or Hoffman-Wielandt perturbation bounds, and no formalization of Lidskii's inequality was found in any other proof assistant. Companion problem: lidskii_last (#274) is the p = 1 entrywise-distance corollary.
Source: V. B. Lidskii, On the proper values of a sum and product of symmetric matrices, Dokl. Akad. Nauk SSSR 75 (1950), 769-772. Listed as an additional statement of §99 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The eigenvalues of B = A + C interlace those of A according to Weyl's inequalities, giving componentwise α_j + γ_n ≤ β_j ≤ α_j + γ_1 for sorted eigenvalues; tightening this via the Ky Fan extremal characterization of partial sums of eigenvalues (∑_{j=1}^k α_j = max{tr(P A) : P projection of rank k}) yields the majorization ∑_{j=1}^k (β_j - α_j)_↓ ≤ ∑_{j=1}^k γ_j for sorted differences. Schur's theorem on Hermitian matrices then upgrades the partial-sum majorization to ∑_j |α_j - β_j|^p ≤ ∑_j |γ_j|^p for any convex function applied componentwise, in particular x ↦ |x|^p for p ≥ 1 (Hardy-Littlewood-Pólya / Hardy-Littlewood majorization principle).
theorem lidskii_inequality {n : Type*} [Fintype n] [DecidableEq n]
{A B : Matrix n n ℂ} (hA : A.IsHermitian) (hB : B.IsHermitian)
{p : ℝ} (_hp : 1 ≤ p) :
∑ j, |hA.eigenvalues₀ j - hB.eigenvalues₀ j| ^ p ≤
∑ j, |(hB.sub hA).eigenvalues₀ j| ^ p := n:Type u_1inst✝¹:Fintype ninst✝:DecidableEq nA:Matrix n n ℂB:Matrix n n ℂhA:A.IsHermitianhB:B.IsHermitianp:ℝ_hp:1 ≤ p⊢ ∑ j, |hA.eigenvalues₀ j - hB.eigenvalues₀ j| ^ p ≤ ∑ j, |⋯.eigenvalues₀ j| ^ p
All goals completed! 🐙Lidskii–Last eigenvalue-perturbation theorem
Submitter: Kim Morrison.
Notes: §99 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. For two self-adjoint complex n×n matrices A, B with eigenvalues sorted in the same order, the total eigenvalue displacement ∑|α_j - β_j| is bounded by the entrywise ℓ¹ distance ∑|A_ij - B_ij|. This is Last's theorem (≈1993), a consequence of Lidskii's inequality (1950). Uses Matrix.IsHermitian.eigenvalues₀; mathlib has no Lidskii, Ky Fan, or Hoffman-Wielandt perturbation bounds, and no formalization of the theorem was found in any other proof assistant.
Source: V. B. Lidskii (1950); the entrywise ℓ¹ form is due to Y. Last (around 1993). Listed as §99 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: By Lidskii's inequality the vector of sorted-eigenvalue displacements of A and B is majorized by the vector of eigenvalues of C := B - A (proved via the Ky Fan extremal characterization of partial sums of eigenvalues), so ∑_j |α_j - β_j| ≤ ∑_j |γ_j| with γ the eigenvalues of C. Then ∑_j |γ_j| ≤ ∑_{i,j} |C_ij|: for Hermitian C the ℓ¹ norm of the eigenvalues is dominated by the ℓ¹ norm of the matrix entries (bound each |γ_j| using the spectral decomposition and the triangle inequality). Combining the two gives the entrywise bound.
theorem lidskii_last {n : Type*} [Fintype n] [DecidableEq n]
{A B : Matrix n n ℂ} (hA : A.IsHermitian) (hB : B.IsHermitian) :
∑ j, |hA.eigenvalues₀ j - hB.eigenvalues₀ j| ≤
∑ i, ∑ j, ‖A i j - B i j‖ := n:Type u_1inst✝¹:Fintype ninst✝:DecidableEq nA:Matrix n n ℂB:Matrix n n ℂhA:A.IsHermitianhB:B.IsHermitian⊢ ∑ j, |hA.eigenvalues₀ j - hB.eigenvalues₀ j| ≤ ∑ i, ∑ j, ‖A i j - B i j‖
All goals completed! 🐙Lindemann's theorem (e and π transcendental)
Submitter: Kim Morrison.
Notes: Both e = exp 1 and π are transcendental over ℤ (Lindemann 1882). Mathlib has Transcendental and the analytic scaffolding of the Lindemann–Weierstrass proof (Mathlib.NumberTheory.Transcendental.Lindemann.AnalyticalPart) but no transcendence statement for e or π. No new definitions needed. Candidate from §55 of the Knill survey. (The companion irrationality of π is already in Mathlib as irrational_pi.)
Source: F. Lindemann, *Über die Zahl π*, Math. Ann. 20 (1882). Knill, *Some fundamental theorems in mathematics*, §55.
Informal solution: Transcendence of e and π via the Hermite–Lindemann method, the x=1 / x=iπ special cases of Lindemann–Weierstrass. For e: assume a polynomial relation ∑ aₖ eᵏ = 0 and derive a contradiction using Hermite's integral ∫ e^{-t} f(t) dt with f a high-power polynomial, getting a nonzero integer of absolute value < 1. For π: if π were algebraic so would be iπ; apply the symmetric-function/Galois argument to ∏(1 + e^{αⱼ}) where αⱼ are the conjugates of iπ, using e^{iπ} = −1, again reducing to a nonzero integer that is too small. Mathlib's AnalyticalPart supplies the integral estimates; the symmetric-function finish is the missing piece.
theorem lindemann :
Transcendental ℤ (Real.exp 1) ∧ Transcendental ℤ Real.pi := ⊢ Transcendental ℤ (Real.exp 1) ∧ Transcendental ℤ Real.pi
All goals completed! 🐙The Lindemann–Weierstrass theorem
Submitter: Kim Morrison.
Notes: If x₁,…,xₙ ∈ ℂ are algebraic over ℚ and ℚ-linearly independent, then e^{x₁},…,e^{xₙ} are algebraically independent over ℚ. Mathlib has AlgebraicIndependent and the analytic scaffolding (LindemannWeierstrass namespace in AnalyticalPart.lean) but not the theorem. No new definitions needed. Candidate from §55 of the Knill survey.
Source: F. Lindemann (1882); K. Weierstrass (1885). Knill, *Some fundamental theorems in mathematics*, §55.
Informal solution: The Hermite–Lindemann–Weierstrass argument. Reduce algebraic independence of the e^{xᵢ} to: for distinct algebraic exponents β₁,…,β_m and nonzero algebraic coefficients, ∑ cⱼ e^{βⱼ} ≠ 0. Symmetrize over the Galois conjugates to get rational (then integer) coefficients, and bound the resulting nonzero algebraic integer below (it is a nonzero norm) while bounding it above using Hermite's polynomial-integral construction ∫ e^{-t}f(t)dt with f built from the βⱼ to large power p; the p! divisibility makes the main term a nonzero integer and the tail < 1, a contradiction. Mathlib's AnalyticalPart provides the integral estimates.
theorem lindemann_weierstrass {n : ℕ} (x : Fin n → ℂ)
(h_alg : ∀ i, IsAlgebraic ℚ (x i))
(h_lin : LinearIndependent ℚ x) :
AlgebraicIndependent ℚ (fun i => Complex.exp (x i)) := n:ℕx:Fin n → ℂh_alg:∀ (i : Fin n), IsAlgebraic ℚ (x i)h_lin:LinearIndependent ℚ x⊢ AlgebraicIndependent ℚ fun i => Complex.exp (x i)
All goals completed! 🐙Linear ODE with negative-real-part eigenvalues is asymptotically stable
linear_ode_asymptotic_stability
Submitter: Kim Morrison.
Notes: If every eigenvalue of A has negative real part, every solution of x' = Ax decays to zero in norm.
Source: Classical linear stability theory; Hirsch-Smale-Devaney.
Informal solution: Pass to the complexification; bring A to (Schur or Jordan) upper-triangular form; the matrix exponential satisfies ||exp(tA)|| <= C(1+t^{n-1}) exp(alpha t) for any alpha greater than the maximum real part of the spectrum, hence decays to 0. For any t_1 > 0, x(t) = exp((t - t_1) A) x(t_1) for t >= t_1 by uniqueness of the linear IVP, so ||x(t)|| -> 0 as t -> infty.
theorem linear_ode_asymptotic_stability (n : ℕ) (A : Matrix (Fin n) (Fin n) ℝ)
(hA : ∀ μ : ℂ,
Module.End.HasEigenvalue
(Matrix.toLin' (A.map (algebraMap ℝ ℂ))) μ → μ.re < 0)
(x : ℝ → (Fin n → ℝ))
(hx : ∀ t : ℝ, 0 < t → HasDerivAt x (A.mulVec (x t)) t) :
Filter.Tendsto (fun t : ℝ => ‖x t‖) Filter.atTop (nhds 0) := n:ℕA:Matrix (Fin n) (Fin n) ℝhA:∀ (μ : ℂ), Module.End.HasEigenvalue (Matrix.toLin' (A.map ⇑(algebraMap ℝ ℂ))) μ → μ.re < 0x:ℝ → Fin n → ℝhx:∀ (t : ℝ), 0 < t → HasDerivAt x (A *ᵥ x t) t⊢ Filter.Tendsto (fun t => ‖x t‖) Filter.atTop (nhds 0)
All goals completed! 🐙Liouville–Arnold theorem on integrable systems
Submitter: Kim Morrison.
Notes: §45 of Knill's 'Some Fundamental Theorems in Mathematics'. On a 2n-dimensional symplectic manifold with n smooth, pointwise linearly independent, pairwise Poisson-commuting first integrals F₁, …, F_n, every compact connected component of a joint level set is diffeomorphic to the n-torus T^n. Formalized on ℝ^{2n} with the standard symplectic form ω₀ = ∑ᵢ dpᵢ ∧ dqᵢ. Mathlib has EuclideanSpace, fderiv, AddCircle, Homeomorph but no Poisson brackets, no symplectic manifolds beyond Matrix.symplecticGroup, no first integrals, and no Liouville–Arnold theorem in any form (the Liouville files in Mathlib/Analysis/Complex/ are Liouville's theorem on bounded entire functions, a different result). The Challenge ships ~1 page of helper definitions (E, idxP, idxQ, poissonBracket, IsLiouvilleIntegrable, levelSet).
Source: V. I. Arnold, *Mathematical Methods of Classical Mechanics* (2nd ed., 1989), Theorem 49.A.1 (the standard modern reference). The result is due to Liouville (1855) for the local existence of action-angle coordinates and Arnold (1963) for the compact-connected-component topology. Listed as §45 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Joint hamiltonian flows of F₁, …, F_n commute (by Poisson-commutativity) and are everywhere transverse to the level set (by linear independence of the gradients), so each compact connected component carries a transitive free action of ℝⁿ. The stabilizer is a discrete subgroup of full rank n (compactness), hence isomorphic to ℤⁿ, exhibiting M_c as ℝⁿ/ℤⁿ ≃ T^n.
theorem liouville_arnold {n : ℕ} (F : Fin n → LeanEval.Geometry.LiouvilleArnold.E n → ℝ) (U : Set (LeanEval.Geometry.LiouvilleArnold.E n)) (_hU : IsOpen U)
(_hLI : LeanEval.Geometry.LiouvilleArnold.IsLiouvilleIntegrable F U)
(c : Fin n → ℝ)
(_hMc_sub : LeanEval.Geometry.LiouvilleArnold.levelSet F c ⊆ U)
(_hMc_compact : IsCompact (LeanEval.Geometry.LiouvilleArnold.levelSet F c))
(_hMc_connected : IsConnected (LeanEval.Geometry.LiouvilleArnold.levelSet F c)) :
Nonempty ((LeanEval.Geometry.LiouvilleArnold.levelSet F c) ≃ₜ (Fin n → AddCircle (1 : ℝ))) := n:ℕF:Fin n → E n → ℝU:Set (E n)_hU:IsOpen U_hLI:IsLiouvilleIntegrable F Uc:Fin n → ℝ_hMc_sub:levelSet F c ⊆ U_hMc_compact:IsCompact (levelSet F c)_hMc_connected:IsConnected (levelSet F c)⊢ Nonempty (↑(levelSet F c) ≃ₜ (Fin n → AddCircle 1))
All goals completed! 🐙Linear programming: maximum principle and vertex optimality
Submitter: Kim Morrison.
Notes: §101 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' gives two structural facts for linear programs in standard inequality form: maximise c·x subject to A x ≤ b and 0 ≤ x. The maximum principle says any local maximiser of the linear objective on the feasible region is global, and if c ≠ 0 then it lies on the feasible region's frontier. The vertex optimality statement says that a nonempty bounded feasible region has an optimal solution at an extreme point (the existence content of Dantzig's simplex algorithm). Mathlib has the relevant convex-geometry notions, including IsLocalMaxOn, IsMaxOn, frontier, Set.extremePoints, and Krein–Milman-style infrastructure, but not these LP results as named theorems.
Source: G. B. Dantzig (1947), simplex algorithm. Listed as §101 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Maximum principle: the objective x ↦ c·x is affine, hence both concave and convex, and the feasible region {x | A x ≤ b, 0 ≤ x} is convex. A local maximum of a concave function on a convex set is global: for any feasible y, the segment x + t(y − x) stays feasible and the objective along it is affine, so if it does not exceed the value at x for small t it cannot at t = 1 either. For the frontier claim, if c ≠ 0 then c·x is a non-constant affine functional, which on a convex set cannot attain its maximum at an interior point (moving in the direction +c stays inside a small ball and strictly increases the objective), so the maximiser is on the frontier. Vertex optimality: a nonempty bounded feasible region of an LP is a compact convex polytope, so by Krein–Milman it is the closed convex hull of its extreme points and the continuous objective attains its maximum; among maximisers, an extreme point of the face on which the maximum is attained is an extreme point of the whole region, giving an optimal vertex.
/-- **Maximum principle for linear programming** (§101). A local maximiser of
the LP objective on the feasible region is automatically a global maximiser; and
whenever the objective is non-constant (`c ≠ 0`), the maximiser lies on the
topological frontier of the feasible region. -/
theorem lp_maximum_principle {m n : ℕ} (lp : LinearProgram m n)
(x : Fin m → ℝ) (_hx : x ∈ lp.feasible)
(_hlocal : IsLocalMaxOn lp.objective lp.feasible x) :
IsMaxOn lp.objective lp.feasible x ∧
(lp.c ≠ 0 → x ∈ frontier lp.feasible) := m:ℕn:ℕlp:LinearProgram m nx:Fin m → ℝ_hx:x ∈ lp.feasible_hlocal:IsLocalMaxOn lp.objective lp.feasible x⊢ IsMaxOn lp.objective lp.feasible x ∧ (lp.c ≠ 0 → x ∈ frontier lp.feasible)
All goals completed! 🐙/-- **Vertex optimality** (§101; the existence content of Dantzig's 1947 simplex
algorithm). Every linear program with a nonempty bounded feasible region admits a
global maximiser that is an extreme point (vertex) of the feasible region. -/
theorem simplex_algorithm {m n : ℕ} (lp : LinearProgram m n)
(_hfeas : lp.feasible.Nonempty) (_hbdd : Bornology.IsBounded lp.feasible) :
∃ x ∈ lp.feasible, IsMaxOn lp.objective lp.feasible x ∧
x ∈ Set.extremePoints ℝ lp.feasible := m:ℕn:ℕlp:LinearProgram m n_hfeas:lp.feasible.Nonempty_hbdd:Bornology.IsBounded lp.feasible⊢ ∃ x ∈ lp.feasible, IsMaxOn lp.objective lp.feasible x ∧ x ∈ Set.extremePoints ℝ lp.feasible
All goals completed! 🐙Existence of an order-10200960 group with a 22-dim irrep whose tensor square has 4 isotypic components
m23_irrep_tensor_square_decomp
Submitter: Kim Morrison.
Notes: Existential: a finite group G of order 10200960 (= |M₂₃|) with a 22-dimensional irreducible complex representation V whose tensor square (with the diagonal G-action) has exactly 4 isotypic components. Both the MonoidAlgebra ℂ G action on V and on V ⊗[ℂ] V are bound explicitly, with IsScalarTower and an explicit diagonal-action equation g•(v⊗w) = (g•v)⊗(g•w) pinning the V⊗V action. The intended witness is M₂₃ acting on its 22-dim irreducible: V ⊗ V = 1 ⊕ V ⊕ W₂₃₀ ⊕ Λ²V. While the formal statement does not technically require constructing M₂₃ and studying its representation theory, we suspect that in practice it does.
Source: É. Mathieu, Sur les fonctions cinq fois transitives de 24 quantités, J. Math. Pures Appl. (1873); ATLAS of Finite Groups, M₂₃ character table.
Informal solution: Realise M₂₃ as a subgroup of S₂₃ (e.g. via the Steiner system S(4,7,23) or as the automorphism group of a ternary Golay code construction). Take V to be the 22-dimensional deleted permutation representation. By 4-transitivity Sym²V is the permutation representation on the 23 choose 2 = 253 unordered pairs, decomposing as 1 + V + W₂₃₀ where W is the unique 230-dimensional irrep; Λ²V is irreducible of dimension 231, giving four pairwise non-isomorphic isotypic components in V⊗V.
theorem m23_irrep_tensor_square_decomp :
∃ (G : Type) (_ : Group G) (_ : Fintype G),
Fintype.card G = 10200960 ∧
∃ (V : Type) (_ : AddCommGroup V) (_ : Module ℂ V)
(_ : Module (MonoidAlgebra ℂ G) V)
(_ : IsScalarTower ℂ (MonoidAlgebra ℂ G) V)
(_ : Module (MonoidAlgebra ℂ G) (V ⊗[ℂ] V))
(_ : IsScalarTower ℂ (MonoidAlgebra ℂ G) (V ⊗[ℂ] V)),
Module.finrank ℂ V = 22 ∧
IsSimpleModule (MonoidAlgebra ℂ G) V ∧
(∀ (g : G) (v w : V),
(MonoidAlgebra.of ℂ G g : MonoidAlgebra ℂ G) • (v ⊗ₜ[ℂ] w) =
((MonoidAlgebra.of ℂ G g : MonoidAlgebra ℂ G) • v) ⊗ₜ[ℂ]
((MonoidAlgebra.of ℂ G g : MonoidAlgebra ℂ G) • w)) ∧
(isotypicComponents (MonoidAlgebra ℂ G) (V ⊗[ℂ] V)).ncard = 4 := ⊢ ∃ G x x_1,
Fintype.card G = 10200960 ∧
∃ V x_2 x_3 x_4,
∃ (x_5 : IsScalarTower ℂ (MonoidAlgebra ℂ G) V),
∃ x_6,
∃ (_ : IsScalarTower ℂ (MonoidAlgebra ℂ G) (V ⊗[ℂ] V)),
Module.finrank ℂ V = 22 ∧
IsSimpleModule (MonoidAlgebra ℂ G) V ∧
(∀ (g : G) (v w : V),
(MonoidAlgebra.of ℂ G) g • v ⊗ₜ[ℂ] w =
((MonoidAlgebra.of ℂ G) g • v) ⊗ₜ[ℂ] ((MonoidAlgebra.of ℂ G) g • w)) ∧
(isotypicComponents (MonoidAlgebra ℂ G) (V ⊗[ℂ] V)).ncard = 4
All goals completed! 🐙Mandelbar (tricorn) is not path-connected (Hubbard–Schleicher)
Submitter: Kim Morrison.
Notes: The d = 2 case of Hubbard–Schleicher's theorem that multicorns — connectedness loci of unicritical antiholomorphic polynomials z ↦ z̄^d + c — are not path-connected for d ≥ 2. For d = 2 this is the mandelbar / tricorn, the connectedness locus of z ↦ z̄² + c. The file ships Tantibar and Mandelbar definitions. Knill writes the iterator as z̄ + c (degree 1), but with that literal map the connectedness locus is the imaginary axis — path-connected, contradicting the claim. The formal statement uses the standard degree-2 form.
Source: John H. Hubbard and Dierk Schleicher, *Multicorns are not Path Connected*, arXiv:1209.1753 (2012); published in *Frontiers in Complex Dynamics* (Princeton University Press, 2014), pp. 73-102. Listed as §62 (additional statement 2) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: This is the d = 2 case of Hubbard–Schleicher's theorem that no multicorn for d ≥ 2 is path-connected. They study the connectedness loci of unicritical antiholomorphic polynomials z ↦ z̄^d + c and show that certain odd-period hyperbolic components cannot be connected to the principal component by paths inside the multicorn. Specialising to d = 2 gives that the mandelbar / tricorn is not path-connected.
theorem mandelbar_not_path_connected : ¬ IsPathConnected LeanEval.ComplexAnalysis.Mandelbar := ⊢ ¬IsPathConnected Mandelbar
All goals completed! 🐙Mandelbrot set is connected (Douady–Hubbard)
Submitter: Kim Morrison.
Notes: The Mandelbrot set for the quadratic family T_c(z) = z² + c is the parameter set for which the critical orbit of 0 is bounded. This problem states Douady–Hubbard's connectedness theorem. §62 of Knill's 'Some Fundamental Theorems in Mathematics'.
Source: A. Douady and J. H. Hubbard, *Étude dynamique des polynômes complexes I, II*, Publ. Math. Orsay 84-02, 85-04. Listed as §62 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Use the Douady–Hubbard uniformisation: the Böttcher coordinate at infinity gives a conformal isomorphism from ℂ \ M to the exterior of the closed unit disk. Equivalently, after adjoining ∞, the complement of M in the Riemann sphere is simply connected, hence M is connected.
theorem mandelbrot_connected : IsConnected LeanEval.ComplexAnalysis.MandelbrotProblem.Mandelbrot := ⊢ IsConnected Mandelbrot
All goals completed! 🐙Margulis–Ruelle inequality
Submitter: Kim Morrison.
Notes: Margulis (1968) / Ruelle (1978): for a C²-diffeomorphism T of a compact surface and a T-invariant ergodic probability measure μ, the Kolmogorov–Sinai entropy is bounded by the sum of the positive parts of the Lyapunov exponents, h_μ(T) ≤ λ₁⁺ + λ₂⁺. Shares the §103 trusted helpers (kolmogorovSinaiEntropy, lyapunov* via totalized sSup/limsup; genuine in the compact-C² regime). Not in Mathlib (no KS entropy, no Lyapunov exponents). Candidate from §103 of the Knill survey.
Source: D. Ruelle, *An inequality for the entropy of differentiable maps*, Bol. Soc. Brasil. Mat. 9 (1978); G. A. Margulis (1968, unpublished). Knill, *Some fundamental theorems in mathematics*, §103.
Informal solution: Ruelle's inequality. Cover the manifold by a fine partition and estimate the number of partition atoms an orbit can be distinguished into after n steps: the differential DT^n expands volumes by at most ∏ⱼ exp(n·λⱼ⁺) up to subexponential factors, so the n-step refinement ∨_{k<n} T^{-k}P has at most exp(n·∑λⱼ⁺ + o(n)) essential atoms. Hence (1/n)H_μ(∨ T^{-k}P) ≤ ∑λⱼ⁺ + o(1), and taking the partition-supremum gives h_μ ≤ ∑λⱼ⁺. Uses Oseledec exponents and the volume-growth bound; not in Mathlib.
theorem margulis_ruelle (T T_inv : LeanEval.Dynamics.EucPlane → LeanEval.Dynamics.EucPlane)
(hT_smooth : ContDiff ℝ 2 T)
(hT_inv_smooth : ContDiff ℝ 2 T_inv)
(hT_left : Function.LeftInverse T_inv T)
(hT_right : Function.RightInverse T_inv T)
(K : Set LeanEval.Dynamics.EucPlane)
(hK_compact : IsCompact K)
(hK_inv : T '' K = K)
(μ : Measure LeanEval.Dynamics.EucPlane) [IsProbabilityMeasure μ]
(hμ_supp : μ Kᶜ = 0)
(hμ_pres : MeasurePreserving T μ μ)
(hμ_erg : Ergodic T μ) :
kolmogorovSinaiEntropy μ T
≤ max 0 (∫ x, lyapunovUpperAt T x ∂μ)
+ max 0 (∫ x, lyapunovLowerAt T x ∂μ) := T:EucPlane → EucPlaneT_inv:EucPlane → EucPlanehT_smooth:ContDiff ℝ 2 ThT_inv_smooth:ContDiff ℝ 2 T_invhT_left:Function.LeftInverse T_inv ThT_right:Function.RightInverse T_inv TK:Set EucPlanehK_compact:IsCompact KhK_inv:T '' K = Kμ:Measure EucPlaneinst✝:IsProbabilityMeasure μhμ_supp:μ Kᶜ = 0hμ_pres:MeasurePreserving T μ μhμ_erg:Ergodic T μ⊢ kolmogorovSinaiEntropy μ T ≤
max 0 (∫ (x : EucPlane), lyapunovUpperAt T x ∂μ) + max 0 (∫ (x : EucPlane), lyapunovLowerAt T x ∂μ)
All goals completed! 🐙Martinet's asymptotically-good totally real towers
Submitter: Kim Morrison.
Notes: There is an absolute C > 0 such that for infinitely many degrees d there is a totally real number field K of degree d over ℚ with |Δ_K| ≤ C^d, i.e. a family of totally real fields of growing degree with bounded root discriminant rd_K = |Δ_K|^{1/d} ≤ C. This is the sole classical input taken as an axiom in the sum_product formalization of Bloom–Sawin–Schildkraut–Zhelezov's refutation of the sum-product conjecture over ℝ (SumProduct.exists_totallyReal_discr_le). Removing it would require formalizing Martinet's tower construction (asymptotically-good totally real towers from class field theory / Golod–Shafarevich), not currently in Mathlib. The statement was reviewed for faithfulness against arXiv:2605.28781 Theorem 3.2.
Source: Theorem 3.2 of T. F. Bloom, W. Sawin, C. Schildkraut, D. Zhelezov, *The sum-product conjecture is false for real numbers*, arXiv:2605.28781. Lean axiom: https://github.com/mathlib-initiative/sum_product (SumProduct.exists_totallyReal_discr_le). Underlying result: J. Martinet, *Tours de corps de classes et estimations de discriminants*, Invent. Math. 44 (1978), 65–73.
Informal solution: Build asymptotically-good totally real towers via class field theory. Following Hajir–Maire / Martinet: start from a totally real base field admitting an infinite unramified pro-p tower (kept infinite by Golod–Shafarevich, r(G) > d(G)²/4 forcing the maximal unramified pro-p Galois group to be infinite), so the tower fields have constant root discriminant; pick a cofinal sequence of degrees d and take K to be the corresponding tower field, whose discriminant satisfies |Δ_K| = rd^d ≤ C^d for the absolute constant C = rd.
theorem exists_totallyReal_discr_le :
∃ C : ℝ, 0 < C ∧ ∀ N : ℕ, ∃ d : ℕ, N ≤ d ∧
∃ (K : Type) (_ : Field K) (_ : NumberField K) (_ : NumberField.IsTotallyReal K),
Module.finrank ℚ K = d ∧ |(NumberField.discr K : ℝ)| ≤ C ^ d := ⊢ ∃ C,
0 < C ∧
∀ (N : ℕ),
∃ d, N ≤ d ∧ ∃ K x, ∃ (x_1 : NumberField K) (_ : IsTotallyReal K), Module.finrank ℚ K = d ∧ |↑(discr K)| ≤ C ^ d
All goals completed! 🐙Mazur's torsion theorem
Submitter: Kim Morrison.
Notes: The torsion subgroup of E(ℚ) for an elliptic curve over ℚ is one of fifteen groups: ℤ/n (n ∈ {1,…,10,12}) or ℤ/2 × ℤ/2m (m ∈ {1,2,3,4}). Trusted helper IsInMazurClass (non-hole). Mathlib has Weierstrass curves and point groups but not Mazur's theorem (which uses the modular curves X₁(N)). Candidate from §139 of the Knill survey.
Source: B. Mazur, *Modular curves and the Eisenstein ideal*, Publ. IHÉS 47 (1977). Knill, *Some fundamental theorems in mathematics*, §139.
Informal solution: Mazur's deep theorem. A point of order N on E/ℚ gives a rational point on the modular curve X₁(N); Mazur showed X₁(N) has no non-cuspidal rational points for N = 11 or N ≥ 13 (via the Eisenstein-ideal analysis of J₀(N) and the formal-immersion method), and handled the ℤ/2×ℤ/2m families similarly with X₁(2,2m). Hence only the fifteen listed torsion structures occur. Far beyond current Mathlib.
theorem mazur_torsion (E : WeierstrassCurve ℚ) [E.IsElliptic] :
LeanEval.NumberTheory.MazurTorsion.IsInMazurClass ↥(AddCommGroup.torsion (WeierstrassCurve.Affine.Point E)) := E:WeierstrassCurve ℚinst✝:E.IsElliptic⊢ IsInMazurClass ↥(AddCommGroup.torsion (WeierstrassCurve.Affine.Point E))
All goals completed! 🐙Minkowski-Caratheodory theorem
mem_convexHull_finset_extremePoints_of_mem_compact_convex
Submitter: Kim Morrison.
Notes: Finite-dimensional compact convex sets are generated by their extreme points, with a finrank + 1 bound.
Source: Classical theorem in convex geometry.
Informal solution: Combine Krein-Milman with Caratheodory to represent each point as a convex combination of at most finrank + 1 extreme points.
theorem mem_convexHull_finset_extremePoints_of_mem_compact_convex {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E]
{s : Set E} {x : E}
(hscomp : IsCompact s)
(hsconv : Convex ℝ s)
(hx : x ∈ s) :
∃ t : Finset E,
(↑t : Set E) ⊆ s.extremePoints ℝ ∧
t.card ≤ Module.finrank ℝ E + 1 ∧
x ∈ convexHull ℝ (↑t : Set E) := E:Type u_1inst✝²:NormedAddCommGroup Einst✝¹:NormedSpace ℝ Einst✝:FiniteDimensional ℝ Es:Set Ex:Ehscomp:IsCompact shsconv:Convex ℝ shx:x ∈ s⊢ ∃ t, ↑t ⊆ extremePoints ℝ s ∧ t.card ≤ Module.finrank ℝ E + 1 ∧ x ∈ (convexHull ℝ) ↑t
All goals completed! 🐙Mergelyan's theorem
Submitter: Kim Morrison.
Notes: Mergelyan's theorem: if K ⊆ ℂ is compact with connected complement, then every function continuous on K and holomorphic on interior K is uniformly approximable on K by complex polynomials. §64 of Knill's 'Some Fundamental Theorems in Mathematics'.
Source: S. N. Mergelyan, *On the representation of functions by series of polynomials on closed sets*, Doklady Akad. Nauk SSSR 78 (1951), 405-408 (Russian). Listed as §64 (additional statement 4) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: A standard proof approximates f uniformly on K by an entire function, using Cauchy–Green / Pompeiu or related ∂̄ methods, and then approximates the entire function uniformly on the compact set K by Taylor polynomials.
theorem mergelyan (K : Set ℂ) (_hK : IsCompact K) (_hKc : IsConnected (Kᶜ))
(f : ℂ → ℂ) (_hfc : ContinuousOn f K) (_hfh : AnalyticOnNhd ℂ f (interior K))
(ε : ℝ) (_hε : 0 < ε) :
∃ p : ℂ[X], ∀ z ∈ K, ‖f z - p.eval z‖ < ε := K:Set ℂ_hK:IsCompact K_hKc:IsConnected Kᶜf:ℂ → ℂ_hfc:ContinuousOn f K_hfh:AnalyticOnNhd ℂ f (interior K)ε:ℝ_hε:0 < ε⊢ ∃ p, ∀ z ∈ K, ‖f z - Polynomial.eval z p‖ < ε
All goals completed! 🐙Milnor's exotic 7-sphere
Submitter: Kim Morrison.
Notes: Existence of a smooth 7-manifold homeomorphic but not diffeomorphic to 𝕊⁷. Recorded as `proof_wanted exists_homeomorph_isEmpty_diffeomorph_sphere_seven` in `Mathlib/Geometry/Manifold/PoincareConjecture.lean`. Milnor's 1956 discovery and the birth of differential topology as a distinct subject. The construction uses S³-bundles over S⁴; the non-diffeomorphism is detected by Milnor's λ-invariant built from the signature of an 8-manifold bounding the candidate (Hirzebruch's signature theorem + an integrality / mod-7 argument).
Source: J. Milnor, On manifolds homeomorphic to the 7-sphere, Ann. of Math. 64 (1956), 399-405. Recorded as a `proof_wanted` in Mathlib/Geometry/Manifold/PoincareConjecture.lean at rev 5450b53e5ddc.
Informal solution: Milnor's construction: for k ∈ ℤ let M_k → S⁴ be the S³-bundle whose Euler number is k+1 and first Pontryagin class is 2(2k+1). Each M_k carries a natural smooth structure and is, by direct construction of a Morse function with two critical points, homeomorphic to S⁷. To detect that M_k is not diffeomorphic to S⁷ for k ≢ 0 (mod 7), Milnor introduced the invariant λ(M) ∈ ℤ/7 by computing λ(M) = (2σ(W) − p₁(W)²) / 7 mod 7 for any smooth 8-manifold W with ∂W = M (Hirzebruch's signature theorem makes 2σ(W) − p₁(W)² divisible by 7); a Mayer-Vietoris / cobordism argument shows λ is well-defined and a diffeomorphism invariant. For the bundles M_k a direct calculation gives λ(M_k) ≡ k(k+1) mod 7, which is nonzero for k = 1 (and many other k); the corresponding M_1 is therefore an exotic 7-sphere.
theorem milnor_exotic_sphere_seven :
∃ (M : Type) (_ : TopologicalSpace M)
(_ : ChartedSpace (EuclideanSpace ℝ (Fin 7)) M)
(_ : IsManifold (𝓡 7) ∞ M)
(_homeo : M ≃ₜ sphere (0 : EuclideanSpace ℝ (Fin 8)) 1),
IsEmpty (M ≃ₘ⟮𝓡 7, 𝓡 7⟯ sphere (0 : EuclideanSpace ℝ (Fin 8)) 1) := ⊢ ∃ M x x_1, ∃ (_ : IsManifold (𝓡 7) ∞ M), ∃ _homeo, IsEmpty (M ≃ₘ⟮𝓡 7, 𝓡 7⟯ ↑(sphere 0 1))
All goals completed! 🐙Monge–Kantorovich existence theorem
Submitter: Kim Morrison.
Notes: §73 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The Monge–Kantorovich existence theorem states that for Polish probability spaces (X, P) and (Y, Q) and a continuous cost c : X × Y → [0, ∞], the functional π ↦ ∫ c dπ attains its minimum over all couplings of P and Q (the probability measures on X × Y with marginals P and Q). This is the basic existence result for optimal transport plans. Mathlib has the surrounding measure-theoretic and topological infrastructure — marginals, probability measures, weak convergence, Prokhorov-type compactness — but no dedicated coupling or Kantorovich-cost API and no theorem asserting existence of an optimal coupling.
Source: L. V. Kantorovich (1942), after G. Monge (1781). Listed as §73 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The set of couplings Π(P, Q) is nonempty (the product measure P ⊗ Q is a coupling), and it is tight and weakly closed: each marginal P, Q is tight by Prokhorov on a Polish space, tightness of the marginals gives tightness of the couplings, and the marginal constraints π.fst = P, π.snd = Q are preserved under weak limits, so by Prokhorov's theorem Π(P, Q) is weakly compact. The Kantorovich functional π ↦ ∫ c dπ is weakly lower semicontinuous because c is continuous and nonnegative (write c as an increasing limit of bounded continuous functions and use the portmanteau characterisation). A lower semicontinuous function on a (nonempty) compact set attains its infimum, giving an optimal coupling.
theorem monge_kantorovich_exists {X Y : Type*}
[TopologicalSpace X] [PolishSpace X] [MeasurableSpace X] [BorelSpace X]
[TopologicalSpace Y] [PolishSpace Y] [MeasurableSpace Y] [BorelSpace Y]
(P : Measure X) (Q : Measure Y)
[IsProbabilityMeasure P] [IsProbabilityMeasure Q]
(c : X × Y → ENNReal) (_hc : Continuous c) :
∃ π ∈ LeanEval.Analysis.Couplings P Q,
∀ π' ∈ LeanEval.Analysis.Couplings P Q, kantorovichCost c π ≤ kantorovichCost c π' := X:Type u_1Y:Type u_2inst✝⁹:TopologicalSpace Xinst✝⁸:PolishSpace Xinst✝⁷:MeasurableSpace Xinst✝⁶:BorelSpace Xinst✝⁵:TopologicalSpace Yinst✝⁴:PolishSpace Yinst✝³:MeasurableSpace Yinst✝²:BorelSpace YP:Measure XQ:Measure Yinst✝¹:IsProbabilityMeasure Pinst✝:IsProbabilityMeasure Qc:X × Y → ENNReal_hc:Continuous c⊢ ∃ π ∈ Couplings P Q, ∀ π' ∈ Couplings P Q, kantorovichCost c π ≤ kantorovichCost c π'
All goals completed! 🐙Moran's equality for affine-symmetric iterated function systems
Submitter: Kim Morrison.
Notes: For an iterated function system on ℝᵈ whose maps are affine with a common contraction factor λ ∈ (0,1) and orthogonal linear parts, satisfying the open set condition, the Hausdorff dimension of the attractor equals the similarity dimension −log n / log λ. The trusted helpers (IsAttractor, IsAffineSymmetricIFS, OpenSetCondition) are non-holes. Mathlib has dimH, μH[d], and ContractingWith but no iterated function systems / Hutchinson operator / attractor / similarity dimension. Candidate from §105 of the Knill survey.
Source: P. A. P. Moran, *Additive functions of intervals and Hausdorff measure*, Proc. Cambridge Philos. Soc. 42 (1946); J. E. Hutchinson, *Fractals and self similarity*, Indiana Univ. Math. J. 30 (1981). Knill, *Some fundamental theorems in mathematics*, §105.
Informal solution: Two inequalities. Upper bound (dimH S ≤ s with ∑ λˢ = n·λˢ = 1, i.e. s = −log n/log λ): cover S by the n^k cylinder images of diameter λᵏ·diam(S) under length-k words, giving ∑ diam^s = n^k·(λᵏ diam)^s = (n λˢ)^k diam^s = diam^s bounded, so the s-dimensional Hausdorff measure is finite and dimH S ≤ s. Lower bound (the open set condition): use the OSC to build a mass distribution (the natural self-similar measure giving each length-k cylinder mass n^{-k}) and apply the mass distribution principle — bounded overlap from the disjoint open sets fᵢ(G) gives μ(B_r) ≤ C r^s, forcing μH^s(S) > 0 and dimH S ≥ s. Hence equality.
theorem moran_equality_affine {d n : ℕ} (hn : 1 ≤ n)
(f : Fin n → EuclideanSpace ℝ (Fin d) → EuclideanSpace ℝ (Fin d)) (lam : ℝ)
(h_aff : LeanEval.Dynamics.IsAffineSymmetricIFS f lam)
(h_osc : LeanEval.Dynamics.OpenSetCondition f)
{S : Set (EuclideanSpace ℝ (Fin d))} (hS : LeanEval.Dynamics.IsAttractor f S) :
dimH S = ENNReal.ofReal (- Real.log n / Real.log lam) := d:ℕn:ℕhn:1 ≤ nf:Fin n → EuclideanSpace ℝ (Fin d) → EuclideanSpace ℝ (Fin d)lam:ℝh_aff:IsAffineSymmetricIFS f lamh_osc:OpenSetCondition fS:Set (EuclideanSpace ℝ (Fin d))hS:IsAttractor f S⊢ dimH S = ENNReal.ofReal (-Real.log ↑n / Real.log lam)
All goals completed! 🐙Morley's categoricity theorem
Submitter: A. M. Berns.
Notes: A complete theory in a countable language with only infinite models that is categorical in some uncountable cardinal is categorical in every uncountable cardinal.
Source: M. Ramsey, *Morley's Categoricity Theorem* (UChicago VIGRE REU 2010), Corollary 7.3. https://www.math.uchicago.edu/~may/VIGRE/VIGRE2010/REUPapers/RamseyN.pdf
Informal solution: Show that categoricity in an uncountable cardinal forces the theory to be ω-stable, and then use Vaughtian pairs to prove that any two models of the same uncountable size are isomorphic and categoricity transfers to all uncountable cardinals.
theorem morley_categoricity_theorem (L : FirstOrder.Language.{0, 0}) (hL : L.card ≤ ℵ₀)
(T : L.Theory) (hT : T.IsComplete)
(hInf : ∀ M : FirstOrder.Language.Theory.ModelType.{0, 0, 0} T, Infinite M)
{κ : Cardinal.{0}} (hκ : ℵ₀ < κ) (hcat : κ.Categorical T)
{μ : Cardinal.{0}} (hμ : ℵ₀ < μ) :
μ.Categorical T := L:FirstOrder.LanguagehL:L.card ≤ ℵ₀T:L.TheoryhT:T.IsCompletehInf:∀ (M : T.ModelType), Infinite ↑Mκ:Cardinal.{0}hκ:ℵ₀ < κhcat:κ.Categorical Tμ:Cardinal.{0}hμ:ℵ₀ < μ⊢ μ.Categorical T
All goals completed! 🐙Morley's trisector theorem
Submitter: Kim Morrison.
Notes: The triangle formed by the adjacent angle-trisectors of any nondegenerate Euclidean triangle is equilateral. Trusted helpers (IsEquilateralTriple, LiesInTriangle, IsMorleyConfiguration) are non-holes. Mathlib has Euclidean angles but not Morley's theorem. Candidate from §162 of the Knill survey.
Source: F. Morley (c. 1899). Knill, §162.
Informal solution: Unavailable.
theorem morley_theorem (A B C P Q R : LeanEval.Geometry.Morley.Plane)
(h : LeanEval.Geometry.Morley.IsMorleyConfiguration A B C P Q R) :
LeanEval.Geometry.Morley.IsEquilateralTriple P Q R := A:PlaneB:PlaneC:PlaneP:PlaneQ:PlaneR:Planeh:IsMorleyConfiguration A B C P Q R⊢ IsEquilateralTriple P Q R
All goals completed! 🐙Morse inequalities
Submitter: Kim Morrison.
Notes: §40 of Knill's 'Some Fundamental Theorems in Mathematics' (Marston Morse, 1934). For a Morse function f on a closed smooth finite-dimensional manifold M, ∑_{j≤k}(−1)^{k−j} c_j(f) ≥ ∑_{j≤k}(−1)^{k−j} b_j(M) for every k. Mathlib has the smooth-manifold framework, mfderiv, higher Fréchet derivatives, and singularHomologyFunctor but no Morse functions, Morse index, critical-point counts, Betti numbers as a named definition, or the Morse inequalities. The Challenge ships seven helper definitions (IsCriticalPoint, localHessian, IsNondegenerateCritical, IsMorseFunction, morseIndex, morseCount, bettiNumber, alternatingPartialSum).
Source: M. Morse, The Calculus of Variations in the Large, AMS Colloq. Publ. 18 (1934). Listed as §40 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Strong Morse inequality via the Morse-Smale complex: order the critical points by increasing critical value t_1 < t_2 < … < t_N and consider the sublevel sets M_t = f⁻¹((−∞,t]). Crossing a critical value attaches a k-cell where k is the Morse index, so M_t is obtained from M_{t−} by attaching one k-cell per index-k critical point at level t (Morse lemma + handle attachment). This gives a CW structure on M with c_k cells in dimension k, hence a chain complex C_k = ℤ^{c_k} computing H_k(M; ℤ). The strong inequality follows from the rank-nullity-style relation rank H_k = c_k − rank ∂_{k+1} − rank ∂_k applied to alternating partial sums, combined with subadditivity of rank under boundary maps.
theorem morse_inequality {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E]
{H : Type*} [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [I.Boundaryless]
{M : Type} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I ∞ M]
[CompactSpace M] (f : M → ℝ) (_hf : LeanEval.Geometry.MorseInequalities.IsMorseFunction I f) (k : ℕ) :
LeanEval.Geometry.MorseInequalities.alternatingPartialSum (bettiNumber M) k ≤
LeanEval.Geometry.MorseInequalities.alternatingPartialSum (morseCount I f) k := E:Type u_1inst✝⁸:NormedAddCommGroup Einst✝⁷:NormedSpace ℝ Einst✝⁶:FiniteDimensional ℝ EH:Type u_2inst✝⁵:TopologicalSpace HI:ModelWithCorners ℝ E Hinst✝⁴:I.BoundarylessM:Typeinst✝³:TopologicalSpace Minst✝²:ChartedSpace H Minst✝¹:IsManifold I ∞ Minst✝:CompactSpace Mf:M → ℝ_hf:IsMorseFunction I fk:ℕ⊢ alternatingPartialSum (bettiNumber M) k ≤ alternatingPartialSum (morseCount I f) k
All goals completed! 🐙Mountain Pass Theorem (Ambrosetti–Rabinowitz 1973)
Submitter: Kim Morrison.
Notes: A C¹ functional f on a real Banach space E satisfying the Palais–Smale condition and having mountain-range geometry separating two points a, b — `f(a) = 0`, `f ≥ ε > 0` on the sphere S_r(a), `r < ‖b − a‖`, and `f(b) ≤ 0` — admits a critical point at the mini-max level `c = inf_γ sup_t f(γ t)` (over all continuous paths γ from a to b), with `c ≥ ε`. The faithful encoding fixes Knill's slip `|b| > ε` (the sphere has radius r, not ε) to the standard `r < ‖b − a‖`. The mini-max level is encoded as `⨅ γ : Path a b, ⨆ t : I, f (γ t)`. The theorem is listed as §119 in Knill's *Some Fundamental Theorems in Mathematics*.
Source: A. Ambrosetti and P.H. Rabinowitz, 'Dual variational methods in critical point theory and applications', J. Funct. Anal. 14 (1973) 349–381. Listed as §119 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classical proof is by **contradiction via the deformation lemma / pseudo-gradient flow**. Suppose the mini-max level c has no critical point at value c. The (locally Lipschitz) pseudo-gradient field W on `{x : f'(x) ≠ 0}` satisfies `‖W(x)‖ ≤ 2 ‖f'(x)‖` and `⟨f'(x), W(x)⟩ ≥ ‖f'(x)‖²`. By Palais–Smale, `‖f'(x)‖` is bounded away from 0 on the sublevel `{f ≤ c + δ} \ {f ≤ c − δ}` for δ small enough. Integrating the pseudo-gradient flow `dη/dt = −W(η)` for time T moves the sublevel `{f ≤ c + δ}` into `{f ≤ c − δ}` (the deformation lemma). Choose a path γ with sup_t f(γ t) ≤ c + δ, using the definition of c as an infimum; the deformation produces a new path with sup ≤ c − δ, contradicting the same definition. Therefore some critical point lies at value c. The mountain-range hypothesis forces `c ≥ ε` because every path from a to b must cross the sphere S_r(a), where `f ≥ ε`. Mathlib has the C¹/Fréchet calculus, `Path` between two endpoints, Banach spaces, and conditionally-complete-lattice infimum, but no Palais–Smale condition, no pseudo-gradient field, no deformation lemma, no mini-max critical-value framework.
theorem mountain_pass (f : E → ℝ) (_hf : ContDiff ℝ 1 f) (_hps : LeanEval.Analysis.MountainPassProblem.PalaisSmale f)
{a b : E} {ε r : ℝ} (_hmr : LeanEval.Analysis.MountainPassProblem.MountainRange f a b ε r) :
∃ x : E, LeanEval.Analysis.MountainPassProblem.IsCriticalPoint f x ∧
f x = mountainPassLevel f a b ∧ ε ≤ mountainPassLevel f a b := E:Type u_1inst✝²:NormedAddCommGroup Einst✝¹:NormedSpace ℝ Einst✝:CompleteSpace Ef:E → ℝ_hf:ContDiff ℝ 1 f_hps:PalaisSmale fa:Eb:Eε:ℝr:ℝ_hmr:MountainRange f a b ε r⊢ ∃ x, IsCriticalPoint f x ∧ f x = mountainPassLevel f a b ∧ ε ≤ mountainPassLevel f a b
All goals completed! 🐙Cayley graph connected iff generators generate the group
mulCayley_connected_iff_closure_eq_top
Submitter: Kim Morrison.
Notes: A foundational result in geometric group theory using the newly defined Cayley graph. Connectivity of the Cayley graph is equivalent to the generating set S generating G as a group.
Source: A. Cayley, On the theory of groups, as depending on the symbolic equation θ^n = 1, 1878.
Informal solution: Forward: if connected, any g ∈ G is reached from 1 by a path, which corresponds to a product of generators. Reverse: if S generates, any g is a product of generators, giving a path from 1 to g.
theorem mulCayley_connected_iff_closure_eq_top {G : Type*} [Group G]
(S : Set G) :
(SimpleGraph.mulCayley S).Connected ↔ Subgroup.closure S = ⊤ := G:Type u_1inst✝:Group GS:Set G⊢ (SimpleGraph.mulCayley S).Connected ↔ Subgroup.closure S = ⊤
All goals completed! 🐙Nash equilibrium existence theorem
Submitter: Kim Morrison.
Notes: §33 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' (the section's boxed main theorem). Every finite n-player game in mixed strategies admits at least one Nash equilibrium. Mathlib has stdSimplex ℝ S (the natural model of a mixed strategy) and finite-sum/product machinery but no game theory at all — no Mathlib/GameTheory/ module, and grep for nash/mixed.strategy/best.response returns nothing relevant. No formalization of Nash equilibrium existence was found in any major proof assistant.
Source: J. F. Nash, Equilibrium points in n-person games, Proc. Nat. Acad. Sci. U.S.A. 36 (1950), 48-49; Non-cooperative games, Ann. of Math. 54 (1951), 286-295. Listed as §33 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Nash's 1950 proof (via Brouwer): define the best-response function r : Δ → Δ on the product of mixed-strategy simplices Δ = ∏ᵢ Δ(Sᵢ), where r(σ)ᵢ(sᵢ) = (σᵢ(sᵢ) + max(0, gain_i(σ, sᵢ))) / (normalization), and gain_i(σ, sᵢ) is the improvement player i would get by playing the pure strategy sᵢ against σ_{-i}. r is continuous and Δ is nonempty compact convex; Brouwer gives a fixed point σ*, and a short calculation shows σ* must be a Nash equilibrium (the only fixed points of r are exactly the equilibria). Nash's 1951 proof uses Kakutani directly: the best-response correspondence (set-valued, not single-valued) is upper-hemicontinuous with nonempty convex values; apply Kakutani to get a fixed point.
theorem nash_equilibrium_exists {n : ℕ} {S : Fin n → Type*}
[∀ i, Fintype (S i)] [∀ i, Nonempty (S i)]
(u : Fin n → LeanEval.GameTheory.StrategyProfile n S → ℝ) :
∃ σ : ∀ i, S i → ℝ, LeanEval.GameTheory.IsNashEquilibrium u σ := n:ℕS:Fin n → Type u_1inst✝¹:(i : Fin n) → Fintype (S i)inst✝:∀ (i : Fin n), Nonempty (S i)u:Fin n → StrategyProfile n S → ℝ⊢ ∃ σ, IsNashEquilibrium u σ
All goals completed! 🐙Neukirch–Uchida theorem
Submitter: Junyan Xu.
Notes: Unavailable.
Source: Jürgen Neukirch, Alexander Schmidt, Kay Wingberg. *Cohomology of Number Fields*, Theorem 12.2.1.
Informal solution: Unavailable.
theorem neukirch_uchida {K₁ K₂ K₁' K₂' : Type*} [Field K₁] [Field K₂] [Field K₁'] [Field K₂']
[NumberField K₁] [NumberField K₂] [Algebra K₁ K₁'] [Algebra K₂ K₂'] [IsSepClosure K₁ K₁']
[IsSepClosure K₂ K₂'] (ϕ : Gal(K₁'/K₁) ≃* Gal(K₂'/K₂)) (he : IsHomeomorph ϕ) :
∃! σ : K₂' ≃+* K₁', (algebraMap K₂ K₂').range.map σ.toRingHom = (algebraMap K₁ K₁').range ∧
∀ g : Gal(K₁'/K₁), ϕ g = σ.trans (g.toRingEquiv.trans σ.symm) := K₁:Type u_1K₂:Type u_2K₁':Type u_3K₂':Type u_4inst✝⁹:Field K₁inst✝⁸:Field K₂inst✝⁷:Field K₁'inst✝⁶:Field K₂'inst✝⁵:NumberField K₁inst✝⁴:NumberField K₂inst✝³:Algebra K₁ K₁'inst✝²:Algebra K₂ K₂'inst✝¹:IsSepClosure K₁ K₁'inst✝:IsSepClosure K₂ K₂'ϕ:Gal(K₁'/K₁) ≃* Gal(K₂'/K₂)he:IsHomeomorph ⇑ϕ⊢ ∃! σ,
Subring.map σ.toRingHom (algebraMap K₂ K₂').range = (algebraMap K₁ K₁').range ∧
∀ (g : Gal(K₁'/K₁)), (ϕ g).toRingEquiv = σ.trans (g.toRingEquiv.trans σ.symm)
All goals completed! 🐙Novikov's theorem: the word problem is undecidable for finitely presented groups
Submitter: Kim Morrison.
Notes: There exists a finitely presented group with undecidable word problem. Concretely: some n and a finite relator set rels ⊆ FreeGroup (Fin n) for which the canonical surjection `PresentedGroup.mk rels` admits no `ComputablePred` decision procedure for `w ↦ φ (FreeGroup.mk w) = 1`. Pure existence of a pathological finite presentation; the negation (every finite presentation has solvable word problem) was disproved by Novikov 1955 and independently by Boone 1958. §122 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: P.S. Novikov, 'On the algorithmic unsolvability of the word problem in group theory', Trudy Mat. Inst. Steklov. 44 (1955) 1–143 (Russian); W.W. Boone, 'The word problem', Ann. of Math. (2) 70 (1959) 207–265 (announced 1958). §122 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Novikov and Boone construct a finite presentation of a group whose word problem encodes the halting problem of a universal Turing machine. (1) Encode a Turing machine M whose halting problem is undecidable as a finitely presented **semigroup**: a fixed list of rewriting rules whose word problem mirrors halting. (2) Lift the semigroup presentation to a finitely presented **group** by Boone's machinery using HNN extensions and Britton's lemma, preserving the equivalence: the question 'does M halt on input x' becomes 'does the word w_x equal 1 in the constructed group G'. (3) Since the halting problem is undecidable, so is the word problem of G; G is finitely presented by construction. Mathlib v4.30 has `FreeGroup`, `PresentedGroup`, `Group.IsFinitelyPresented`, HNN extensions (`Mathlib/GroupTheory/HNNExtension.lean`, including Britton's lemma as `HNNExtension.ReducedWord.toList_eq_nil_of_mem_of_range`), and the full `ComputablePred` / `Computable` / `Partrec` / `Nat.Partrec.Code` stack, but no Turing-machine-to-finitely-presented-group simulation and no Novikov / Boone unsolvability result.
theorem novikov_unsolvable :
∃ (n : ℕ) (rels : Set (FreeGroup (Fin n))),
rels.Finite ∧ ¬ LeanEval.GroupTheory.NovikovUnsolvableProblem.WordProblemSolvable (PresentedGroup.mk rels) := ⊢ ∃ n rels, rels.Finite ∧ ¬WordProblemSolvable (PresentedGroup.mk rels)
All goals completed! 🐙Oppenheim's inequality for Hadamard products
Submitter: Kim Morrison.
Notes: Oppenheim's 1930 inequality: for PSD matrices A, B, det(A ⊙ B) ≥ det(A) · ∏ᵢ Bᵢᵢ. Uses the Schur product theorem (newly formalized) as a key ingredient.
Source: I. Schur, Bemerkungen zur Theorie der beschränkten Bilinearformen, 1911; A. Oppenheim, Inequalities connected with definite Hermitian forms, 1930.
Informal solution: Use induction on the matrix size, extracting a Schur complement at each step and applying the Schur product theorem to bound the determinant.
theorem oppenheim_inequality {n : Type*} [Fintype n] [DecidableEq n]
{A B : Matrix n n ℝ} (hA : A.PosSemidef) (hB : B.PosSemidef) :
A.det * ∏ i, B i i ≤ (A ⊙ B).det := n:Type u_1inst✝¹:Fintype ninst✝:DecidableEq nA:Matrix n n ℝB:Matrix n n ℝhA:A.PosSemidefhB:B.PosSemidef⊢ A.det * ∏ i, B i i ≤ (A ⊙ B).det
All goals completed! 🐙Ornstein–Weiss ℤᵈ Rokhlin lemma
Submitter: Kim Morrison.
Notes: §109 of Knill's 'Some Fundamental Theorems in Mathematics' (additional statement; the boxed main theorem is the classical Rokhlin lemma). The multidimensional generalization: for every free measure-preserving ℤᵈ-action T on a standard Borel probability space, every box size N ≥ 1, and every ε > 0, there is a measurable base B such that the translates T v '' B for v ∈ [0, N)ᵈ are pairwise disjoint with measure ≥ 1 - ε. Three hypotheses beyond the classical lemma: 1 ≤ d (rules out d = 0 degeneracy); the identity axiom T 0 = id (homomorphism alone only forces T 0 idempotent); [StandardBorelSpace Ω] (rules out the countable-cocountable σ-algebra defect). Mathlib has MeasurePreserving, IsProbabilityMeasure, Set.PairwiseDisjoint, Fintype.piFinset, Finset.Ico, StandardBorelSpace, but no Ornstein–Weiss lemma, no free measure-preserving ℤᵈ-actions, no multidimensional Rokhlin towers. The Challenge ships two small helper defs (IsFreeAction, boxShape).
Source: D. S. Ornstein and B. Weiss, *Entropy and isomorphism theorems for actions of amenable groups*, J. Anal. Math. 48 (1987), 1-141 — Theorem 5.2 establishes the multidimensional (and amenable-group) Rokhlin lemma. Listed as §109 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). No formalization found in any major prover.
Informal solution: Standard proof reduces to the one-dimensional Rokhlin lemma by induction on d using the quasi-tiling lemma of Ornstein–Weiss: every Følner set in ℤᵈ can be ε-quasi-tiled by finitely many translates of cubes [0, N)ᵈ, so a one-dimensional skyscraper over a transversal of one direction can be folded into a d-dimensional Rokhlin tower with arbitrarily small remainder.
theorem ornstein_weiss_rokhlin {Ω : Type*} [MeasurableSpace Ω]
[StandardBorelSpace Ω]
{d : ℕ} (_hd : 1 ≤ d) (μ : Measure Ω) [IsProbabilityMeasure μ]
(T : (Fin d → ℤ) → Ω → Ω)
(_hid : ∀ x, T 0 x = x)
(_hT : ∀ v, MeasurePreserving (T v) μ μ)
(_hgrp : ∀ u v x, T (u + v) x = T u (T v x))
(_hfree : LeanEval.Dynamics.IsFreeAction μ T)
(N : ℕ) (_hN : 1 ≤ N) {ε : ENNReal} (_hε : 0 < ε) :
∃ B : Set Ω,
MeasurableSet B ∧
((boxShape d N : Finset (Fin d → ℤ)) : Set (Fin d → ℤ)).PairwiseDisjoint
(fun v => T v '' B) ∧
μ (⋃ v ∈ boxShape d N, T v '' B) ≥ 1 - ε := Ω:Type u_1inst✝²:MeasurableSpace Ωinst✝¹:StandardBorelSpace Ωd:ℕ_hd:1 ≤ dμ:Measure Ωinst✝:IsProbabilityMeasure μT:(Fin d → ℤ) → Ω → Ω_hid:∀ (x : Ω), T 0 x = x_hT:∀ (v : Fin d → ℤ), MeasurePreserving (T v) μ μ_hgrp:∀ (u v : Fin d → ℤ) (x : Ω), T (u + v) x = T u (T v x)_hfree:IsFreeAction μ TN:ℕ_hN:1 ≤ Nε:ENNReal_hε:0 < ε⊢ ∃ B, MeasurableSet B ∧ ((↑(boxShape d N)).PairwiseDisjoint fun v => T v '' B) ∧ μ (⋃ v ∈ boxShape d N, T v '' B) ≥ 1 - ε
All goals completed! 🐙Independence of the parallel postulate
parallel_postulate_independent
Submitter: Kim Morrison.
Notes: Theorem #12 on Freek Wiedijk's 'Formalizing 100 Theorems' list (https://www.cs.ru.nl/~freek/100/). Euclid's parallel postulate is independent of the remaining axioms of plane geometry. Stated via Tarski's axiomatization: the `TarskiAbsolute` class bundles betweenness and congruence with axioms A1-A9 and the continuity axiom A11, the Euclidean axiom A10 is a separate Prop, and independence is the conjunction of two existentials (a model satisfying A10, a model refuting it). Cross-checked against the two existing formalizations on Freek's list: John Harrison's HOL Light (Multivariate/tarski.ml + 100/independence.ml) and Tim Makarios's Isabelle/AFP entry Tarskis_Geometry; axioms A1-A10 match Harrison's TARSKI_AXIOM_n character-for-character and A11 is his second-order continuity axiom.
Source: Independence of Euclid's parallel postulate; the hyperbolic-plane models are due to E. Beltrami (1868) and F. Klein (1871). Tarski's axiomatization: W. Schwabhäuser, W. Szmielew, A. Tarski, Metamathematische Methoden in der Geometrie, Springer (1983). Formalized in HOL Light by John Harrison and in Isabelle by Tim Makarios (T.J.M. Makarios, A Mechanical Verification of the Independence of Tarski's Euclidean Axiom, MSc thesis, Victoria University of Wellington, 2012; Isabelle/AFP entry Tarskis_Geometry).
Informal solution: Exhibit two models of `TarskiAbsolute` (axioms A1-A9, A11). For the Euclidean existential, take the real coordinate plane ℝ² with `B` the metric betweenness and `C` segment-length equality; it satisfies all of A1-A11 including the Euclidean axiom A10. For the non-Euclidean existential, take the Klein-Beltrami disk model of the hyperbolic plane: points are the open unit disk, betweenness and congruence are defined from cross-ratios / the projective structure; it satisfies A1-A9 and A11 but refutes A10 (through a point not on a line there is more than one parallel). Verifying the axioms for the Klein model is the substantial part — Makarios's Isabelle development and Harrison's HOL Light file both carry it out in full.
theorem parallel_postulate_independent :
(∃ (M : Type) (T : LeanEval.Geometry.TarskiAbsolute M), LeanEval.Geometry.Euclidean M T) ∧
(∃ (M : Type) (T : LeanEval.Geometry.TarskiAbsolute M), ¬ LeanEval.Geometry.Euclidean M T) := ⊢ (∃ M T, Euclidean M T) ∧ ∃ M T, ¬Euclidean M T
All goals completed! 🐙Pascal's theorem
Submitter: Kim Morrison.
Notes: Six distinct points on a non-singular conic determine three collinear intersection points Aᵢ Bⱼ ∩ Aⱼ Bᵢ. Trusted helpers (SamePoint, OnConic, meet, Collinear3) are non-holes, built on the cross product ⨯₃. Mathlib has the projective vocabulary but not Pascal's theorem. Candidate from §146 of the Knill survey.
Source: B. Pascal, *Essay pour les coniques* (1640). Knill, *Some fundamental theorems in mathematics*, §146.
Informal solution: Project-and-compute, or the classical synthetic proof. Algebraically: choose homogeneous coordinates; the conic is xᵀMx=0. The three meet points' collinearity is a polynomial identity in the six points' coordinates that holds on the conic — provable by a Gröbner/resultant computation, or synthetically via the converse of Menelaus applied to the hexagon, or as the d=2 Cayley–Bacharach instance (a cubic through 8 of the 9 base points of two degenerate cubics passes through the 9th). None of this packaging is in Mathlib.
theorem pascal (M : Matrix (Fin 3) (Fin 3) ℝ) (hMsymm : M.IsSymm) (hMdet : M.det ≠ 0)
(a₁ a₂ a₃ b₁ b₂ b₃ : Fin 3 → ℝ)
(ha₁ : a₁ ≠ 0) (ha₂ : a₂ ≠ 0) (ha₃ : a₃ ≠ 0)
(hb₁ : b₁ ≠ 0) (hb₂ : b₂ ≠ 0) (hb₃ : b₃ ≠ 0)
(hdist : [a₁, a₂, a₃, b₁, b₂, b₃].Pairwise (fun v w => ¬ LeanEval.Geometry.PascalPappus.SamePoint v w))
(hA₁ : LeanEval.Geometry.PascalPappus.OnConic M a₁) (hA₂ : LeanEval.Geometry.PascalPappus.OnConic M a₂) (hA₃ : LeanEval.Geometry.PascalPappus.OnConic M a₃)
(hB₁ : LeanEval.Geometry.PascalPappus.OnConic M b₁) (hB₂ : LeanEval.Geometry.PascalPappus.OnConic M b₂) (hB₃ : LeanEval.Geometry.PascalPappus.OnConic M b₃) :
LeanEval.Geometry.PascalPappus.Collinear3 (LeanEval.Geometry.PascalPappus.meet a₁ b₂ a₂ b₁) (LeanEval.Geometry.PascalPappus.meet a₁ b₃ a₃ b₁) (LeanEval.Geometry.PascalPappus.meet a₂ b₃ a₃ b₂) := M:Matrix (Fin 3) (Fin 3) ℝhMsymm:M.IsSymmhMdet:M.det ≠ 0a₁:Fin 3 → ℝa₂:Fin 3 → ℝa₃:Fin 3 → ℝb₁:Fin 3 → ℝb₂:Fin 3 → ℝb₃:Fin 3 → ℝha₁:a₁ ≠ 0ha₂:a₂ ≠ 0ha₃:a₃ ≠ 0hb₁:b₁ ≠ 0hb₂:b₂ ≠ 0hb₃:b₃ ≠ 0hdist:List.Pairwise (fun v w => ¬SamePoint v w) [a₁, a₂, a₃, b₁, b₂, b₃]hA₁:OnConic M a₁hA₂:OnConic M a₂hA₃:OnConic M a₃hB₁:OnConic M b₁hB₂:OnConic M b₂hB₃:OnConic M b₃⊢ Collinear3 (meet a₁ b₂ a₂ b₁) (meet a₁ b₃ a₃ b₁) (meet a₂ b₃ a₃ b₂)
All goals completed! 🐙Pell solutions are convergents of √d
Submitter: Kim Morrison.
Notes: §84 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. Lagrange's theorem: if d is a positive squarefree integer and (x, y) is a positive solution of Pell's equation x² − d y² = 1, then x/y occurs as a convergent of the regular continued fraction of √d, connecting the arithmetic of Pell solutions with the continued-fraction expansion of a quadratic irrational. Mathlib has APIs for Pell solutions (Pell.Solution₁) and for continued fractions (GenContFract.of, GenContFract.convs) but currently lacks any theorem relating positive Pell solutions to convergents of √d.
Source: J.-L. Lagrange (1770). Listed as §84 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Expand √d as a regular continued fraction; for squarefree d ≥ 2 this is infinite with convergents pₙ/qₙ satisfying |pₙ² − d qₙ²| < 1 + 2√d, so the values pₙ² − d qₙ² are bounded and some value v is attained infinitely often. A positive Pell solution (x, y) with x² − d y² = 1 is a best rational approximation of √d from the relevant side: |x/y − √d| < 1/(2y²), and by Legendre's theorem (mathlib's Real.exists_convs_eq_rat-style best-approximation criterion) any rational p/q in lowest terms with |p/q − √d| < 1/(2q²) is a convergent of √d. Since x² − d y² = 1 gives gcd x y = 1 and the required approximation bound, x/y = convs n for some n.
theorem pell_solution_is_convergent (d : ℤ) (_hd : Squarefree d) (_hd0 : 0 < d)
(x y : ℤ) (_hx : 0 < x) (_hy : 0 < y)
(_hsol : x ^ 2 - d * y ^ 2 = 1) :
∃ n : ℕ, (GenContFract.of (Real.sqrt (d : ℝ))).convs n = (x : ℝ) / (y : ℝ) := d:ℤ_hd:Squarefree d_hd0:0 < dx:ℤy:ℤ_hx:0 < x_hy:0 < y_hsol:x ^ 2 - d * y ^ 2 = 1⊢ ∃ n, (GenContFract.of √↑d).convs n = ↑x / ↑y
All goals completed! 🐙A competition programming problem about permuting a permutation to be unimodal
Submitter: Julia M. Himmel.
Notes: Unavailable.
Source: NWERC 2025 Problem G, see https://2025.nwerc.eu/problem-set.pdf
Informal solution: See https://2025.nwerc.eu/solutions.pdf for a sketch of the correctness, which goes in two steps: construct a quadratic-time dynamic programming solution, then efficiently evaluate that in O(n log n). The hard part is showing the correspondence between LISs of prefixes of the constructed sequence and values of the DP.
theorem minRearrange_correct {arr : Array Nat} :
arr.Perm (1...=arr.size).toArray →
(∃ (x : Array Nat) (hx : x.Perm (1...=arr.size).toArray), LeanEval.ProgramVerification.Unimodal x ∧ LeanEval.ProgramVerification.differences (Vector.mk x (arr:Array Natx:Array Nathx:x.Perm (1...=arr.size).toArray⊢ x.size = arr.size All goals completed! 🐙)) arr.toVector = LeanEval.ProgramVerification.minRearrange arr) ∧
(∀ (x : Array Nat) (hx : x.Perm (1...=arr.size).toArray), LeanEval.ProgramVerification.Unimodal x → LeanEval.ProgramVerification.minRearrange arr ≤ LeanEval.ProgramVerification.differences (Vector.mk x (arr:Array Natx:Array Nathx:x.Perm (1...=arr.size).toArray⊢ x.size = arr.size All goals completed! 🐙)) arr.toVector) := arr:Array Nat⊢ arr.Perm (1...=arr.size).toArray →
(∃ x hx, Unimodal x ∧ differences (Vector.mk x ⋯) arr.toVector = minRearrange arr) ∧
∀ (x : Array Nat) (hx : x.Perm (1...=arr.size).toArray),
Unimodal x → minRearrange arr ≤ differences (Vector.mk x ⋯) arr.toVector
All goals completed! 🐙Pesin entropy formula (symplectic surface case)
Submitter: Kim Morrison.
Notes: Pesin (1977), symplectic surface specialisation of Lai-Sang Young: for an ergodic surface diffeomorphism with dim(μ) = 2 and symmetric averaged exponents (∫λ₁ = −∫λ₂), h_μ(T) = ∫λ₁. The symplectic/volume-preserving case is encoded here via dimMeasure μ = 2 and the exponent-symmetry hypothesis (a consequence-form, not a full symplectic-derivative hypothesis package). Shares the §103 trusted helpers (totalized sSup/limsup; genuine in the compact-C² regime). Not in Mathlib (no KS entropy, no Lyapunov exponents, no Pesin formula). Candidate from §103 of the Knill survey.
Source: Ya. B. Pesin, *Characteristic Lyapunov exponents and smooth ergodic theory*, Russian Math. Surveys 32 (1977). Knill, *Some fundamental theorems in mathematics*, §103.
Informal solution: Pesin's formula h_μ = ∑ λⱼ⁺ for smooth invariant measures absolutely continuous w.r.t. volume. In the surface case with dim(μ) = 2 (full dimension forces μ ≪ volume) and λ₁ = −λ₂, the entropy equals the single positive exponent λ₁. Proof: the Margulis–Ruelle inequality gives h_μ ≤ λ₁⁺; the reverse inequality (the substantive half) uses absolute continuity of the unstable foliation / the SRB property to show entropy is at least the unstable expansion rate. Here it is obtained as the dim(μ)=2 specialisation of the Lai-Sang Young formula. Requires Pesin theory absent from Mathlib.
theorem pesin_formula (T T_inv : LeanEval.Dynamics.EucPlane → LeanEval.Dynamics.EucPlane)
(hT_smooth : ContDiff ℝ 2 T)
(hT_inv_smooth : ContDiff ℝ 2 T_inv)
(hT_left : Function.LeftInverse T_inv T)
(hT_right : Function.RightInverse T_inv T)
(K : Set LeanEval.Dynamics.EucPlane)
(hK_compact : IsCompact K)
(hK_inv : T '' K = K)
(μ : Measure LeanEval.Dynamics.EucPlane) [IsProbabilityMeasure μ]
(hμ_supp : μ Kᶜ = 0)
(hμ_pres : MeasurePreserving T μ μ)
(hμ_erg : Ergodic T μ)
(hμ_dim : dimMeasure μ = 2)
(hlam_sym : ∫ x, lyapunovUpperAt T x ∂μ
= -∫ x, lyapunovLowerAt T x ∂μ) :
kolmogorovSinaiEntropy μ T = ∫ x, lyapunovUpperAt T x ∂μ := T:EucPlane → EucPlaneT_inv:EucPlane → EucPlanehT_smooth:ContDiff ℝ 2 ThT_inv_smooth:ContDiff ℝ 2 T_invhT_left:Function.LeftInverse T_inv ThT_right:Function.RightInverse T_inv TK:Set EucPlanehK_compact:IsCompact KhK_inv:T '' K = Kμ:Measure EucPlaneinst✝:IsProbabilityMeasure μhμ_supp:μ Kᶜ = 0hμ_pres:MeasurePreserving T μ μhμ_erg:Ergodic T μhμ_dim:dimMeasure μ = 2hlam_sym:∫ (x : EucPlane), lyapunovUpperAt T x ∂μ = -∫ (x : EucPlane), lyapunovLowerAt T x ∂μ⊢ kolmogorovSinaiEntropy μ T = ∫ (x : EucPlane), lyapunovUpperAt T x ∂μ
All goals completed! 🐙pi_1 of the circle is Z
Submitter: Kim Morrison.
Notes: Computes the fundamental group of the complex unit circle.
Source: Classical theorem in algebraic topology.
Informal solution: Use winding number to identify loops in the circle up to homotopy with the integers.
theorem pi1_circle_mulEquiv_int :
Nonempty (HomotopyGroup.Pi 1 Circle (1 : Circle) ≃* Multiplicative ℤ) := ⊢ Nonempty (HomotopyGroup.Pi 1 Circle 1 ≃* Multiplicative ℤ)
All goals completed! 🐙pi_3 of the 2-sphere is Z
Submitter: Kim Morrison.
Notes: The classical computation pi_3(S^2) = Z, with an explicit basepoint.
Source: Classical theorem in algebraic topology.
Informal solution: Use the Hopf fibration to identify the third homotopy group of the 2-sphere with the integers.
theorem pi3_sphere_two_mulEquiv_int (x : Metric.sphere (0 : EuclideanSpace ℝ (Fin 3)) 1) :
Nonempty
(HomotopyGroup.Pi 3 (Metric.sphere (0 : EuclideanSpace ℝ (Fin 3)) 1) x ≃*
Multiplicative ℤ) := x:↑(Metric.sphere 0 1)⊢ Nonempty (HomotopyGroup.Pi 3 (↑(Metric.sphere 0 1)) x ≃* Multiplicative ℤ)
All goals completed! 🐙pi_(n+1) of S^n is Z/2 for n at least 3
pi_succ_sphere_n_mulEquiv_zmod_two
Submitter: Kim Morrison.
Notes: A concrete stable-family homotopy-group computation.
Source: Classical theorem in unstable homotopy theory.
Informal solution: Use suspension and the stable range to show the first stable stem is Z/2.
theorem pi_succ_sphere_n_mulEquiv_zmod_two (n : ℕ) (hn : 3 ≤ n)
(x : Metric.sphere (0 : EuclideanSpace ℝ (Fin (n + 1))) 1) :
Nonempty
(HomotopyGroup.Pi (n + 1) (Metric.sphere (0 : EuclideanSpace ℝ (Fin (n + 1))) 1) x ≃*
Multiplicative (ZMod 2)) := n:ℕhn:3 ≤ nx:↑(Metric.sphere 0 1)⊢ Nonempty (HomotopyGroup.Pi (n + 1) (↑(Metric.sphere 0 1)) x ≃* Multiplicative (ZMod 2))
All goals completed! 🐙Pick's theorem
Submitter: Kim Morrison.
Notes: A simple lattice polygon with n ≥ 3 vertices has area I + B/2 − 1, with I/B the interior/boundary lattice-point counts. Trusted helpers (toPlane, latPoly, inside, area, Adjacent, IsSimple, boundaryPts, interiorPts) are non-holes; the simplicity hypothesis is mandatory (the formula is false for self-intersecting polygons). Mathlib has Polygon and its boundary but no polygon interior, lattice counts, or Pick's theorem (formalized in Isabelle/HOL but not Lean). Candidate from §154 of the Knill survey.
Source: G. Pick, *Geometrisches zur Zahlenlehre* (1899). Knill, *Some fundamental theorems in mathematics*, §154.
Informal solution: Additivity + triangulation. Pick's measure P(poly) = I + B/2 − 1 is additive when gluing polygons along an edge (shared boundary points are double-counted as boundary then become interior, and the −1 terms combine correctly). Triangulate the simple polygon into lattice triangles; reduce to elementary (no interior/edge lattice points) triangles, each of area 1/2 with P = 0 + 3/2 − 1 = 1/2. Since both area and P are additive over the triangulation and agree on elementary triangles, they agree on the polygon. Requires the lattice triangulation + additivity machinery, absent from Mathlib.
theorem pick {n : ℕ} (hn : 3 ≤ n) (v : Fin n → ℤ × ℤ)
(hsimple : LeanEval.Geometry.PicksTheorem.IsSimple (LeanEval.Geometry.PicksTheorem.latPoly v)) :
area ((LeanEval.Geometry.PicksTheorem.latPoly v).boundary (R := ℝ))
= (interiorPts v : ℝ) + (boundaryPts v : ℝ) / 2 - 1 := n:ℕhn:3 ≤ nv:Fin n → ℤ × ℤhsimple:IsSimple (latPoly v)⊢ area (Polygon.boundary ℝ (latPoly v)) = ↑(interiorPts v) + ↑(boundaryPts v) / 2 - 1
All goals completed! 🐙pi_n of the n-sphere is Z
Submitter: Kim Morrison.
Notes: The diagonal sphere homotopy-group computation pi_n(S^n) = Z for n at least 1.
Source: Classical theorem in algebraic topology.
Informal solution: Identify homotopy classes of self-maps of S^n with their degree.
theorem pin_sphere_n_mulEquiv_int (n : ℕ)
(x : Metric.sphere (0 : EuclideanSpace ℝ (Fin (n + 2))) 1) :
Nonempty
(HomotopyGroup.Pi (n + 1) (Metric.sphere (0 : EuclideanSpace ℝ (Fin (n + 2))) 1) x ≃*
Multiplicative ℤ) := n:ℕx:↑(Metric.sphere 0 1)⊢ Nonempty (HomotopyGroup.Pi (n + 1) (↑(Metric.sphere 0 1)) x ≃* Multiplicative ℤ)
All goals completed! 🐙Platonic classification
Submitter: Kim Morrison.
Notes: §42 of Knill's 'Some Fundamental Theorems in Mathematics'. The count p_d of regular convex d-polytopes (Platonic polytopes) up to similarity is p_2 = ∞ (regular polygons), p_3 = 5 (Euclid XIII), p_4 = 6 (Schläfli 1850s), and p_d = 3 for d ≥ 5. Mathlib has convexHull, extremePoints, IsExposed, vectorSpan, AffineIsometryEquiv, Set.encard but no convex-polytope datatype, no face lattice, no regular-polytope concept, and none of the classification counts. The Challenge ships ~1.5 pages of helper defs (ConvexPolytope, dim, IsFace, Flag, isSymmetry, IsRegular, Similar, regularPolytopes, regularSimilar, platonicCount).
Source: Euclid, Elements, Book XIII (~300 BC, p_3 = 5); L. Schläfli, Theorie der vielfachen Kontinuität (1852, posthumous publication; p_4 = 6, p_d = 3 for d ≥ 5). Listed as §42 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: p_2 = ⊤: for each n ≥ 3 the regular n-gon (vertices = n-th roots of unity) is regular and any two non-congruent regular polygons are non-similar; the construction gives infinitely many similarity classes. p_3 = 5: any regular 3-polytope has Schläfli symbol {p, q} with p, q ≥ 3 and 1/p + 1/q > 1/2 (the spherical-angle-sum constraint at each vertex), giving exactly (3,3), (4,3), (3,4), (5,3), (3,5) — the five Platonic solids. p_4 = 6: any regular 4-polytope {p, q, r} satisfies the analogous spherical inequality, giving (3,3,3), (4,3,3), (3,3,4), (3,4,3), (5,3,3), (3,3,5) — Schläfli's six. p_d ≥ 5 = 3: in dim ≥ 5 the only solutions to the iterated angle constraint are the regular simplex {3, …, 3, 3}, hypercube {4, 3, …, 3}, and cross-polytope {3, …, 3, 4}. Existence of each candidate is by explicit construction (vertex coordinates); uniqueness within Schläfli class is by induction on dimension via vertex figures.
theorem platonic_classification :
platonicCount 2 = ⊤ ∧
platonicCount 3 = 5 ∧
platonicCount 4 = 6 ∧
∀ d, 5 ≤ d → platonicCount d = 3 := ⊢ platonicCount 2 = ⊤ ∧ platonicCount 3 = 5 ∧ platonicCount 4 = 6 ∧ ∀ (d : ℕ), 5 ≤ d → platonicCount d = 3
All goals completed! 🐙3D smooth Poincaré conjecture (Perelman)
Submitter: Kim Morrison.
Notes: Every simply connected compact Hausdorff smooth 3-manifold is diffeomorphic to 𝕊³. Recorded as `proof_wanted SimplyConnectedSpace.nonempty_diffeomorph_sphere_three` in `Mathlib/Geometry/Manifold/PoincareConjecture.lean`. The smooth-category strengthening of the topological 3D Poincaré conjecture; also Perelman 2002-2003. In dim 3 the smooth and topological versions are equivalent (Moise's theorem says every topological 3-manifold admits a unique smooth structure), but the Lean statement carries the smooth structure explicitly. Mathlib has all the differential-topology / manifold scaffolding but neither Ricci flow nor Moise's theorem.
Source: G. Perelman, three arXiv preprints 2002-2003 (math/0211159, math/0303109, math/0307245). Recorded as a `proof_wanted` in Mathlib/Geometry/Manifold/PoincareConjecture.lean. In dim 3, Smooth ⇔ PL ⇔ Topological via Moise (1952) / Bing (1959).
Informal solution: Apply the topological 3D Poincaré conjecture to obtain a homeomorphism M ≃ₜ S³, then promote it to a diffeomorphism via Moise's theorem (every topological 3-manifold admits a unique smooth structure up to diffeomorphism), or equivalently observe that Hamilton-Perelman Ricci flow with surgery runs in the smooth category and produces a smooth diffeomorphism directly. Either route involves the same Perelman input on the geometric side; the dim-3 special feature is Moise/Bing which collapses the smooth/topological distinction (false in dim 4 and above).
theorem poincare_3d_smooth {M : Type*} [TopologicalSpace M] [T2Space M]
[ChartedSpace (EuclideanSpace ℝ (Fin 3)) M] [IsManifold (𝓡 3) ∞ M]
[SimplyConnectedSpace M] [CompactSpace M] :
Nonempty (M ≃ₘ⟮𝓡 3, 𝓡 3⟯ sphere (0 : EuclideanSpace ℝ (Fin 4)) 1) := M:Type u_1inst✝⁵:TopologicalSpace Minst✝⁴:T2Space Minst✝³:ChartedSpace (EuclideanSpace ℝ (Fin 3)) Minst✝²:IsManifold (𝓡 3) ∞ Minst✝¹:SimplyConnectedSpace Minst✝:CompactSpace M⊢ Nonempty (M ≃ₘ⟮𝓡 3, 𝓡 3⟯ ↑(sphere 0 1))
All goals completed! 🐙3D topological Poincaré conjecture (Perelman)
Submitter: Kim Morrison.
Notes: Every simply connected compact Hausdorff 3-manifold is homeomorphic to 𝕊³. Recorded as `proof_wanted SimplyConnectedSpace.nonempty_homeomorph_sphere_three` in `Mathlib/Geometry/Manifold/PoincareConjecture.lean`. Proved by Perelman in 2002-2003 via Hamilton's Ricci flow with surgery; one of the seven Millennium Problems. Mathlib has ChartedSpace, SimplyConnectedSpace, CompactSpace, T2Space, Homeomorph and the unit sphere as a smooth manifold but no Ricci flow, no Hamilton-Perelman surgery, and no Poincaré conjecture itself.
Source: G. Perelman, The entropy formula for the Ricci flow and its geometric applications (arXiv:math/0211159, 2002); Ricci flow with surgery on three-manifolds (arXiv:math/0303109, 2003); Finite extinction time for the solutions to the Ricci flow on certain three-manifolds (arXiv:math/0307245, 2003). Recorded as a `proof_wanted` in Mathlib/Geometry/Manifold/PoincareConjecture.lean. Originally conjectured by Henri Poincaré in 1904.
Informal solution: Run Ricci flow ∂g/∂t = -2 Ric(g) on M with surgery to remove finite-time singularities (Hamilton's program, completed by Perelman). The flow simplifies the metric, and Perelman's monotonicity formulas (reduced volume, ℒ-functional, no local collapsing) together with the canonical-neighbourhood theorem control the geometry. In finite time the flow either becomes extinct (M is a connected sum of spherical space forms and S²×S¹s, in particular when π_1(M) = 1, M = S³) or decomposes M along incompressible 2-tori into pieces of one of Thurston's eight geometric types; the simply-connected hypothesis rules out the toroidal decomposition and the spherical-space-form ambiguity, leaving M ≃ S³.
theorem poincare_3d_topological {M : Type*} [TopologicalSpace M] [T2Space M]
[ChartedSpace (EuclideanSpace ℝ (Fin 3)) M]
[SimplyConnectedSpace M] [CompactSpace M] :
Nonempty (M ≃ₜ sphere (0 : EuclideanSpace ℝ (Fin 4)) 1) := M:Type u_1inst✝⁴:TopologicalSpace Minst✝³:T2Space Minst✝²:ChartedSpace (EuclideanSpace ℝ (Fin 3)) Minst✝¹:SimplyConnectedSpace Minst✝:CompactSpace M⊢ Nonempty (M ≃ₜ ↑(sphere 0 1))
All goals completed! 🐙4D topological Poincaré conjecture (Freedman)
Submitter: Kim Morrison.
Notes: Every Hausdorff 4-manifold homotopy-equivalent to 𝕊⁴ is homeomorphic to 𝕊⁴. Specialization to n = 4 of mathlib's generalized `proof_wanted ContinuousMap.HomotopyEquiv.nonempty_homeomorph_sphere` in `Mathlib/Geometry/Manifold/PoincareConjecture.lean`. Michael Freedman's 1982 theorem (J. Differential Geom. 17), Fields Medal 1986. Proof uses Casson handles and the Bing-topology infinite-process construction. The corresponding smooth 4D Poincaré conjecture (every smooth homotopy 4-sphere is diffeomorphic to S⁴) remains famously OPEN and is not included here. Mathlib has the homotopy-equiv / homeo / ChartedSpace scaffolding but no Casson handles or Freedman's theorem.
Source: M. H. Freedman, The topology of four-dimensional manifolds, J. Differential Geom. 17 (1982), 357-453. Specialization of `proof_wanted ContinuousMap.HomotopyEquiv.nonempty_homeomorph_sphere` in Mathlib/Geometry/Manifold/PoincareConjecture.lean.
Informal solution: Freedman's main theorem: every topological 4-manifold homotopy equivalent to a topological model is homeomorphic to it, provided one can construct topological Casson handles. The construction of Casson handles is via a Bing-style limiting process (countably many handle additions, infinite tower of 2-handles) that produces a topological — but not smooth — 4-ball. Applying this to a homotopy 4-sphere M, one writes M as the union of two 2-handlebodies along their boundary, replaces handles with Casson handles, and assembles a homeomorphism to S⁴. The smooth analogue is open because Casson handles need not be smoothly standard (Donaldson's invariants distinguish smooth structures in dim 4).
theorem poincare_4d_topological {M : Type*} [TopologicalSpace M] [T2Space M]
[ChartedSpace (EuclideanSpace ℝ (Fin 4)) M]
(_h : M ≃ₕ sphere (0 : EuclideanSpace ℝ (Fin 5)) 1) :
Nonempty (M ≃ₜ sphere (0 : EuclideanSpace ℝ (Fin 5)) 1) := M:Type u_1inst✝²:TopologicalSpace Minst✝¹:T2Space Minst✝:ChartedSpace (EuclideanSpace ℝ (Fin 4)) M_h:M ≃ₕ ↑(sphere 0 1)⊢ Nonempty (M ≃ₜ ↑(sphere 0 1))
All goals completed! 🐙Poincaré–Bendixson theorem
Submitter: Kim Morrison.
Notes: Planar trichotomy for the forward integral curve γ of a C¹ autonomous vector field F : ℝ² → ℝ². Either the forward orbit is unbounded; the ω-limit set ⋂ s, closure (γ '' Ici s) contains an equilibrium of F; or the ω-limit set equals the range of a non-constant periodic integral curve. The bounded branch uses 'ω-limit contains an equilibrium' rather than pointwise convergence (planar orbits may accumulate on continua of equilibria or polycycles). Case 3 requires F (β 0) ≠ 0 to exclude a constant equilibrium curve; the conclusion is a non-constant periodic orbit, not a limit cycle in the strict sense. §63 of Knill's 'Some Fundamental Theorems in Mathematics'.
Source: H. Poincaré, *Mémoire sur les courbes définies par une équation différentielle*, Journal de Mathématiques 7 (1881), 8 (1882), 1 (1885), 2 (1886); I. Bendixson, *Sur les courbes définies par des équations différentielles*, Acta Mathematica 24 (1901), 1-88. Listed as §63 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). The Isabelle/HOL/AFP entry by Fabian Immler and Yong Kiam Tan (https://www.isa-afp.org/entries/Poincare_Bendixson.html) uses John Harrison's Jordan curve theorem.
Informal solution: Classical proof: assume the forward orbit is bounded and the ω-limit set contains no equilibrium. Pick a regular point p of the ω-limit set and a transverse arc Σ at p. The first-return map P : Σ → Σ along the flow is well-defined and monotone in the natural linear order on Σ; the orbit's intersections with Σ form a monotone sequence converging to p. Combined with the Jordan curve theorem (a closed orbit Γ separates ℝ² into bounded interior and unbounded exterior, and trajectories cannot escape across Γ), this forces the ω-limit set to be exactly the range of a periodic integral curve through p. The non-degeneracy F (β 0) ≠ 0 follows from p being a regular point.
theorem poincare_bendixson (F : LeanEval.Dynamics.Plane → LeanEval.Dynamics.Plane) (_hF : ContDiff ℝ 1 F)
(γ : ℝ → LeanEval.Dynamics.Plane)
(_hγ : IsIntegralCurveOn γ (fun _ x => F x) (Set.Ici 0)) :
¬ Bornology.IsBounded (γ '' Set.Ici 0)
∨ (∃ x₀, F x₀ = 0 ∧ x₀ ∈ ⋂ s : ℝ, closure (γ '' Set.Ici s))
∨ (∃ T : ℝ, 0 < T ∧ ∃ β : ℝ → LeanEval.Dynamics.Plane,
IsIntegralCurve β (fun _ x => F x) ∧
(∀ t, β (t + T) = β t) ∧
F (β 0) ≠ 0 ∧
(⋂ s : ℝ, closure (γ '' Set.Ici s)) = Set.range β) := F:Plane → Plane_hF:ContDiff ℝ 1 Fγ:ℝ → Plane_hγ:IsIntegralCurveOn γ (fun x x_1 => F x_1) (Ici 0)⊢ ¬Bornology.IsBounded (γ '' Ici 0) ∨
(∃ x₀, F x₀ = 0 ∧ x₀ ∈ ⋂ s, closure (γ '' Ici s)) ∨
∃ T,
0 < T ∧
∃ β,
(IsIntegralCurve β fun x x_1 => F x_1) ∧
(∀ (t : ℝ), β (t + T) = β t) ∧ F (β 0) ≠ 0 ∧ ⋂ s, closure (γ '' Ici s) = range β
All goals completed! 🐙Generalized topological Poincaré conjecture in dimensions ≥ 5 (Smale)
Submitter: Kim Morrison.
Notes: For n ≥ 5, every Hausdorff n-manifold homotopy-equivalent to 𝕊ⁿ is homeomorphic to 𝕊ⁿ. Specialization to n ≥ 5 of mathlib's generalized `proof_wanted ContinuousMap.HomotopyEquiv.nonempty_homeomorph_sphere` in `Mathlib/Geometry/Manifold/PoincareConjecture.lean`. Stephen Smale 1961 (Bull. AMS 66, Ann. of Math. 74) originally for smooth M via the h-cobordism theorem; topological version completed by Newman 1966 and Connell 1967. Smale received the Fields Medal in 1966. Mathlib has the homotopy-equiv / homeo / ChartedSpace scaffolding but no h-cobordism theorem, no handle decompositions, and no Poincaré conjecture in any dimension.
Source: S. Smale, Generalized Poincaré's conjecture in dimensions greater than four, Ann. of Math. 74 (1961), 391-406. Topological case: M. H. A. Newman, The engulfing theorem for topological manifolds, Ann. of Math. 84 (1966) and E. H. Connell, A topological h-cobordism theorem for n ≥ 5, Illinois J. Math. 11 (1967). Specialization of `proof_wanted ContinuousMap.HomotopyEquiv.nonempty_homeomorph_sphere` in Mathlib/Geometry/Manifold/PoincareConjecture.lean.
Informal solution: Smale's smooth proof: a smooth homotopy n-sphere M (n ≥ 5) bounds a smooth contractible (n+1)-manifold W via Whitehead's theorem and a Mayer-Vietoris computation; apply the h-cobordism theorem (Smale's main contribution) to W minus two small balls to conclude W ≃ D^{n+1}, hence M = ∂W ≃ S^n smoothly. The topological version (Newman/Connell) replaces the h-cobordism step with the topological engulfing theorem and a topological h-cobordism theorem, proving the same conclusion without the smoothness hypothesis. The dim ≥ 5 hypothesis is crucial: it allows the Whitney trick to remove pairs of intersections, which fails in dim 4 (requiring Casson handles, Freedman 1982) and below.
theorem poincare_high_dim_topological {n : ℕ} (_h5 : 5 ≤ n)
{M : Type*} [TopologicalSpace M] [T2Space M]
[ChartedSpace (EuclideanSpace ℝ (Fin n)) M]
(_h : M ≃ₕ sphere (0 : EuclideanSpace ℝ (Fin (n + 1))) 1) :
Nonempty (M ≃ₜ sphere (0 : EuclideanSpace ℝ (Fin (n + 1))) 1) := n:ℕ_h5:5 ≤ nM:Type u_1inst✝²:TopologicalSpace Minst✝¹:T2Space Minst✝:ChartedSpace (EuclideanSpace ℝ (Fin n)) M_h:M ≃ₕ ↑(sphere 0 1)⊢ Nonempty (M ≃ₜ ↑(sphere 0 1))
All goals completed! 🐙Poincaré–Siegel linearisation theorem
Submitter: Kim Morrison.
Notes: Siegel 1942: a holomorphic germ f near 0 with f 0 = 0 and multiplier λ = e^{2πiα} (α Diophantine) is locally analytically conjugate to z ↦ λz. The conjugating germ u satisfies u 0 = 0, u'(0) = 1, and f(u z) = u(λ z) near 0 (Schröder equation). The file ships an IsDiophantine predicate parameterised by an arbitrary exponent τ (∃ C, ∃ τ, ∀ p q ≠ 0, C / |q|^τ ≤ |α − p/q|); the constant-type / exponent-2 condition is the special case fixing τ = 2.
Source: C. L. Siegel, *Iteration of analytic functions*, Annals of Math. 43 (1942), 607-612. Earlier formal-power-series version: H. Poincaré thèse (1879). Listed as §83 (additional statement 1) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Construct the formal Schröder series u(z) = ∑ uₙ zⁿ from the conjugacy equation f(u z) = u(λ z), giving the recursion (λⁿ − λ) uₙ = (lower-order polynomial in u_{<n} and f_{≥2}). An arithmetic condition on the rotation number is essential to control the small divisors (λⁿ − 1); the Diophantine hypothesis gives a polynomial lower bound |λⁿ − 1| ≥ c n^{-(τ−1)} that is summable against Cauchy estimates. Siegel's geometric majorant-series argument bounds u by an explicit analytic envelope of positive radius of convergence.
theorem poincare_siegel (α : ℝ) (_hα : LeanEval.ComplexAnalysis.IsDiophantine α)
(lam : ℂ) (_hlam : lam = Complex.exp (2 * Real.pi * Complex.I * (α : ℂ)))
(f : ℂ → ℂ) (_hf : AnalyticAt ℂ f 0) (_hf0 : f 0 = 0)
(_hmult : deriv f 0 = lam) :
∃ u : ℂ → ℂ, AnalyticAt ℂ u 0 ∧ u 0 = 0 ∧ deriv u 0 = 1 ∧
∀ᶠ z in nhds (0 : ℂ), f (u z) = u (lam * z) := α:ℝ_hα:IsDiophantine αlam:ℂ_hlam:lam = Complex.exp (2 * ↑Real.pi * Complex.I * ↑α)f:ℂ → ℂ_hf:AnalyticAt ℂ f 0_hf0:f 0 = 0_hmult:deriv f 0 = lam⊢ ∃ u, AnalyticAt ℂ u 0 ∧ u 0 = 0 ∧ deriv u 0 = 1 ∧ ∀ᶠ (z : ℂ) in nhds 0, f (u z) = u (lam * z)
All goals completed! 🐙Entrywise exponential of a PSD matrix is PSD
Submitter: Kim Morrison.
Notes: Part of the Schur-Polya-Loewner theory of entrywise functions preserving PSD. The proof uses the Schur product theorem iteratively: exp_⊙(A) = ∑ A^{⊙k}/k!, each Hadamard power is PSD, and the convergent series of PSD matrices is PSD.
Source: I.J. Schoenberg, Positive definite functions on spheres, 1942.
Informal solution: Write exp(a_{ij}) as the convergent series ∑ (a_{ij})^k / k!. The matrix with entries (a_{ij})^k is the k-fold Hadamard product A^{⊙k}, which is PSD by iterated Schur product. The partial sums are nonneg combinations of PSD matrices, hence PSD. PSD is a closed condition, so the limit is PSD.
theorem posSemidef_map_exp {n : Type*} [Fintype n] [DecidableEq n]
{A : Matrix n n ℝ} (hA : A.PosSemidef) :
(A.map Real.exp).PosSemidef := n:Type u_1inst✝¹:Fintype ninst✝:DecidableEq nA:Matrix n n ℝhA:A.PosSemidef⊢ (A.map Real.exp).PosSemidef
All goals completed! 🐙Radó's theorem on Riemann surfaces
Submitter: Junyan Xu.
Notes: Unavailable.
Source: John Hamal Hubbard, *Teichmüller theory and applications to geometry, topology, and dynamics. Vol. 1*, §1.3.
Informal solution: Unavailable.
theorem rado_riemannSurface {X : Type*} [TopologicalSpace X] [T2Space X] [ConnectedSpace X]
[ChartedSpace ℂ X] [IsManifold (modelWithCornersSelf ℂ ℂ) 1 X] :
SecondCountableTopology X := X:Type u_1inst✝⁴:TopologicalSpace Xinst✝³:T2Space Xinst✝²:ConnectedSpace Xinst✝¹:ChartedSpace ℂ Xinst✝:IsManifold (modelWithCornersSelf ℂ ℂ) 1 X⊢ SecondCountableTopology X
All goals completed! 🐙Radon transform: Fourier-slice diagonalization and pseudo-inversion
Submitter: Kim Morrison.
Notes: The Fourier slice theorem diagonalizes the Radon transform (1D Fourier of a projection = a 2D-Fourier slice), and the transform has a left inverse on Schwartz functions. Trusted helpers radon, fourier1, fourier2 (non-holes). Mathlib has the 1D/2D Fourier transforms and Schwartz space but no Radon transform, Fourier slice theorem, or filtered back-projection. The pseudo-inverse is stated existentially (the explicit filtered-back-projection form would need the Hilbert transform / Riesz potential). Candidate from §100 of the Knill survey.
Source: J. Radon (1917); R. N. Bracewell (Fourier slice theorem, 1956). Knill, *Some fundamental theorems in mathematics*, §100.
Informal solution: Fourier slice theorem: writing the Radon projection R f(p,θ) and taking its 1D Fourier transform in p, interchange integrals (Fubini) and change variables so the line-integral-then-Fourier becomes the 2D Fourier transform of f restricted to the line through the origin at angle θ: F₁[Rf(·,θ)](k) = F₂[f](k cos θ, k sin θ). This diagonalizes R (it becomes a slice/multiplication operator). Pseudo-inversion: the slice identity plus 2D Fourier inversion on Schwartz functions makes R injective on 𝓢, so a left inverse exists; the canonical one is filtered back-projection u ↦ backproject(Hilbert-filter(u)). Mathlib lacks the slice theorem and the filter.
theorem radon_can_be_diagonalized_and_pseudo_inverted :
(∀ φ : SchwartzMap (ℝ × ℝ) ℂ, ∀ θ k : ℝ,
fourier1 (fun p => radon (φ : ℝ × ℝ → ℂ) (p, θ)) k =
fourier2 (φ : ℝ × ℝ → ℂ) (k * Real.cos θ, k * Real.sin θ)) ∧
(∃ Rinv : (ℝ × ℝ → ℂ) → (ℝ × ℝ → ℂ),
∀ φ : SchwartzMap (ℝ × ℝ) ℂ,
Rinv (radon (φ : ℝ × ℝ → ℂ)) = (φ : ℝ × ℝ → ℂ)) := ⊢ (∀ (φ : SchwartzMap (ℝ × ℝ) ℂ) (θ k : ℝ),
fourier1 (fun p => radon ⇑φ (p, θ)) k = fourier2 ⇑φ (k * Real.cos θ, k * Real.sin θ)) ∧
∃ Rinv, ∀ (φ : SchwartzMap (ℝ × ℝ) ℂ), Rinv (radon ⇑φ) = ⇑φ
All goals completed! 🐙Sard's regular-value corollary
Submitter: Kim Morrison.
Notes: For a smooth f : ℝᵐ → ℝ, almost every c ∈ ℝ is a regular value (every point of f⁻¹(c) has nonzero derivative). The measure-theoretic heart of the regular-value form of Sard's theorem; the main critical-set-null Sard theorem is a separate lean-eval problem (§125 main). Trusted helper IsRegularValue (non-hole). Mathlib has the equal-dimension Jacobian lemma and Hausdorff-dimension corollaries but not the general critical-values-null statement. Candidate from §125 of the Knill survey (additional 1).
Source: A. Sard, *The measure of the critical values of differentiable maps*, Bull. AMS 48 (1942); A. P. Morse (1939). Knill, *Some fundamental theorems in mathematics*, §125.
Informal solution: Apply Sard's theorem with target dimension n = 1: the set of critical values of f (images of points where df = 0) has Lebesgue measure zero. A value c is regular iff it is not a critical value, so the regular values are the complement of a null set, i.e. almost every c is regular. Reduces to the main Sard theorem (critical set null) specialized to real-valued f.
theorem regular_value_ae {m : ℕ} (f : EuclideanSpace ℝ (Fin m) → ℝ)
(hf : ContDiff ℝ ∞ f) :
∀ᵐ c ∂(volume : Measure ℝ), LeanEval.Geometry.RegularValue.IsRegularValue f c := m:ℕf:EuclideanSpace ℝ (Fin m) → ℝhf:ContDiff ℝ ∞ f⊢ ∀ᵐ (c : ℝ), IsRegularValue f c
All goals completed! 🐙Lagarias criterion is equivalent to RH
riemann_hypothesis_iff_lagarias_elementary_criterion
Submitter: Kim Morrison.
Notes: Lagarias' elementary divisor-sum criterion stated using Mathlib's RiemannHypothesis, harmonic numbers, and sigma notation.
Source: https://arxiv.org/abs/math/0008177
Informal solution: Prove that the Riemann hypothesis is equivalent to the inequality σ(n) ≤ H_n + exp(H_n) log(H_n) for all positive integers n.
theorem riemann_hypothesis_iff_lagarias_elementary_criterion :
RiemannHypothesis ↔ LeanEval.NumberTheory.LagariasElementaryCriterion := ⊢ RiemannHypothesis ↔ LagariasElementaryCriterion
All goals completed! 🐙Riesz's rising sun lemma
Submitter: Kim Morrison.
Notes: Every continuous real function on a compact interval has the rising-sun property: the shadow set is open, empty iff the function is antitone, else a disjoint union of open intervals with f(c_n) ≤ f(d_n). Trusted helpers (risingSunSet, HasRisingSunDecomposition, HasRisingSunProperty) are non-holes. Mathlib has the monotone-a.e.-differentiable consequence but not the rising-sun lemma. Candidate from §163 of the Knill survey.
Source: F. Riesz (1932). Knill, §163.
Informal solution: Unavailable.
theorem rising_sun_lemma {a b : ℝ} (hab : a < b) {f : ℝ → ℝ}
(hf : ContinuousOn f (Icc a b)) :
LeanEval.Analysis.RisingSun.HasRisingSunProperty a b f := a:ℝb:ℝhab:a < bf:ℝ → ℝhf:ContinuousOn f (Icc a b)⊢ HasRisingSunProperty a b f
All goals completed! 🐙Rokhlin lemma
Submitter: Kim Morrison.
Notes: §109 of Knill's 'Some Fundamental Theorems in Mathematics'. Every aperiodic measure-preserving automorphism of a standard Borel probability space admits, for every height n and every ε > 0, a measurable tower base B such that B, T B, …, T^{n-1} B are pairwise disjoint with total measure ≥ 1 - ε. The [StandardBorelSpace Ω] hypothesis is essential: the countable-cocountable σ-algebra on ℝ with the integer-shift map x ↦ x + 1 is aperiodic and measure-preserving but admits no nontrivial Rokhlin towers (every cocountable base intersects its own shift; every countable base has zero-measure tower). Mathlib has MeasurePreserving, IsProbabilityMeasure, Function.periodicPts, Set.PairwiseDisjoint, and StandardBorelSpace, but no Rokhlin lemma. The Challenge ships four small helper defs (IsAperiodic, towerFloor, towerUnion, IsRokhlinTower).
Source: V. A. Rokhlin, *A general measure-preserving transformation is not mixing*, Doklady Akademii Nauk SSSR 60 (1948), 349-351 (original Russian; English translation later); S. Kakutani, *Induced measure-preserving transformations*, Proc. Imp. Acad. Tokyo 19 (1943), 635-641 (independent discovery). Listed as §109 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). No formalization found in any major prover.
Informal solution: Standard proof: pick a measurable set A of small measure ε/n with positive density relative to T's orbit structure (the Halmos–Kakutani skyscraper). The first-return time r : A → ℕ is a.e. finite by aperiodicity; partition A by level sets {r = k}. Reassemble disjoint level-k floors T^j ({r = k}) for j < k into a height-n tower by horizontal cuts; the remaining 'roof' has measure at most ε.
theorem rokhlin_lemma {Ω : Type*} [MeasurableSpace Ω]
[StandardBorelSpace Ω]
(μ : Measure Ω) [IsProbabilityMeasure μ] (T : Ω → Ω)
(_hT : MeasurePreserving T μ μ) (_hap : LeanEval.Dynamics.IsAperiodic T μ)
(n : ℕ) (_hn : 1 ≤ n) {ε : ENNReal} (_hε : 0 < ε) :
∃ B : Set Ω, LeanEval.Dynamics.IsRokhlinTower T B n ∧
μ (LeanEval.Dynamics.towerUnion T B n) ≥ 1 - ε := Ω:Type u_1inst✝²:MeasurableSpace Ωinst✝¹:StandardBorelSpace Ωμ:Measure Ωinst✝:IsProbabilityMeasure μT:Ω → Ω_hT:MeasurePreserving T μ μ_hap:IsAperiodic T μn:ℕ_hn:1 ≤ nε:ENNReal_hε:0 < ε⊢ ∃ B, IsRokhlinTower T B n ∧ μ (towerUnion T B n) ≥ 1 - ε
All goals completed! 🐙Rouche theorem via zero counting
Submitter: Kim Morrison.
Notes: Phrases Rouché's theorem as equality of multiplicity-counted zero counts for f and f + g on the closed disk of radius R.
Source: Classical theorem in complex analysis.
Informal solution: Assuming f is meromorphic in normal form on ℂ and |g| < |f| on the boundary circle, f and f + g have the same number of zeros inside the disk, counted with multiplicity.
theorem rouche_zero_count_eq {f g : ℂ → ℂ} {R : ℝ}
(hR : 0 < R)
(hf : MeromorphicNFOn f Set.univ)
(hg : AnalyticOn ℂ g Set.univ)
(hbound : ∀ z : ℂ, ‖z‖ = R → ‖g z‖ < ‖f z‖) :
(∑ᶠ z, ((divisor (f + g) (Metric.closedBall 0 R))⁺) z) =
(∑ᶠ z, ((divisor f (Metric.closedBall 0 R))⁺) z) := f:ℂ → ℂg:ℂ → ℂR:ℝhR:0 < Rhf:MeromorphicNFOn f Set.univhg:AnalyticOn ℂ g Set.univhbound:∀ (z : ℂ), ‖z‖ = R → ‖g z‖ < ‖f z‖⊢ ∑ᶠ (z : ℂ), (divisor (f + g) (Metric.closedBall 0 R))⁺ z = ∑ᶠ (z : ℂ), (divisor f (Metric.closedBall 0 R))⁺ z
All goals completed! 🐙Runge's theorem
Submitter: Kim Morrison.
Notes: Basic Runge approximation theorem for compact subsets of ℂ. The statement uses polynomials p q : ℂ[X] and requires q to be nonvanishing on K, expressing rational functions with no poles on K. This does not include the standard pole-control refinement (one pole per connected component of ℂ \ K).
Source: C. Runge, *Zur Theorie der eindeutigen analytischen Funktionen*, Acta Math. 6 (1885), 229-244. Listed as §64 (additional statement 3) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Show that rational functions with poles outside K are dense in the algebra of functions holomorphic on a neighbourhood of K, with respect to the uniform norm on K. Classical proofs go via Cauchy integral approximation or via Hahn–Banach / Riesz duality.
theorem runge (K : Set ℂ) (_hK : IsCompact K) (U : Set ℂ) (_hU : IsOpen U)
(_hKU : K ⊆ U) (f : ℂ → ℂ) (_hf : AnalyticOnNhd ℂ f U)
(ε : ℝ) (_hε : 0 < ε) :
∃ p q : ℂ[X], (∀ z ∈ K, q.eval z ≠ 0) ∧
(∀ z ∈ K, ‖f z - p.eval z / q.eval z‖ < ε) := K:Set ℂ_hK:IsCompact KU:Set ℂ_hU:IsOpen U_hKU:K ⊆ Uf:ℂ → ℂ_hf:AnalyticOnNhd ℂ f Uε:ℝ_hε:0 < ε⊢ ∃ p q, (∀ z ∈ K, Polynomial.eval z q ≠ 0) ∧ ∀ z ∈ K, ‖f z - Polynomial.eval z p / Polynomial.eval z q‖ < ε
All goals completed! 🐙Sard's theorem (critical-set image has measure zero)
Submitter: Kim Morrison.
Notes: For a smooth map f : ℝᵐ → ℝⁿ, the image of the rank-deficient locus {x | rank df(x) < m ∧ rank df(x) < n} has Lebesgue measure zero. This is Knill's specific phrasing — the standard textbook Sard theorem uses the larger critical set {x | rank df(x) < n} (failure of surjectivity), which is a weaker hypothesis, so textbook Sard *implies* the form proved here. The two agree when m ≥ n; for m < n a smooth immersion has every point critical under the textbook definition but no critical points under Knill's. The manifold form follows chart-by-chart from this Euclidean version. Mathlib has the equal-dimension case (`addHaar_image_eq_zero_of_det_fderivWithin_eq_zero`) when det df = 0, plus topological corollaries via Hausdorff dimension (`ContDiff.dense_compl_range_of_finrank_lt_finrank`), but no general critical-value / Sard statement. §125 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: A.P. Morse, 'The behavior of a function on its critical set', Ann. of Math. (2) 40 (1939) 62–70; A. Sard, 'The measure of the critical values of differentiable maps', Bull. Amer. Math. Soc. 48 (1942) 883–890. §125 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classical proof stratifies the critical set by rank, applies the implicit function theorem to straighten `f` locally on each stratum into a normal form, and bounds the image with Taylor estimates plus Fubini and countable covers. The standard regularity threshold is `C^k` for `k ≥ max(m − n + 1, 1)` (Whitney's threshold for the surjectivity-failure form); the smooth (`C^∞`) hypothesis used here is stronger than needed. Knill's rank-deficient form is implied by the textbook surjectivity-failure form. Mathlib has the equal-dimension Jacobian-determinant lemma (`addHaar_image_eq_zero_of_det_fderivWithin_eq_zero`) and Hausdorff-dimension topological corollaries, but not the rank-stratification / normal-form / Fubini-and-cover machinery, and not the general critical-value Sard statement.
theorem sard {m n : ℕ} (f : LeanEval.Geometry.SardTheoremProblem.E m → LeanEval.Geometry.SardTheoremProblem.E n) (_hf : ContDiff ℝ ∞ f) :
volume (LeanEval.Geometry.SardTheoremProblem.criticalValues f) = 0 := m:ℕn:ℕf:E m → E n_hf:ContDiff ℝ ∞ f⊢ volume (criticalValues f) = 0
All goals completed! 🐙Schauder fixed-point theorem
Submitter: Kim Morrison.
Notes: §60 of Knill's 'Some Fundamental Theorems in Mathematics' (additional statement). The Banach-space generalization of Brouwer: every continuous self-map of a nonempty compact convex subset of a real Banach space has a fixed point. Mathlib has NormedAddCommGroup / NormedSpace / CompleteSpace and the Banach contraction principle (ContractingWith.exists_fixedPoint, strictly weaker), but no Schauder fixed-point theorem. SchauderBasis / GeneralSchauderBasis in mathlib are unrelated (about sequences spanning a Banach space, not fixed points). No open mathlib PR; the Sperner → Brouwer → Schauder dependency chain is partially in motion (Sperner partially landed, Brouwer in flight in #36770). Active downstream demand from the PDE community for Schauder / Schaefer / Leray–Schauder machinery (cf. Nelson Spence's 2026-03-06 Zulip thread). Stateable with zero new definitions.
Source: J. Schauder, *Der Fixpunktsatz in Funktionalräumen*, Studia Mathematica 2 (1930), 171-180. Listed as §60 (additional statement 2) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). No formalization found in mathlib4 or any open mathlib PR; Brouwer is in flight via https://github.com/leanprover-community/mathlib4/pull/36770.
Informal solution: Standard proof: approximate the compact convex K by finite-dimensional convex polytopes K_n via ε-nets and the convex-hull construction; on each K_n apply Brouwer fixed-point to a continuous projection of f to get a fixed point x_n ∈ K_n; pass to a subsequence x_n → x (compactness of K), and verify f x = x using uniform continuity of f on the compact set K. The full argument depends on Brouwer's fixed-point theorem (the main classical input) and Mazur's theorem (the closed convex hull of a compact subset of a Banach space is compact, which uses completeness).
theorem schauder_fixed_point {E : Type*}
[NormedAddCommGroup E] [NormedSpace ℝ E] [CompleteSpace E]
{K : Set E}
(_hK_compact : IsCompact K) (_hK_convex : Convex ℝ K)
(_hK_nonempty : K.Nonempty)
(f : E → E)
(_hf_cont : ContinuousOn f K) (_hf_maps : Set.MapsTo f K K) :
∃ x ∈ K, f x = x := E:Type u_1inst✝²:NormedAddCommGroup Einst✝¹:NormedSpace ℝ Einst✝:CompleteSpace EK:Set E_hK_compact:IsCompact K_hK_convex:Convex ℝ K_hK_nonempty:K.Nonemptyf:E → E_hf_cont:ContinuousOn f K_hf_maps:Set.MapsTo f K K⊢ ∃ x ∈ K, f x = x
All goals completed! 🐙Schläfli classification of regular polytopes
Submitter: Kim Morrison.
Notes: §42 of Knill's 'Some Fundamental Theorems in Mathematics'. Schläfli's dimension-by-dimension enumeration of the regular convex polytopes: p_3 = 5 (Euclid XIII — the five Platonic solids), p_4 = 6 (Schläfli's six regular 4-polytopes), and p_d = 3 for every d ≥ 5 (regular simplex, hypercube, cross-polytope). Companion to the broader Platonic classification problem, which additionally records p_2 = ∞. Mathlib has convexHull, extremePoints, IsExposed, vectorSpan, AffineIsometryEquiv, Set.encard but no convex-polytope datatype, no face lattice, no regular-polytope concept, and none of the classification counts. The Challenge ships ~1.5 pages of helper defs (ConvexPolytope, dim, IsFace, Flag, isSymmetry, IsRegular, Similar, regularPolytopes, regularSimilar, platonicCount).
Source: L. Schläfli, *Theorie der vielfachen Kontinuität* (1852, posthumously published 1901; first proof that p_3 = 5, p_4 = 6, and p_d = 3 for d ≥ 5). Listed as §42 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: p_3 = 5: any regular 3-polytope has Schläfli symbol {p, q} with p, q ≥ 3 and 1/p + 1/q > 1/2 (the spherical-angle-sum constraint at each vertex), giving exactly (3,3), (4,3), (3,4), (5,3), (3,5) — the five Platonic solids. p_4 = 6: any regular 4-polytope {p, q, r} satisfies the analogous spherical inequality, giving (3,3,3), (4,3,3), (3,3,4), (3,4,3), (5,3,3), (3,3,5) — Schläfli's six. p_d ≥ 5 = 3: in dim ≥ 5 the only solutions to the iterated angle constraint are the regular simplex {3, …, 3, 3}, hypercube {4, 3, …, 3}, and cross-polytope {3, …, 3, 4}. Existence of each candidate is by explicit construction (vertex coordinates); uniqueness within Schläfli class is by induction on dimension via vertex figures.
theorem schlafli_classification :
platonicCount 3 = 5 ∧
platonicCount 4 = 6 ∧
∀ d, 5 ≤ d → platonicCount d = 3 := ⊢ platonicCount 3 = 5 ∧ platonicCount 4 = 6 ∧ ∀ (d : ℕ), 5 ≤ d → platonicCount d = 3
All goals completed! 🐙Schoenflies theorem
Submitter: Kim Morrison.
Notes: §48 of Knill's 'Some Fundamental Theorems in Mathematics'. Strong form: every Jordan curve in the plane is the image of the unit circle under some self-homeomorphism of ℝ². This is the faithful encoding of Knill's prose statement 'each complementary region is homeomorphic to the open disk' — which as literally written is false for the unbounded region (homeomorphic to ℝ² ∖ closedBall 0 1, fundamental group ℤ, not simply connected). The strong form implies the bounded region is homeomorphic to the open disk. Mathlib has Metric.sphere, EuclideanSpace, and Homeomorph, but no Schoenflies theorem (`grep -ri 'schoenflies' Mathlib/`: no hits), no Jordan curve theorem, no invariance-of-domain machinery in a form that would discharge it. Stateable with zero new definitions.
Source: A. M. Schoenflies, *Beiträge zur Theorie der Punktmengen III*, Math. Annalen 62 (1906) (first proof, with gaps); rigorous proofs by L. Antoine (1921), L. E. J. Brouwer (1909–10). Listed as §48 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). No formalization found in any major prover.
Informal solution: Classical proof: (i) the Jordan curve theorem gives the inside and outside regions; (ii) Riemann mapping for the bounded inside extends to a homeomorphism of the closed disk by Carathéodory's theorem on prime ends; (iii) a parallel construction handles the outside; (iv) the two homeomorphisms patch along the curve to a homeomorphism of ℝ².
theorem schoenflies (r : Metric.sphere (0 : EuclideanSpace ℝ (Fin 2)) 1 → EuclideanSpace ℝ (Fin 2))
(_hcont : Continuous r) (_hinj : Function.Injective r) :
∃ h : EuclideanSpace ℝ (Fin 2) ≃ₜ EuclideanSpace ℝ (Fin 2),
h '' Set.range r = Metric.sphere (0 : EuclideanSpace ℝ (Fin 2)) 1 := r:↑(Metric.sphere 0 1) → EuclideanSpace ℝ (Fin 2)_hcont:Continuous r_hinj:Function.Injective r⊢ ∃ h, ⇑h '' Set.range r = Metric.sphere 0 1
All goals completed! 🐙Schreier's conjecture: outer automorphism group of a finite simple group is solvable
Submitter: Kim Morrison.
Notes: For every finite non-abelian simple group S, Out(S) := Aut(S)/Inn(S) is solvable. The statement requires the normality of Inn(S) ⊴ Aut(S), which is supplied by a local instance with a one-line proof (the conjugate of conj(s) by α equals conj(α(s))). Verified case-by-case via CFSG; no CFSG-free proof is known.
Source: O. Schreier, Über die Erweiterung von Gruppen II, Abh. Math. Sem. Univ. Hamburg 4 (1926); CFSG, completed c. 2004.
Informal solution: Use the classification of finite simple groups. For each family — alternating Aₙ, classical Lie type, exceptional Lie type, sporadic — inspect the known Out(S) and verify it is solvable. For Aₙ (n ≥ 5, n ≠ 6), Out = ℤ/2; for A₆, Out = (ℤ/2)²; for groups of Lie type, Out is built from diagonal, field, and graph automorphisms (each step solvable); for sporadics, Out is trivial or ℤ/2.
theorem schreier_conjecture (S : Type) [Group S] [Fintype S] [IsSimpleGroup S]
(hS : ∃ a b : S, ¬ Commute a b) :
IsSolvable (MulAut S ⧸ (MulAut.conj : S →* MulAut S).range) := S:Typeinst✝²:Group Sinst✝¹:Fintype Sinst✝:IsSimpleGroup ShS:∃ a b, ¬Commute a b⊢ IsSolvable (MulAut S ⧸ MulAut.conj.range)
All goals completed! 🐙Shafarevich's relation-rank bound
shafarevich_relation_rank_bound
Submitter: Kim Morrison.
Notes: For a number field F and odd prime p, with G = Gal(F^{un,p}/F) the Galois group of the maximal unramified pro-p extension, the relation rank r(G) = dim_{𝔽_p} H²(G; 𝔽_p) is finite and r(G) ≤ d(G) + (r₁ + r₂ - 1) + δ_p(F), where d(G) is the generator rank, r₁/r₂ are the numbers of real/complex places of F, and δ_p(F) = 1 iff F contains a primitive p-th root of unity. The statement rests on substantial trusted scaffolding (non-holes): the bespoke construction MaxUnramifiedProPGaloisGroup (with IsEverywhereUnramified and maximalUnramifiedProPF) fixing Gal(F^{un,p}/F), and the rank definitions generatorRank, relationRank, H2Finite — a solver proves the inequality about these definitions, whose correctness is part of the trusted statement. This is one of the two external inputs taken as a hypothesis in Logical Intelligence's formalization of the disproof of Erdős's unit-distance conjecture (Hyp_ShafarevichRelationRankBound). It was reviewed for faithfulness against Mayer Theorem 5.1 (S=∅) and Koch 11.5/11.8; the unit-rank term r₁+r₂-1 and the root-of-unity correction match Mayer's corrected statement, and the MaxUnramifiedProPGaloisGroup construction was checked as a faithful (non-vacuous) maximal unramified pro-p extension in the source development (whose universal-property/maximality lemmas are not shipped with this problem — only the definitions are).
Source: D. C. Mayer, *New number fields with known p-class tower*, Tatra Mt. Math. Publ. 64 (2015), 21–57 (Theorem 5.1, S=∅; arXiv:1510.00565); H. Koch, *Galois Theory of p-Extensions*, Springer 2002 (Theorems 11.5 and 11.8); I. R. Shafarevich, *Extensions with prescribed ramification points* (1963). Lean hypothesis: https://github.com/logical-intelligence/erdos-unit-distance (Hyp_ShafarevichRelationRankBound).
Informal solution: Compute the cohomology of the pro-p group G = Gal(F^{un,p}/F) via class field theory. The generator rank d(G) = dim H¹(G; 𝔽_p) is the p-rank of the ray/Hilbert class field data, and the relation rank r(G) = dim H²(G; 𝔽_p) is bounded using the global Euler-characteristic / Poitou–Tate duality for the maximal unramified pro-p extension: the difference r(G) - d(G) is controlled by the unit group and the p-th roots of unity, giving r(G) - d(G) ≤ (r₁ + r₂ - 1) + δ_p(F) (the Dirichlet unit rank plus the δ-term recording whether ζ_p ∈ F). Faithful to Mayer's Theorem 5.1 with empty ramification set S.
theorem shafarevich_relation_rank_bound (F : Type) [Field F] [NumberField F] (p : ℕ) [Fact p.Prime] (_hpOdd : Odd p) :
LeanEval.NumberTheory.H2Finite p (MaxUnramifiedProPGaloisGroup F p) ∧
(open Classical in
relationRank p (MaxUnramifiedProPGaloisGroup F p) ≤
generatorRank (MaxUnramifiedProPGaloisGroup F p) +
(NumberField.InfinitePlace.nrRealPlaces F +
NumberField.InfinitePlace.nrComplexPlaces F - 1) +
(if ∃ ζ : F, IsPrimitiveRoot ζ p then 1 else 0)) := F:Typeinst✝²:Field Finst✝¹:NumberField Fp:ℕinst✝:Fact (Nat.Prime p)_hpOdd:Odd p⊢ H2Finite p (MaxUnramifiedProPGaloisGroup F p) ∧
relationRank p (MaxUnramifiedProPGaloisGroup F p) ≤
generatorRank (MaxUnramifiedProPGaloisGroup F p) +
(InfinitePlace.nrRealPlaces F + InfinitePlace.nrComplexPlaces F - 1) +
if ∃ ζ, IsPrimitiveRoot ζ p then 1 else 0
All goals completed! 🐙Smale conjecture (Hatcher) in relative parameterized form
Submitter: Kim Morrison.
Notes: Hatcher's 1983 theorem that Diff(S3) is homotopy equivalent to O(4), stated in the relative-parameterized-family form (families on a compact manifold-with-boundary X whose boundary already factors through O(4) deform rel boundary to a family fully factoring through O(4)). Mathlib does not yet carry the C-infinity topology on Diffeomorph, which would be needed for the direct homotopy-equivalence formulation.
Source: A. Hatcher, A proof of the Smale conjecture, Diff(S3) = O(4), Ann. of Math. 117 (1983).
Informal solution: Hatcher proves Diff(S3) is homotopy equivalent to O(4) by analyzing configurations of 2-spheres in S3 (the bigon criterion) and deducing by induction that every self-diffeomorphism is isotopic to a linear one, with all higher parameterized versions handled by the same incompressible-surface machinery.
theorem smale_conjecture {n : ℕ} [NeZero n]
(X : Type) [TopologicalSpace X] [T2Space X] [SecondCountableTopology X]
[ChartedSpace (EuclideanHalfSpace n) X] [IsManifold (𝓡∂ n) ∞ X]
[CompactSpace X]
(F F' : X × sphere (0 : EuclideanSpace ℝ (Fin 4)) 1 →
sphere (0 : EuclideanSpace ℝ (Fin 4)) 1)
(hF : ContMDiff ((𝓡∂ n).prod (𝓡 3)) (𝓡 3) ∞ F)
(hF' : ContMDiff ((𝓡∂ n).prod (𝓡 3)) (𝓡 3) ∞ F')
(hFinv₁ : ∀ x p, F (x, F' (x, p)) = p)
(hFinv₂ : ∀ x p, F' (x, F (x, p)) = p)
(ψ_bdry : (𝓡∂ n).boundary X → Matrix.orthogonalGroup (Fin 4) ℝ)
(hψ_bdry_cont : Continuous ψ_bdry)
(hF_bdry : ∀ (b : (𝓡∂ n).boundary X)
(p : sphere (0 : EuclideanSpace ℝ (Fin 4)) 1),
(F ((b : X), p) : EuclideanSpace ℝ (Fin 4)) =
Matrix.UnitaryGroup.toLinearEquiv (ψ_bdry b)
(p : EuclideanSpace ℝ (Fin 4))) :
∃ (ψ : X → Matrix.orthogonalGroup (Fin 4) ℝ)
(H H' : X × unitInterval × sphere (0 : EuclideanSpace ℝ (Fin 4)) 1 →
sphere (0 : EuclideanSpace ℝ (Fin 4)) 1),
Continuous ψ ∧
(∀ b : (𝓡∂ n).boundary X, ψ (b : X) = ψ_bdry b) ∧
ContMDiff ((𝓡∂ n).prod ((𝓡∂ 1).prod (𝓡 3))) (𝓡 3) ∞ H ∧
ContMDiff ((𝓡∂ n).prod ((𝓡∂ 1).prod (𝓡 3))) (𝓡 3) ∞ H' ∧
(∀ x t p, H (x, t, H' (x, t, p)) = p) ∧
(∀ x t p, H' (x, t, H (x, t, p)) = p) ∧
(∀ x p, H (x, 0, p) = F (x, p)) ∧
(∀ x (p : sphere (0 : EuclideanSpace ℝ (Fin 4)) 1),
(H (x, 1, p) : EuclideanSpace ℝ (Fin 4)) =
Matrix.UnitaryGroup.toLinearEquiv (ψ x)
(p : EuclideanSpace ℝ (Fin 4))) ∧
(∀ (b : (𝓡∂ n).boundary X)
(t : unitInterval)
(p : sphere (0 : EuclideanSpace ℝ (Fin 4)) 1),
H ((b : X), t, p) = F ((b : X), p)) := n:ℕinst✝⁶:NeZero nX:Typeinst✝⁵:TopologicalSpace Xinst✝⁴:T2Space Xinst✝³:SecondCountableTopology Xinst✝²:ChartedSpace (EuclideanHalfSpace n) Xinst✝¹:IsManifold (𝓡∂ n) ∞ Xinst✝:CompactSpace XF:X × ↑(sphere 0 1) → ↑(sphere 0 1)F':X × ↑(sphere 0 1) → ↑(sphere 0 1)hF:ContMDiff ((𝓡∂ n).prod (𝓡 3)) (𝓡 3) ∞ FhF':ContMDiff ((𝓡∂ n).prod (𝓡 3)) (𝓡 3) ∞ F'hFinv₁:∀ (x : X) (p : ↑(sphere 0 1)), F (x, F' (x, p)) = phFinv₂:∀ (x : X) (p : ↑(sphere 0 1)), F' (x, F (x, p)) = pψ_bdry:↑(ModelWithCorners.boundary X) → ↥(Matrix.orthogonalGroup (Fin 4) ℝ)hψ_bdry_cont:Continuous ψ_bdryhF_bdry:∀ (b : ↑(ModelWithCorners.boundary X)) (p : ↑(sphere 0 1)),
(↑(F (↑b, p))).ofLp = (Matrix.UnitaryGroup.toLinearEquiv (ψ_bdry b)) (↑p).ofLp⊢ ∃ ψ H H',
Continuous ψ ∧
(∀ (b : ↑(ModelWithCorners.boundary X)), ψ ↑b = ψ_bdry b) ∧
ContMDiff ((𝓡∂ n).prod ((𝓡∂ 1).prod (𝓡 3))) (𝓡 3) ∞ H ∧
ContMDiff ((𝓡∂ n).prod ((𝓡∂ 1).prod (𝓡 3))) (𝓡 3) ∞ H' ∧
(∀ (x : X) (t : ↑unitInterval) (p : ↑(sphere 0 1)), H (x, t, H' (x, t, p)) = p) ∧
(∀ (x : X) (t : ↑unitInterval) (p : ↑(sphere 0 1)), H' (x, t, H (x, t, p)) = p) ∧
(∀ (x : X) (p : ↑(sphere 0 1)), H (x, 0, p) = F (x, p)) ∧
(∀ (x : X) (p : ↑(sphere 0 1)),
(↑(H (x, 1, p))).ofLp = (Matrix.UnitaryGroup.toLinearEquiv (ψ x)) (↑p).ofLp) ∧
∀ (b : ↑(ModelWithCorners.boundary X)) (t : ↑unitInterval) (p : ↑(sphere 0 1)),
H (↑b, t, p) = F (↑b, p)
All goals completed! 🐙Pannwitz–Kuperberg quadrisecant theorem
Submitter: Kim Morrison.
Notes: Every smooth knot that is not the unknot has a quadrisecant (a line meeting it in four points). Trusted helpers (IsSmoothKnot, IsUnknotted, HasQuadrisecant, …) are non-holes. Mathlib has no knot theory. The Fáry–Milnor total-curvature theorem of §161 is a separate lean-eval problem. Candidate from §161 of the Knill survey.
Source: E. Pannwitz (1933); G. Kuperberg, *Quadrisecants of knots and links*, J. Knot Theory Ramif. 3 (1994). Knill, §161.
Informal solution: Unavailable.
theorem smooth_knot_has_quadrisecant {r : ℝ → LeanEval.KnotTheory.Quadrisecant.Space} (_hknot : LeanEval.KnotTheory.Quadrisecant.IsSmoothKnot r) (_hnontrivial : ¬ LeanEval.KnotTheory.Quadrisecant.IsUnknotted r) :
LeanEval.KnotTheory.Quadrisecant.HasQuadrisecant r := r:ℝ → Space_hknot:IsSmoothKnot r_hnontrivial:¬IsUnknotted r⊢ HasQuadrisecant r
All goals completed! 🐙Sobolev embedding theorem (Morrey regime)
Submitter: Kim Morrison.
Notes: If n < p, 0 < α ≤ 1, and r + α < k − n/p, then every W^(k,p)(ℝⁿ) function has a C^(r,α) representative. Weak-derivative Sobolev spaces W^(k,p) are defined via the distributional pairing ∫ f · D^m φ = (−1)^|m| ∫ g · φ on smooth compactly-supported φ, with the LocallyIntegrable f conjunct essential to faithfulness — without it, non-a.e.-measurable f would collapse every distributional pairing to the default value the Bochner integral assigns outside integrability hypotheses, so f would vacuously satisfy W^(k,p) membership. The Hölder space C^(r,α) here imposes r-times continuous differentiability, α-Hölder continuity of the r-th derivative, and boundedness of derivatives up to order r. The theorem is listed as §111 in Knill's *Some Fundamental Theorems in Mathematics*.
Source: C.B. Morrey, 'Functions of several variables and absolute continuity, II', Duke Math. J. 6 (1940) 187–215; full Sobolev-embedding development in *Multiple Integrals in the Calculus of Variations*, Springer 1966. Listed as §111 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The Morrey-regime proof has two pieces. (1) **Morrey's lemma**: if f ∈ W^(1,p)(B_1(0)) with p > n, then f has a (1 − n/p)-Hölder continuous representative on B_1(0), with explicit Hölder constant `C · ‖∇f‖_{L^p}`. The proof bounds `|f(x) − f(y)|` by averaging the radial fundamental-solution potential representation against `∇f` and applying Hölder's inequality with exponent p — using p > n to absorb the singular kernel `|x − z|^{1−n}` in L^{p'}. (2) **Iteration on derivatives**: for k > 1, apply Morrey's lemma to D^{k−1} f ∈ W^(1,p), yielding (1 − n/p)-Hölder continuity of the (k−1)-th derivative, hence f ∈ C^{k−1, 1 − n/p}. The general r + α < k − n/p case interpolates: every derivative up to order r is bounded, the r-th derivative is α-Hölder for any α < min(1, k − n/p − r). Mathlib has Gagliardo–Nirenberg–Sobolev (the subcritical L^p → L^q embedding, `eLpNorm_le_eLpNorm_fderiv_*`), Bessel-potential `H^{s,p}` spaces (`TemperedDistribution.MemSobolev`), and `HolderWith`/`iteratedFDeriv`, but no weak-derivative Sobolev space `W^{k,p}` and no Morrey-regime embedding into Hölder spaces.
theorem sobolev_embedding {n k r : ℕ} {α p : ℝ}
(_hp : (n : ℝ) < p) (_hα : 0 < α) (_hα1 : α ≤ 1)
(_hgap : (r : ℝ) + α < (k : ℝ) - n / p)
(f : LeanEval.Analysis.SobolevMorreyProblem.E n → ℝ) (_hf : LeanEval.Analysis.SobolevMorreyProblem.MemSobolevWk k (ENNReal.ofReal p) f) :
∃ g : LeanEval.Analysis.SobolevMorreyProblem.E n → ℝ, f =ᵐ[volume] g ∧ LeanEval.Analysis.SobolevMorreyProblem.MemHolder r α g := n:ℕk:ℕr:ℕα:ℝp:ℝ_hp:↑n < p_hα:0 < α_hα1:α ≤ 1_hgap:↑r + α < ↑k - ↑n / pf:E n → ℝ_hf:MemSobolevWk k (ENNReal.ofReal p) f⊢ ∃ g, f =ᶠ[ae volume] g ∧ LeanEval.Analysis.SobolevMorreyProblem.MemHolder r α g
All goals completed! 🐙Solvable extensions ↔ solvable groups (the missing converse in Abel–Ruffini)
Submitter: Kim Morrison.
Notes: §58 of Knill's 'Some Fundamental Theorems in Mathematics' (additional statement). For F : Field of characteristic zero and a nonzero p : F[X], every root of p in AlgebraicClosure F lies in solvableByRad F (AlgebraicClosure F) iff p.Gal is solvable. Mathlib has the → direction via isSolvable_gal_of_irreducible / isSolvable_gal_minpoly in Mathlib/FieldTheory/AbelRuffini.lean (the file header states it proves 'one direction' of Abel–Ruffini). The ← direction is the Kummer-theory content and is the missing piece. The polynomial-level iff is stronger than the irreducible/minpoly form already in mathlib.
Source: É. Galois (1832); the iff appears in standard texts such as Stewart, *Galois Theory* (Theorem 18.10); Lang, *Algebra* (VI §7); Rotman, *Galois Theory* (Theorem 73). Listed as §58 (additional statement 2) in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Classical proof of the ← direction: assume p.Gal is solvable. Adjoin to F a sufficient root of unity (a primitive n-th root for n = |p.Gal|) to obtain F' = F(ζ); the Galois group of the splitting field L of p over F' is a subgroup of Gal(p over F) hence still solvable, and F'/F is a radical extension. Take a composition series G = G₀ ▹ G₁ ▹ ⋯ ▹ Gₖ = 1 of Gal(L/F') with each factor cyclic of prime order. The corresponding tower of fixed fields is F' = L^{G₀} ⊂ L^{G₁} ⊂ ⋯ ⊂ L^{Gₖ} = L, with each step Galois cyclic of prime order over a field containing the relevant root of unity; by Kummer theory each step is a pure radical extension. The splitting field of p sits inside L, so every root of p lies in solvableByRad F (AlgebraicClosure F). The → direction follows from the existing mathlib lemma isSolvable_gal_of_irreducible applied to each irreducible factor.
theorem solvable_iff_solvableByRad (F : Type*) [Field F] [CharZero F]
(p : F[X]) (_hp : p ≠ 0) :
(∀ x : AlgebraicClosure F, aeval x p = 0 →
x ∈ solvableByRad F (AlgebraicClosure F)) ↔ IsSolvable p.Gal := F:Type u_1inst✝¹:Field Finst✝:CharZero Fp:F[X]_hp:p ≠ 0⊢ (∀ (x : AlgebraicClosure F), (aeval x) p = 0 → x ∈ solvableByRad F (AlgebraicClosure F)) ↔ IsSolvable p.Gal
All goals completed! 🐙230 space groups (Fedorov 1891 / Schoenflies 1891)
Submitter: Kim Morrison.
Notes: In dimension 3 there are exactly 230 space groups (orientation-preserving affine equivalence), 219 if enantiomorphic pairs are identified (general affine equivalence), and 65 of the 230 are Sohncke groups — those whose isometries are all orientation-preserving. The three counts come from two equivalences on crystallographic groups: AffinelyEquivalent (Aff(ℝ³)-conjugacy) vs AffOPEquivalent (orientation-preserving Aff(ℝ³)-conjugacy), and a subfamily restriction to crystallographic groups whose elements are all orientation-preserving. For a reference, see §94 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: E. Fedorov, 'Симметрія правильныхъ системъ фигуръ' (Symmetry of regular systems of figures), Trans. Min. Soc. St. Petersburg 28 (1891) 1–146; A. Schoenflies, *Krystallsysteme und Krystallstructur*, Teubner 1891, independently. Listed as §94 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classification extends the wallpaper-group structure to dimension 3: (1) Bieberbach gives every 3-dimensional crystallographic group G a finite-index translation subgroup Λ of rank 3 (the **Bravais lattice**, 14 inequivalent types in ℝ³: triclinic P; monoclinic P, C; orthorhombic P, C, I, F; tetragonal P, I; trigonal/rhombohedral R; hexagonal P; cubic P, I, F). (2) The **point group** G / Λ embeds into O(3) and is one of the 32 crystallographic point groups — finite subgroups of O(3) preserving some 3D Bravais lattice. (3) For each (Bravais lattice, point group) pair, classify group extensions of the point group by Λ up to affine conjugacy: of the 32 point groups, the 230 space groups arise. (4) The 219 count identifies the 11 chiral pairs of enantiomorphic space groups (e.g. P3₁ ↔ P3₂); the 65 count restricts to point groups inside SO(3) (the **Sohncke groups**). Mathlib has the basic affine-isometry infrastructure but no Bravais-lattice classification, no crystallographic point groups, no extension cohomology in this dimension, no Sohncke subfamily.
theorem space_groups :
crystallographicCountOP 3 = 230 ∧
crystallographicCount 3 = 219 ∧
crystallographicCountOPOnly 3 = 65 := ⊢ crystallographicCountOP 3 = 230 ∧ crystallographicCount 3 = 219 ∧ crystallographicCountOPOnly 3 = 65
All goals completed! 🐙Differentiable sphere theorem (Brendle–Schoen)
Submitter: Kim Morrison.
Notes: Under the same hypotheses as the topological sphere theorem (closed, simply-connected, strictly quarter-pinched, d ≥ 2), the manifold is diffeomorphic to the standard d-sphere (Brendle–Schoen 2007, via Ricci flow). Shares the §121 trusted helpers (IsMetricCompatible, curv, QuarterPinched). Mathlib has no Ricci flow or curvature. Candidate from §121 of the Knill survey (additional 1).
Source: S. Brendle & R. Schoen, *Manifolds with 1/4-pinched curvature are space forms*, J. AMS 22 (2009). Knill, *Some fundamental theorems in mathematics*, §121.
Informal solution: Brendle–Schoen via Hamilton's Ricci flow. Run the normalized Ricci flow ġ = −2Ric(g) + (2/d)r̄ g from the quarter-pinched metric. The key analytic input is that the strict quarter-pinching condition (more precisely, nonnegative isotropic curvature on M × ℝ²) is preserved by the flow (Brendle–Schoen's curvature-pinching estimates via the maximum principle for the curvature-tensor reaction–diffusion equation), and the flow converges, after rescaling, to a constant-curvature round metric. Hence M is diffeomorphic to the round sphere. Requires Ricci flow and the pinching-preservation estimates, none in Mathlib.
theorem differentiable_sphere_theorem [I.Boundaryless] [T2Space M] [CompactSpace M] [SimplyConnectedSpace M]
(hdim : 2 ≤ Module.finrank ℝ E)
(cov : CovariantDerivative I E (TangentSpace I (M := M)))
[ContMDiffCovariantDerivative cov ∞]
(_htor : cov.torsion = 0) (_hmet : LeanEval.Geometry.SphereTheorem.IsMetricCompatible cov)
(_hpinch : LeanEval.Geometry.SphereTheorem.QuarterPinched cov) :
Nonempty
(M ≃ₘ⟮I, 𝓡 (Module.finrank ℝ E)⟯
(sphere (0 : EuclideanSpace ℝ (Fin (Module.finrank ℝ E + 1))) 1)) := E:Type u_1inst✝¹⁴:NormedAddCommGroup Einst✝¹³:NormedSpace ℝ Einst✝¹²:FiniteDimensional ℝ Einst✝¹¹:CompleteSpace EH:Type u_2inst✝¹⁰:TopologicalSpace HI:ModelWithCorners ℝ E HM:Type u_3inst✝⁹:TopologicalSpace Minst✝⁸:ChartedSpace H Minst✝⁷:IsManifold I ∞ Minst✝⁶:RiemannianBundle fun x => TangentSpace I xinst✝⁵:IsContMDiffRiemannianBundle I ∞ E fun x => TangentSpace I xinst✝⁴:I.Boundarylessinst✝³:T2Space Minst✝²:CompactSpace Minst✝¹:SimplyConnectedSpace Mhdim:2 ≤ Module.finrank ℝ Ecov:CovariantDerivative I E (TangentSpace I)inst✝:cov.ContMDiffCovariantDerivative ∞_htor:cov.torsion = 0_hmet:IsMetricCompatible cov_hpinch:QuarterPinched cov⊢ Nonempty (M ≃ₘ⟮I, 𝓡 Module.finrank ℝ E⟯ ↑(sphere 0 1))
All goals completed! 🐙Topological sphere theorem (Berger–Klingenberg–Rauch)
Submitter: Kim Morrison.
Notes: A closed, simply-connected, strictly quarter-pinched (sectional curvature in (1,4]) smooth Riemannian d-manifold (d ≥ 2) is homeomorphic to the standard d-sphere. Trusted helpers IsMetricCompatible, curv (Riemann curvature tensor), QuarterPinched (non-holes); following §38 the Levi-Civita connection is hypothesized as a smooth torsion-free metric-compatible covariant derivative (Mathlib has the interface but does not construct Levi-Civita). Mathlib has no Riemann/sectional curvature or pinching. Candidate from §121 of the Knill survey.
Source: M. Berger; W. Klingenberg; H. E. Rauch (topological sphere theorem, 1951–1961). Knill, *Some fundamental theorems in mathematics*, §121.
Informal solution: Classical sphere theorem via Toponogov/Klingenberg. From strict quarter-pinching, Klingenberg's injectivity-radius estimate gives inj(M) ≥ π/√(max K). Cover M by two metric balls around a point and its farthest point; Toponogov's triangle comparison shows each is a disk and they glue along a sphere, exhibiting M as a twisted sphere, hence homeomorphic to Sᵈ (Brown's theorem / Reeb). Needs the curvature comparison geometry (Toponogov, Rauch, Klingenberg injectivity radius) absent from Mathlib.
theorem sphere_theorem [I.Boundaryless] [T2Space M] [CompactSpace M] [SimplyConnectedSpace M]
(hdim : 2 ≤ Module.finrank ℝ E)
(cov : CovariantDerivative I E (TangentSpace I (M := M)))
[ContMDiffCovariantDerivative cov ∞]
(_htor : cov.torsion = 0) (_hmet : LeanEval.Geometry.SphereTheorem.IsMetricCompatible cov)
(_hpinch : LeanEval.Geometry.SphereTheorem.QuarterPinched cov) :
Nonempty
(M ≃ₜ sphere (0 : EuclideanSpace ℝ (Fin (Module.finrank ℝ E + 1))) 1) := E:Type u_1inst✝¹⁴:NormedAddCommGroup Einst✝¹³:NormedSpace ℝ Einst✝¹²:FiniteDimensional ℝ Einst✝¹¹:CompleteSpace EH:Type u_2inst✝¹⁰:TopologicalSpace HI:ModelWithCorners ℝ E HM:Type u_3inst✝⁹:TopologicalSpace Minst✝⁸:ChartedSpace H Minst✝⁷:IsManifold I ∞ Minst✝⁶:RiemannianBundle fun x => TangentSpace I xinst✝⁵:IsContMDiffRiemannianBundle I ∞ E fun x => TangentSpace I xinst✝⁴:I.Boundarylessinst✝³:T2Space Minst✝²:CompactSpace Minst✝¹:SimplyConnectedSpace Mhdim:2 ≤ Module.finrank ℝ Ecov:CovariantDerivative I E (TangentSpace I)inst✝:cov.ContMDiffCovariantDerivative ∞_htor:cov.torsion = 0_hmet:IsMetricCompatible cov_hpinch:QuarterPinched cov⊢ Nonempty (M ≃ₜ ↑(sphere 0 1))
All goals completed! 🐙Local stable/unstable sets at a hyperbolic fixed point (set-level Hadamard–Perron)
Submitter: Kim Morrison.
Notes: For a C¹ map f : ℝⁿ → ℝⁿ with an invertible hyperbolic fixed point x₀ (no eigenvalue of dfₓ₀ on the unit circle, plus invertibility to exclude the degenerate zero-eigenvalue case), some open neighbourhood U ∋ x₀ carries the genuinely local stable set Wˢ = {x | ∀ k, f^[k] x ∈ U ∧ f^[k] x → x₀} and the local unstable set Wᵘ = {x | ∃ backward orbit y with y 0 = x, y k ∈ U for all k, and y → x₀}, with Wˢ ∩ Wᵘ = {x₀}. The 'orbit stays in U' clause is essential: without it, homoclinic points (forward and backward limit x₀ with excursions outside U) would falsify Wˢ ∩ Wᵘ = {x₀} in systems with homoclinic dynamics. This submission ships the set-level topological shadow of Hadamard–Perron; the full theorem additionally asserts that Wˢ, Wᵘ are immersed C¹ submanifolds tangent to the stable/unstable eigenspaces (same proof difficulty), which this Lean statement does not encode. §104 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: J. Hadamard, 'Sur l'itération et les solutions asymptotiques des équations différentielles', Bull. Soc. Math. France 29 (1901); O. Perron, 'Über Stabilität und asymptotisches Verhalten der Integrale von Differentialgleichungssystemen', Math. Z. 29 (1929) 129–160. Listed as §104 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The Hadamard graph-transform proof: write `f` near `x₀` as `f(x₀ + v) = x₀ + A v + g(v)` with `A = df(x₀)`, `g(v) = o(‖v‖)`. The hyperbolic splitting `ℝⁿ = Eˢ ⊕ Eᵘ` (stable / unstable eigenspaces of `A`) lets one parametrise the candidate `Wˢ` as the graph of a Lipschitz function `σ : Eˢ → Eᵘ` near 0, with `σ(0) = 0`. The graph transform `G(σ) := graph of (the new function whose graph is f(graph σ) ∩ small box)` is a contraction on the Banach space of Lipschitz functions `Eˢ → Eᵘ` of small Lipschitz constant, because the stable direction contracts under `A` and the unstable direction expands (Banach fixed point). The unique fixed-point graph is the local stable manifold; the same argument with `f⁻¹` gives `Wᵘ`. Hyperbolicity forces `Wˢ ∩ Wᵘ = {x₀}`: a point on both has its forward iterates bounded (lying on the bounded `Wˢ`) and its backward iterates bounded too, but the hyperbolic splitting forces such doubly-bounded orbits to be {x₀}. Mathlib has `fderiv`, `ContDiff`, `Filter.Tendsto`, `Polynomial.roots`, and `LinearMap.charpoly`, but no Hadamard–Perron theorem, no graph-transform machinery, no stable/unstable manifold framework, and no `IsHyperbolicLinear` predicate.
theorem stable_unstable_manifolds_exist (n : ℕ) (f : LeanEval.Dynamics.StableUnstableManifoldsProblem.E n → LeanEval.Dynamics.StableUnstableManifoldsProblem.E n) (x₀ : LeanEval.Dynamics.StableUnstableManifoldsProblem.E n)
(_hf : ContDiffAt ℝ 1 f x₀)
(_hfix : f x₀ = x₀)
(_hhyp : LeanEval.Dynamics.StableUnstableManifoldsProblem.IsHyperbolicLinear (fderiv ℝ f x₀))
(_hf_inv : (fderiv ℝ f x₀).IsInvertible) :
∃ U : Set (LeanEval.Dynamics.StableUnstableManifoldsProblem.E n), IsOpen U ∧ x₀ ∈ U ∧
∃ Ws Wu : Set (LeanEval.Dynamics.StableUnstableManifoldsProblem.E n),
Ws = {x | (∀ k : ℕ, f^[k] x ∈ U) ∧
Tendsto (fun k => f^[k] x) atTop (𝓝 x₀)} ∧
Wu = {x | ∃ y : ℕ → LeanEval.Dynamics.StableUnstableManifoldsProblem.E n,
y 0 = x ∧
(∀ k : ℕ, y k ∈ U) ∧
(∀ k : ℕ, f (y (k + 1)) = y k) ∧
Tendsto y atTop (𝓝 x₀)} ∧
Ws ∩ Wu = {x₀} := n:ℕf:E n → E nx₀:E n_hf:ContDiffAt ℝ 1 f x₀_hfix:f x₀ = x₀_hhyp:IsHyperbolicLinear (fderiv ℝ f x₀)_hf_inv:(fderiv ℝ f x₀).IsInvertible⊢ ∃ U,
IsOpen U ∧
x₀ ∈ U ∧
∃ Ws Wu,
Ws = {x | (∀ (k : ℕ), f^[k] x ∈ U) ∧ Tendsto (fun k => f^[k] x) atTop (𝓝 x₀)} ∧
Wu = {x | ∃ y, y 0 = x ∧ (∀ (k : ℕ), y k ∈ U) ∧ (∀ (k : ℕ), f (y (k + 1)) = y k) ∧ Tendsto y atTop (𝓝 x₀)} ∧
Ws ∩ Wu = {x₀}
All goals completed! 🐙Sturm's theorem
Submitter: Kim Morrison.
Notes: §97 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. The number of distinct real roots of a squarefree real polynomial in an open interval equals the drop in the number of sign variations of its Sturm chain across the interval. The Sturm chain, the sign-variation counter, and the variation function σ are defined in the problem; mathlib has none of them. The chain uses the negated-remainder convention p_{k+1} = -(p_{k-1} mod p_k), for which the count is σ(a) - σ(b). Sturm's theorem is formalized in Isabelle/HOL (Manuel Eberl, AFP entry Sturm_Sequences) in the same distinct-root form.
Source: J. C. F. Sturm (1829). Listed as §97 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). Formalized in Isabelle/HOL by Manuel Eberl (AFP entry Sturm_Sequences).
Informal solution: As x increases across a simple root of p exactly one sign variation of the Sturm chain is lost and none is gained — the standard sign analysis of consecutive chain entries at a root, using squarefreeness so that p and p' have no common root — while across a root of an interior chain entry the variation count is unchanged. Between roots σ is locally constant. Hence the number of distinct roots of p in (a, b) equals σ(a) - σ(b).
theorem sturm (p : ℝ[X]) (hp : Squarefree p) {a b : ℝ} (hab : a < b)
(ha : p.eval a ≠ 0) (hb : p.eval b ≠ 0) :
((p.roots.toFinset).filter (fun x => a < x ∧ x < b)).card =
sigma p a - sigma p b := p:ℝ[X]hp:Squarefree pa:ℝb:ℝhab:a < bha:eval a p ≠ 0hb:eval b p ≠ 0⊢ {x ∈ p.roots.toFinset | a < x ∧ x < b}.card = sigma p a - sigma p b
All goals completed! 🐙Sturm separation theorem
Submitter: Kim Morrison.
Notes: Between consecutive zeros of one solution of a second-order linear homogeneous ODE, any linearly independent solution has exactly one zero.
Source: C. Sturm, Mémoire sur les équations différentielles linéaires du second ordre, 1836.
Informal solution: On (a, b), y_1 has constant sign and never vanishes. The Wronskian W = y_1 y_2' - y_2 y_1' satisfies W' = -p W (Liouville), so W has constant sign on J. Hence (y_2 / y_1)' = -W / y_1^2 has constant sign and y_2 / y_1 is strictly monotone on (a, b). The Wronskian also forces y_2(a), y_2(b) ≠ 0 (else W(a) or W(b) would vanish, contradicting nonvanishing of W). If y_2 had no zero in (a, b), continuity gives sign(y_2(a)) = sign(y_2(b)); then y_2 / y_1 tends to the same infinite sign at both endpoints, contradicting strict monotonicity. Thus y_2 has a zero in (a, b). Uniqueness follows because a strictly monotone function can cross 0 at most once.
theorem sturm_separation (p q y₁ y₂ : ℝ → ℝ) (a b : ℝ) (hab : a < b)
(J : Set ℝ) (hJ_open : IsOpen J) (hJ_conn : IsPreconnected J)
(hJ_sub : Set.Icc a b ⊆ J)
(hp : ContinuousOn p J) (hq : ContinuousOn q J)
(hy₁ : ∀ x ∈ J, HasDerivAt y₁ (deriv y₁ x) x)
(hy₁' : ∀ x ∈ J, HasDerivAt (deriv y₁) (-(p x * deriv y₁ x + q x * y₁ x)) x)
(hy₂ : ∀ x ∈ J, HasDerivAt y₂ (deriv y₂ x) x)
(hy₂' : ∀ x ∈ J, HasDerivAt (deriv y₂) (-(p x * deriv y₂ x + q x * y₂ x)) x)
(hW : ∃ x₀ ∈ J, y₁ x₀ * deriv y₂ x₀ - y₂ x₀ * deriv y₁ x₀ ≠ 0)
(hza : y₁ a = 0) (hzb : y₁ b = 0)
(hne : ∀ x ∈ Set.Ioo a b, y₁ x ≠ 0) :
∃! c, c ∈ Set.Ioo a b ∧ y₂ c = 0 := p:ℝ → ℝq:ℝ → ℝy₁:ℝ → ℝy₂:ℝ → ℝa:ℝb:ℝhab:a < bJ:Set ℝhJ_open:IsOpen JhJ_conn:IsPreconnected JhJ_sub:Set.Icc a b ⊆ Jhp:ContinuousOn p Jhq:ContinuousOn q Jhy₁:∀ x ∈ J, HasDerivAt y₁ (deriv y₁ x) xhy₁':∀ x ∈ J, HasDerivAt (deriv y₁) (-(p x * deriv y₁ x + q x * y₁ x)) xhy₂:∀ x ∈ J, HasDerivAt y₂ (deriv y₂ x) xhy₂':∀ x ∈ J, HasDerivAt (deriv y₂) (-(p x * deriv y₂ x + q x * y₂ x)) xhW:∃ x₀ ∈ J, y₁ x₀ * deriv y₂ x₀ - y₂ x₀ * deriv y₁ x₀ ≠ 0hza:y₁ a = 0hzb:y₁ b = 0hne:∀ x ∈ Set.Ioo a b, y₁ x ≠ 0⊢ ∃! c, c ∈ Set.Ioo a b ∧ y₂ c = 0
All goals completed! 🐙Catalan generating function via compositional inversion
substInv_X_sub_X_sq_eq_catalan
Submitter: Kim Morrison.
Notes: The compositional inverse of X - X² is the generating function for Catalan numbers. This is a classical application of Lagrange inversion in enumerative combinatorics, connecting formal power series inversion to Dyck paths, binary trees, and triangulations.
Source: E. Catalan, Note sur une équation aux différences finies, 1838; J.-L. Lagrange, Nouvelle méthode pour résoudre les équations littérales, 1770.
Informal solution: The compositional inverse C(x) satisfies C - C² = x, giving C = (1 - √(1-4x))/2. By the binomial series, its coefficients are the Catalan numbers C_n = (2n choose n)/(n+1).
theorem substInv_X_sub_X_sq_eq_catalan (n : ℕ) :
haveI : Invertible (coeff 1 ((X : ℚ⟦X⟧) - X ^ 2)) := n:ℕ⊢ Invertible ((coeff 1) (X - X ^ 2))
n:ℕ⊢ Invertible 1; All goals completed! 🐙
coeff (n + 1) (substInv ((X : ℚ⟦X⟧) - X ^ 2)) =
(Nat.choose (2 * n) n : ℚ) / (↑n + 1) := n:ℕ⊢ (coeff (n + 1)) (X - X ^ 2).substInv = ↑((2 * n).choose n) / (↑n + 1)
All goals completed! 🐙Schur-Weyl duality: S_k image equals centralizer of GL(V) image
symAction_range_eq_centralizer_glAction
Submitter: Kim Morrison.
Notes: One direction of Schur-Weyl duality: the subalgebra of End(V^⊗k) generated by the S_k action (permuting factors) equals the centralizer of the subalgebra generated by the diagonal GL(V) action. Hypothesis `Invertible (k! : R)` over a field is exactly the Maschke condition for R[S_k].
Source: H. Weyl, The Classical Groups, 1939; I. Schur, Über die rationalen Darstellungen der allgemeinen linearen Gruppe, 1927.
Informal solution: Classical proof: any T ∈ End(V^⊗k) commuting with GL(V) acts the same way on tensors related by g^⊗k for every g, and by polarization (which uses k! invertible) the subalgebra {g^⊗k : g ∈ GL(V)} linearly spans the image of Sym^k(End V) in End(V^⊗k). Together with the semisimplicity of R[S_k] (Maschke, from the same k! hypothesis) and double commutant for finite-dimensional semisimple algebras, T lies in the R-subalgebra generated by the S_k action.
theorem symAction_range_eq_centralizer_glAction {R : Type*} [Field R]
{M : Type*} [AddCommGroup M] [Module R M] [FiniteDimensional R M]
{k : ℕ} [Invertible (k.factorial : R)] :
Algebra.adjoin R (Set.range (LeanEval.RepresentationTheory.symAction R M k)) =
Subalgebra.centralizer R (Set.range (LeanEval.RepresentationTheory.glAction R M k)) := R:Type u_1inst✝⁴:Field RM:Type u_2inst✝³:AddCommGroup Minst✝²:Module R Minst✝¹:FiniteDimensional R Mk:ℕinst✝:Invertible ↑k.factorial⊢ Algebra.adjoin R (Set.range ⇑(symAction R M k)) = Subalgebra.centralizer R (Set.range ⇑(glAction R M k))
All goals completed! 🐙Symplectic matrices have determinant 1
Submitter: Kim Morrison.
Notes: §39 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. For any commutative ring R and 2n × 2n symplectic matrix A over R (A * J * Aᵀ = J with J = [[0, -I], [I, 0]]), det A = 1. Taking determinants of AᵀJA = J only forces (det A)² = 1; the sign requires the Pfaffian argument. Mathlib has `Matrix.symplecticGroup` and proves `symplectic_det` (IsUnit (det A)) but the equals-1 claim is an explicit TODO in Mathlib/LinearAlgebra/SymplecticGroup.lean; no formalization of the identity was found in any other proof assistant.
Source: Folklore (Pfaffian computation). Listed as §39 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). Marked as an open TODO at the head of Mathlib/LinearAlgebra/SymplecticGroup.lean (rev 5450b53e5ddc).
Informal solution: Apply the Pfaffian: for any 2n × 2n matrix M and antisymmetric 2n × 2n matrix Ω, Pf(Mᵀ Ω M) = det(M) · Pf(Ω). With Ω = J (so Pf(J) ≠ 0) and Aᵀ J A = J for A ∈ Sp_{2n}(R), one gets Pf(J) = det(A) · Pf(J), hence det A = 1. (This requires the Pfaffian for matrices over a commutative ring R; the construction is purely algebraic.)
theorem symplectic_matrix_det {l R : Type*} [DecidableEq l] [Fintype l] [CommRing R]
{A : Matrix (l ⊕ l) (l ⊕ l) R} (_hA : A ∈ Matrix.symplecticGroup l R) :
A.det = 1 := l:Type u_1R:Type u_2inst✝²:DecidableEq linst✝¹:Fintype linst✝:CommRing RA:Matrix (l ⊕ l) (l ⊕ l) R_hA:A ∈ symplecticGroup l R⊢ A.det = 1
All goals completed! 🐙Szemerédi's theorem
Submitter: Kim Morrison.
Notes: §37 of Oliver Knill's 'Some Fundamental Theorems in Mathematics' (first additional statement of the section, generalizing Roth's theorem from 3-APs to k-APs). Every subset of ℕ of positive upper density contains arbitrarily long arithmetic progressions. Mathlib has Roth's theorem (roth_3ap_theorem_nat, the k = 3 case) but not the full Szemerédi theorem. As of 2026 it has not been formalized in any major proof assistant (a well-known open formalization target).
Source: E. Szemerédi, On sets of integers containing no k elements in arithmetic progression, Acta Arith. 27 (1975), 199-245. Listed as §37 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Szemerédi's original combinatorial proof relies on the Szemerédi regularity lemma plus a delicate density-increment argument. Furstenberg gave a measure-theoretic proof via multiple recurrence in ergodic theory (every measure-preserving system has the Multiple Recurrence Property for k commuting transformations). Gowers gave a Fourier-analytic proof introducing the Gowers uniformity norms U^k. Any of these formalisations is a major undertaking; all three structures (regularity, ergodic multiple recurrence, U^k norms) are absent from mathlib.
theorem szemeredi (A : Set ℕ) (h : 0 < upperDensity A) :
LeanEval.Combinatorics.ContainsArbitraryAPs A := A:Set ℕh:0 < upperDensity A⊢ ContainsArbitraryAPs A
All goals completed! 🐙Thue–Siegel–Roth theorem (irrationality measure ≤ 2 for algebraic irrationals)
Submitter: Kim Morrison.
Notes: Every irrational algebraic real is Diophantine: for every ε > 0 there exists C > 0 with C / q^(2+ε) < |x − p/q| for every p ∈ ℤ and q ∈ ℤ_{>0}. Equivalently, the irrationality measure of an algebraic irrational is at most 2. The sharp ∀ ε > 0 form is the content of Roth's theorem; the weaker ∃ ε > 0 form captures only the condition that x is not Liouville, which is the 1844 Liouville theorem already in mathlib. §65 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: Klaus Roth, 'Rational approximations to algebraic numbers', Mathematika 2 (1955) 1–20, building on Thue 1909, Siegel 1921, Dyson 1947. Listed as §65 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Roth's proof is a contradiction argument: assume some irrational algebraic x with degree d ≥ 2 admits infinitely many good rationals p_i/q_i with |x − p_i/q_i| ≤ 1/q_i^(2+ε). The technical core is the construction of an auxiliary polynomial P(x₁, …, x_m) with controlled degrees (m large, chosen relative to ε and d) that vanishes to high order at (x, …, x). Combining (i) the index theorem (Roth's lemma, bounding the index of P at the rational point (p_1/q_1, …, p_m/q_m) from above) with (ii) a non-vanishing argument using the size of the approximations (bounding the same index from below), one obtains a contradiction once the q_i grow rapidly enough. Mathlib has Liouville (`Liouville.transcendental`), Dirichlet (`Real.infinite_rat_abs_sub_lt_one_div_den_sq_of_irrational`), and the metric `ae_not_liouvilleWith`, but no Roth-style auxiliary polynomial machinery, no Roth's lemma, and no `IsDiophantine` predicate.
theorem thueSiegelRoth (x : ℝ) (_h_irr : Irrational x)
(_h_alg : IsAlgebraic ℤ x) : LeanEval.NumberTheory.ThueSiegelRothProblem.IsDiophantine x := x:ℝ_h_irr:Irrational x_h_alg:IsAlgebraic ℤ x⊢ IsDiophantine x
All goals completed! 🐙Topological classification of surfaces
topological_classification_of_surfaces
Submitter: Junyan Xu.
Notes: A compact connected surface with boundary is homeomorphic to one of the representative surfaces that we formalize.
Source: Jean Gallier & Dianna Xu, *A Guide to the Classification Theorem for Compact Surfaces*, https://www.cis.upenn.edu/~jean/surfclassif-root.pdf
Informal solution: Show surfaces are triangulable and therefore homeomorphic to cell complexes, and show each cell complex is equivalent to one in normal form.
theorem classification_of_surfaces (S : Type*) [TopologicalSpace S]
[T2Space S] [ConnectedSpace S] [CompactSpace S]
[ChartedSpace (EuclideanHalfSpace 2) S]
[IsManifold (modelWithCornersEuclideanHalfSpace 2) 0 S] :
Nonempty (S ≃ₜ Metric.sphere (0 : EuclideanSpace ℝ (Fin 3)) 1) ∨
∃ p n, ((1 ≤ p ∨ 1 ≤ n) ∧ Nonempty (S ≃ₜ Quot (LeanEval.Topology.ClassificationOfSurfaces.OrientableRel p n))) ∨
(1 ≤ p ∧ Nonempty (S ≃ₜ Quot (LeanEval.Topology.ClassificationOfSurfaces.NonOrientableRel p n))) := S:Type u_1inst✝⁵:TopologicalSpace Sinst✝⁴:T2Space Sinst✝³:ConnectedSpace Sinst✝²:CompactSpace Sinst✝¹:ChartedSpace (EuclideanHalfSpace 2) Sinst✝:IsManifold (modelWithCornersEuclideanHalfSpace 2) 0 S⊢ Nonempty (S ≃ₜ ↑(Metric.sphere 0 1)) ∨
∃ p n,
(1 ≤ p ∨ 1 ≤ n) ∧ Nonempty (S ≃ₜ Quot (OrientableRel p n)) ∨ 1 ≤ p ∧ Nonempty (S ≃ₜ Quot (NonOrientableRel p n))
All goals completed! 🐙Tverberg's theorem
Submitter: Kim Morrison.
Notes: Any (r-1)(d+1)+1 points in ℝ^d can be partitioned into r parts whose convex hulls share a common point. Trusted helper HasTverbergPartition (non-hole). Mathlib has Radon's theorem (the r=2 case) but not Tverberg. Candidate from §169 of the Knill survey.
Source: H. Tverberg, *A generalization of Radon's theorem*, J. London Math. Soc. 41 (1966). Knill, §169.
Informal solution: Unavailable.
theorem tverberg_theorem (d r : ℕ) (hr : 1 ≤ r)
(f : Fin ((r - 1) * (d + 1) + 1) → LeanEval.Combinatorics.Tverberg.Space d) :
LeanEval.Combinatorics.Tverberg.HasTverbergPartition (r := r) f := d:ℕr:ℕhr:1 ≤ rf:Fin ((r - 1) * (d + 1) + 1) → Space d⊢ HasTverbergPartition f
All goals completed! 🐙Uniformization theorem for Riemann surfaces
Submitter: Junyan Xu.
Notes: Unavailable.
Source: John Hamal Hubbard, *Teichmüller theory and applications to geometry, topology, and dynamics. Vol. 1*, Chapter 1.
Informal solution: Unavailable.
theorem uniformization {X : Type*} [TopologicalSpace X] [T2Space X] [ConnectedSpace X]
[SecondCountableTopology X] [ChartedSpace ℂ X] [IsManifold mℂ 1 X]
(hX : ¬ CompactSpace X) (x : X) [Subsingleton <| Additive (FundamentalGroup X x) →+ ℝ] :
Nonempty (X ≃ₘ⟮mℂ, mℂ⟯ ℂ) ∨ Nonempty (X ≃ₘ⟮mℂ, mℂ⟯ UpperHalfPlane) := X:Type u_1inst✝⁶:TopologicalSpace Xinst✝⁵:T2Space Xinst✝⁴:ConnectedSpace Xinst✝³:SecondCountableTopology Xinst✝²:ChartedSpace ℂ Xinst✝¹:IsManifold mℂ 1 XhX:¬CompactSpace Xx:Xinst✝:Subsingleton (Additive (FundamentalGroup X x) →+ ℝ)⊢ Nonempty (X ≃ₘ⟮mℂ, mℂ⟯ ℂ) ∨ Nonempty (X ≃ₘ⟮mℂ, mℂ⟯ UpperHalfPlane)
All goals completed! 🐙Spencer-Szemerédi-Trotter unit-distance upper bound
Submitter: Kim Morrison.
Notes: For a finite set P ⊆ ℝ² write ν(P) for the number of unordered pairs at Euclidean distance 1, and ν(n) = max over n-point sets. Erdős posed the unit-distance problem in 1946 alongside the dual distinct-distances problem (resolved up to log factors by Guth-Katz, 2015). The first nontrivial upper bound ν(n) = O(n^{3/2}) follows from the Kővári-Sós-Turán theorem applied to the K_{2,3}-free unit-distance graph. Spencer-Szemerédi-Trotter (1984) sharpened this to ν(n) = O(n^{4/3}) using the Szemerédi-Trotter incidence bound for points and lines; Székely later gave a short crossing-number proof of the same exponent. The exponent 4/3 has stood since 1984 with only constant-factor improvements (Ágoston-Pálvölgyi, 2022). The matching lower bound is widely conjectured to lie much closer to the upper bound — see the companion problem `erdos_unit_distance_conjecture_false`.
Source: J. Spencer, E. Szemerédi, W. T. Trotter Jr., *Unit distances in the Euclidean plane*, in Graph Theory and Combinatorics (Cambridge 1983), Academic Press, 1984. Short crossing-number proof: L. A. Székely, *Crossing numbers and hard Erdős problems in discrete geometry*, Combin. Probab. Comput. 6 (1997). Best constant: P. Ágoston, D. Pálvölgyi, *An improved constant factor for the unit distance problem*, Studia Sci. Math. Hungar. 59 (2022).
Informal solution: Build the bipartite incidence structure of P with the family of unit circles centred at points of P: each unit-distance pair (x, y) corresponds to the incidence (y, C_x), where C_x is the unit circle centred at x. Two unit circles intersect in at most two points, so the incidence graph is K_{2,3}-free. Apply the Szemerédi-Trotter theorem (any n points and n curves with bounded pairwise intersection number have O(n^{4/3}) incidences) — or equivalently, Székely's crossing-number argument: draw the unit-distance graph with circular arcs, count crossings two ways, and conclude via the crossing-number inequality. Either route gives ν(n) ≤ C · n^{4/3}.
theorem unit_distance_upper_bound :
∃ C : ℝ, 0 < C ∧
∀ P : Finset (EuclideanSpace ℝ (Fin 2)),
(unitDist P : ℝ) ≤ C * (P.card : ℝ) ^ ((4 : ℝ) / 3) := ⊢ ∃ C, 0 < C ∧ ∀ (P : Finset (EuclideanSpace ℝ (Fin 2))), ↑(unitDist P) ≤ C * ↑P.card ^ (4 / 3)
All goals completed! 🐙Upper bound theorem for geometric simplicial spheres (Stanley 1975)
upper_bound_simplicial_spheres
Submitter: Kim Morrison.
Notes: Among finite (d − 1)-dimensional simplicial spheres with n vertices, the cyclic polytope C(n, d) maximises every face number f_k. The Lean encoding `FiniteSimplicialSphere d` uses mathlib's `Geometry.SimplicialComplex ℝ (EuclideanSpace ℝ (Fin d))` — finite geometric complexes linearly embedded in ℝᵈ whose underlying space `K.space` is homeomorphic to the unit sphere in ℝᵈ. Stanley 1975 proves the bound for all finite *abstract* simplicial spheres; not every abstract finite simplicial sphere embeds linearly in ℝᵈ, so our geometric class is a subset and Stanley 1975 implies this Lean statement. The h-vector is the standard binomial transform of the f-vector with the convention f_{−1} = 1; the cyclic-polytope h-vector and face counts use the closed-form `choose (n − d − 1 + min(j, d − j)) (min(j, d − j))` and the inverse h-to-f transform. §142 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: R.P. Stanley, 'The upper bound conjecture and Cohen–Macaulay rings', Studies in Appl. Math. 54 (1975) 135–142. Conjecture: T.S. Motzkin (1957); polytope case: P. McMullen, 'The maximum numbers of faces of a convex polytope', Mathematika 17 (1970) 179–184. §142 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Stanley's proof passes through the **Stanley–Reisner ring** (face ring) of a simplicial sphere. (1) Associate to a simplicial complex Δ the squarefree-monomial quotient `R[Δ] = k[x_v : v ∈ Δ⁰] / I_Δ`, where I_Δ is the ideal generated by squarefree monomials supported on non-faces of Δ. (2) Reisner's criterion: Δ is Cohen–Macaulay iff certain reduced simplicial homologies of vertex-link subcomplexes vanish; simplicial spheres satisfy this. (3) For a (d − 1)-sphere with n vertices, k[Δ] is a Cohen–Macaulay module of Krull dimension d over a polynomial ring k[θ_1, …, θ_d]; passing to the artinian quotient `A_Δ = k[Δ] / (θ_1, …, θ_d)` makes the h-vector exactly `dim_k (A_Δ)_j`. (4) Macaulay's theorem bounds the Hilbert function of any standard graded Artinian algebra generated by `n − d` degree-one elements; for C(n, d) the h-vector saturates this bound, and together with the f-from-h identity (and Dehn–Sommerville symmetry for spheres) this gives the upper bound on f_k. Mathlib has `AbstractSimplicialComplex`, `Geometry.SimplicialComplex`, faces/facets/vertices/space, but no Stanley–Reisner ring, no Cohen–Macaulay property, no Reisner criterion, no cyclic polytopes, no h-vectors, and no upper bound theorem.
theorem upper_bound_theorem_simplicial_spheres {d n k : ℕ} (X : LeanEval.Combinatorics.UpperBoundSimplicialSpheresProblem.FiniteSimplicialSphere d)
(_hn : LeanEval.Combinatorics.UpperBoundSimplicialSpheresProblem.faceCount X 0 = n) (_hk : k < d) :
LeanEval.Combinatorics.UpperBoundSimplicialSpheresProblem.faceCount X k ≤ LeanEval.Combinatorics.UpperBoundSimplicialSpheresProblem.cyclicPolytopeFaceCount n d k := d:ℕn:ℕk:ℕX:FiniteSimplicialSphere d_hn:faceCount X 0 = n_hk:k < d⊢ faceCount X k ≤ cyclicPolytopeFaceCount n d k
All goals completed! 🐙von Neumann double commutant theorem
vonNeumann_doubleCommutant_tfae
Submitter: Kim Morrison.
Notes: The classical double commutant theorem: for a unital *-subalgebra of bounded operators on a complex Hilbert space, equality with the double commutant is equivalent to closedness in the weak operator topology and to closedness in the strong operator topology. WOT and SOT live on Mathlib's irreducible type copies of H →L[ℂ] H (`ContinuousLinearMapWOT` and `PointwiseConvergenceCLM`), so each closure condition is phrased on the image of the carrier under the canonical inclusion.
Source: J. von Neumann, Zur Algebra der Funktionaloperationen und Theorie der normalen Operatoren, Math. Ann. 102 (1930), 370-427.
Informal solution: One direction: centralizers are WOT-closed, so any set equal to its double commutant is WOT-closed; norm topology refines WOT refines SOT for continuity of evaluation, and closedness under a finer convex topology is implied by closedness under a coarser one (via Hahn-Banach for convex sets). Hard direction: given a unital *-subalgebra S that is SOT-closed, for any T in S'' and any finite family of vectors use the amplification S ⊗ 1_n acting diagonally on H^n together with the projection onto the closure of (S ⊗ 1_n) applied to the vector to produce a net in S converging SOT to T.
theorem vonNeumann_doubleCommutant_tfae {H : Type*} [NormedAddCommGroup H] [InnerProductSpace ℂ H] [CompleteSpace H]
(S : StarSubalgebra ℂ (H →L[ℂ] H)) :
List.TFAE
[ Set.centralizer (Set.centralizer (S : Set (H →L[ℂ] H))) = S
, IsClosed
(ContinuousLinearMap.toWOT (RingHom.id ℂ) H H '' (S : Set (H →L[ℂ] H)))
, IsClosed
(ContinuousLinearMap.toPointwiseConvergenceCLM ℂ (RingHom.id ℂ) H H ''
(S : Set (H →L[ℂ] H))) ] := H:Type u_1inst✝²:NormedAddCommGroup Hinst✝¹:InnerProductSpace ℂ Hinst✝:CompleteSpace HS:StarSubalgebra ℂ (H →L[ℂ] H)⊢ [(↑S).centralizer.centralizer = ↑S, IsClosed (⇑(ContinuousLinearMap.toWOT (RingHom.id ℂ) H H) '' ↑S),
IsClosed (⇑(ContinuousLinearMap.toPointwiseConvergenceCLM ℂ (RingHom.id ℂ) H H) '' ↑S)].TFAE
All goals completed! 🐙Seventeen wallpaper groups (Pólya–Niggli 1924)
Submitter: Kim Morrison.
Notes: There are exactly 17 wallpaper groups, the discrete cocompact subgroups of the planar Euclidean motion group E_2, counted up to affine equivalence. Discreteness is encoded as a properly discontinuous action on ℝ² — local finiteness of the return set at each point — equivalent on subgroups of E_d to Knill's positive-minimal-distance formulation, and avoids equipping `E d ≃ᵃⁱ[ℝ] E d` with a topology (mathlib has no default topology on the affine-isometry equiv type). Cocompactness is encoded as containing d linearly independent translations. §94 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: G. Pólya, 'Über die Analogie der Kristallsymmetrie in der Ebene', Z. Kristallogr. 60 (1924) 278–282; P. Niggli, 'Die Flächensymmetrien homogener Diskontinuen', Z. Kristallogr. 60 (1924) 283–298. Listed as §94 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classification proceeds in four steps. (1) **Bieberbach's first theorem** (1910): every crystallographic group G in dimension d contains a finite-index translation subgroup of rank d (the translation lattice Λ). (2) **Point group**: the quotient G / Λ embeds into O(d) and is finite; in dimension 2 it is one of the 10 finite subgroups {C₁, C₂, C₃, C₄, C₆, D₁, D₂, D₃, D₄, D₆} compatible with the **crystallographic restriction** (rotation orders ∈ {1, 2, 3, 4, 6}; orders 5 and ≥ 7 are excluded by the trace-rationality argument). (3) **Extension classification**: enumerate group extensions of each point group by each lattice it can preserve, classifying the relevant extensions via cocycles in group cohomology (H²(point group, Λ)) modulo affine conjugacy. (4) **Compatibility**: of the 17 candidate extensions, all 17 are realised by explicit examples (p1, p2, pm, pg, cm, pmm, pmg, pgg, cmm, p4, p4m, p4g, p3, p31m, p3m1, p6, p6m). Mathlib has `EuclideanSpace`, `AffineIsometryEquiv`, `AffineEquiv`, `LinearIndependent`, and `IsOfFinOrder`, but no wallpaper-group framework, no Bieberbach theorems, no point-group classification, no crystallographic-restriction theorem, no extension-cohomology classification in this dimension.
theorem there_are_17_wallpaper_groups :
crystallographicCount 2 = 17 := ⊢ crystallographicCount 2 = 17
All goals completed! 🐙Weak Morse inequalities
Submitter: Kim Morrison.
Notes: §40 of Knill's 'Some Fundamental Theorems in Mathematics' (additional statement; the boxed main theorem is the strong Morse inequality). For a Morse function f on a closed smooth finite-dimensional manifold M, b_k(M) ≤ c_k(f) for every k. Follows from the strong Morse inequality but is often proved directly via the Morse-Smale CW structure. Mathlib has the smooth-manifold framework, mfderiv, higher Fréchet derivatives, and singularHomologyFunctor but no Morse functions, Morse index, critical-point counts, Betti numbers as a named definition, or the weak Morse inequality. The Challenge ships seven helper definitions.
Source: M. Morse, The Calculus of Variations in the Large, AMS Colloq. Publ. 18 (1934). Listed as §40 additional statement in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Direct corollary of the strong Morse inequality: the alternating partial sums of c_k(f) dominate those of b_k(M); take the difference of consecutive partial sums and use that successive partial sums differ by 2·b_k − 2·c_k (with signs), to extract b_k ≤ c_k. Alternatively, prove directly via the Morse-Smale CW structure: the cellular boundary maps ∂_k : ℤ^{c_k} → ℤ^{c_{k−1}} give H_k = ker ∂_k / im ∂_{k+1}, and dim H_k ≤ c_k − rank ∂_k − rank ∂_{k+1} ≤ c_k. The weak inequality is sharper than counting: it asserts the Betti number bound for each k independently, not just the alternating sum.
theorem weak_morse_inequality {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E]
{H : Type*} [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [I.Boundaryless]
{M : Type} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I ∞ M]
[CompactSpace M] (f : M → ℝ) (_hf : LeanEval.Geometry.WeakMorseInequality.IsMorseFunction I f) (k : ℕ) :
bettiNumber M k ≤ morseCount I f k := E:Type u_1inst✝⁸:NormedAddCommGroup Einst✝⁷:NormedSpace ℝ Einst✝⁶:FiniteDimensional ℝ EH:Type u_2inst✝⁵:TopologicalSpace HI:ModelWithCorners ℝ E Hinst✝⁴:I.BoundarylessM:Typeinst✝³:TopologicalSpace Minst✝²:ChartedSpace H Minst✝¹:IsManifold I ∞ Minst✝:CompactSpace Mf:M → ℝ_hf:IsMorseFunction I fk:ℕ⊢ bettiNumber M k ≤ morseCount I f k
All goals completed! 🐙Weinstein conjecture in dimension three (Taubes 2007)
Submitter: Kim Morrison.
Notes: Every Reeb vector field of a contact form on a closed smooth 3-manifold has a closed periodic orbit. Mathlib lacks contact-geometry API and a manifold exterior derivative, so the encoding fixes dα by the intrinsic coordinate-free identity dα(X, Y) = X(α(Y)) − Y(α(X)) − α([X, Y]) (which uniquely determines dα from α via mathlib's mfderiv + VectorField.mlieBracket), and uses the equivalent dimension-3 contact condition `α ≠ 0 ∧ dα nondegenerate on ker α` in place of `α ∧ dα ≠ 0`. [I.Boundaryless] is essential: on the cube [0,1]³ with α = dz + x·dy, every Reeb integral curve has affine z-component with |z'| = 1 and escapes the cube, so closed orbits do not exist without the boundaryless hypothesis. §141 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: C.H. Taubes, 'The Seiberg–Witten equations and the Weinstein conjecture', Geom. Topol. 11 (2007) 2117–2202; arXiv:math/0611007. Conjecture: A. Weinstein, 'On the hypotheses of Rabinowitz' periodic orbit theorems', J. Differential Equations 33 (1979) 353–358. §141 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Taubes proves the three-dimensional Weinstein conjecture using Seiberg–Witten theory, relating large-parameter solutions of the Seiberg–Witten equations on Y × ℝ associated to a contact form to Reeb dynamics. If a closed contact 3-manifold had no closed Reeb orbit, the large-`r` analysis of the deformed Seiberg–Witten equations would contradict the nonvanishing input from Seiberg–Witten Floer homology / embedded contact homology in the relevant Spin^c structure. Mathlib has the smooth-manifold infrastructure used to state the problem (smooth manifolds, tangent spaces, mfderiv, Lie brackets) but not the contact-geometry, Reeb-dynamics, Seiberg–Witten, or embedded-contact-homology machinery needed to prove it.
theorem weinstein_conjecture_dim_three (E' : Type*) [NormedAddCommGroup E'] [NormedSpace ℝ E']
[FiniteDimensional ℝ E']
(H' : Type*) [TopologicalSpace H']
(I' : ModelWithCorners ℝ E' H')
(M' : Type*) [TopologicalSpace M'] [ChartedSpace H' M'] [IsManifold I' ∞ M']
[T2Space M'] [CompactSpace M'] [Nonempty M'] [Fact (Module.finrank ℝ E' = 3)]
[I'.Boundaryless]
(α : LeanEval.Geometry.WeinsteinConjecture3DProblem.OneForm I' (M := M')) (dα : LeanEval.Geometry.WeinsteinConjecture3DProblem.TwoForm I' (M := M'))
(R : ∀ x : M', TangentSpace I' x)
(_hcontact : LeanEval.Geometry.WeinsteinConjecture3DProblem.IsContactForm3 I' α dα)
(_hReeb : LeanEval.Geometry.WeinsteinConjecture3DProblem.IsReebVectorField I' α dα R) :
LeanEval.Geometry.WeinsteinConjecture3DProblem.HasClosedReebOrbit I' R := E':Type u_4inst✝¹¹:NormedAddCommGroup E'inst✝¹⁰:NormedSpace ℝ E'inst✝⁹:FiniteDimensional ℝ E'H':Type u_5inst✝⁸:TopologicalSpace H'I':ModelWithCorners ℝ E' H'M':Type u_6inst✝⁷:TopologicalSpace M'inst✝⁶:ChartedSpace H' M'inst✝⁵:IsManifold I' ∞ M'inst✝⁴:T2Space M'inst✝³:CompactSpace M'inst✝²:Nonempty M'inst✝¹:Fact (Module.finrank ℝ E' = 3)inst✝:I'.Boundarylessα:OneForm I'dα:TwoForm I'R:(x : M') → TangentSpace I' x_hcontact:IsContactForm3 I' α dα_hReeb:IsReebVectorField I' α dα R⊢ HasClosedReebOrbit I' R
All goals completed! 🐙Whitney embedding theorem (strong form, dimension 2n)
Submitter: Kim Morrison.
Notes: Every smooth n-manifold (n ≥ 1, Hausdorff, second-countable) admits a smooth embedding into ℝ^(2n). The smooth-embedding triple — smooth, topological embedding (mathlib's `IsEmbedding`), and immersion (`mfderiv` injective at every point) — follows the same pattern as mathlib's compact-finite-dimensional embedding theorem `SmoothBumpCovering.exists_embedding_euclidean_of_compact`, which uses the stronger `IsClosedEmbedding` because the source is compact and produces an embedding into some `ℝ^k` with no dimension bound. The sharp 2n bound here is the *strong* Whitney theorem. The n = 0 case is excluded because the 2n bound fails there (a two-point discrete 0-manifold embeds in `ℝ¹` but not in `ℝ⁰`). §112 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: H. Whitney, 'The self-intersections of a smooth n-manifold in 2n-space', Ann. of Math. (2) 45 (1944) 220–246. Earlier 2n+1 form: H. Whitney, 'Differentiable manifolds', Ann. of Math. (2) 37 (1936) 645–680. Listed as §112 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: The classical proof has three steps. (1) **Weak 2n+1 embedding** (Whitney 1936): start from any immersion M → ℝ^N with N large, then use a Sard-style transversality / generic-projection argument to drop dimension to 2n+1 — at each step, the bad locus of projection directions causing immersion or injection failures has measure zero in S^(N−1). (2) **Whitney trick**: in dimension 2n with n ≥ 3, pairs of opposite-sign transverse self-intersections of a generic 2n-immersion M^n → ℝ^(2n) can be cancelled by an isotopy supported in a Whitney disk pairing the two intersection points. (3) **Low dimensions** (n = 1, 2): handled separately by direct classical arguments (1-manifolds embed by classification of curves; 2-manifolds — compact orientable, compact non-orientable, and open — each via a separate construction, since the Whitney trick requires n ≥ 3). Mathlib has `SmoothBumpCovering.exists_embedding_euclidean_of_compact` (compact-finite-dimensional Whitney with no dimension bound) but no Sard's theorem (the `Mathlib/Geometry/Manifold/WhitneyEmbedding.lean` file's own `## TODO` flags this gap explicitly), no generic-projection argument, and no Whitney trick.
theorem whitney_embedding (n : ℕ) (_hn : 1 ≤ n)
{M : Type*} [TopologicalSpace M]
[ChartedSpace (EuclideanSpace ℝ (Fin n)) M] [IsManifold (𝓡 n) ∞ M]
[T2Space M] [SecondCountableTopology M] :
∃ e : M → EuclideanSpace ℝ (Fin (2 * n)),
ContMDiff (𝓡 n) (𝓡 (2 * n)) ∞ e ∧
IsEmbedding e ∧
∀ x : M, Function.Injective (mfderiv (𝓡 n) (𝓡 (2 * n)) e x) := n:ℕ_hn:1 ≤ nM:Type u_1inst✝⁴:TopologicalSpace Minst✝³:ChartedSpace (EuclideanSpace ℝ (Fin n)) Minst✝²:IsManifold (𝓡 n) ∞ Minst✝¹:T2Space Minst✝:SecondCountableTopology M⊢ ∃ e, ContMDiff (𝓡 n) (𝓡 2 * n) ∞ e ∧ IsEmbedding e ∧ ∀ (x : M), Function.Injective ⇑(mfderiv% e x)
All goals completed! 🐙Wieferich's theorem g(3) = 9
Submitter: Kim Morrison.
Notes: Every natural number is a sum of nine cubes, and nine is necessary (23 is not a sum of eight cubes): the k=3 case of the Hilbert–Waring problem, g(3) = 9. The trusted helper IsSumOfCubes (non-hole) fixes 'sum of k cubes'. Mathlib has Lagrange's four-square theorem but no Hilbert–Waring material (no g(k), no sum-of-cubes predicate, no g(3)=9). Candidate from §76 of the Knill survey.
Source: A. Wieferich, *Beweis des Satzes, daß sich eine jede ganze Zahl als Summe von höchstens neun positiven Kuben darstellen läßt*, Math. Ann. 66 (1909); A. Kempner, *Über das Waringsche Problem und einige Verallgemeinerungen*, Math. Ann. 72 (1912). Knill, *Some fundamental theorems in mathematics*, §76.
Informal solution: Two parts. Upper bound (g(3) ≤ 9, every n is a sum of nine cubes): the classical Wieferich–Kempner argument — reduce to a bounded range via the identity expressing six consecutive integers' cubes and the fact that every sufficiently large n is a sum of at most eight cubes (Linnik/Watson give 8 for large n), then check the finite remaining range by computation, the worst cases being 23 and 239 (both of which need nine cubes). Lower bound (g(3) ≥ 9): exhibit n = 23, whose only cube summands ≤ 23 are 1 and 8; 23 = 2·8 + 7·1 uses nine cubes and a short case analysis shows no representation uses eight or fewer.
theorem wieferich_g_three :
(∀ n : ℕ, LeanEval.NumberTheory.IsSumOfCubes 9 n) ∧ ∃ n : ℕ, ¬ LeanEval.NumberTheory.IsSumOfCubes 8 n := ⊢ (∀ (n : ℕ), IsSumOfCubes 9 n) ∧ ∃ n, ¬IsSumOfCubes 8 n
All goals completed! 🐙Wiener's atom-detection formula
Submitter: Kim Morrison.
Notes: §66 of Oliver Knill's 'Some Fundamental Theorems in Mathematics'. Wiener's atom-detection formula states that for a probability measure μ on the circle ℝ/2πℤ, the Cesàro averages (1/N) ∑_{k=1}^N |μ̂_k|² of the squared Fourier coefficients converge to ∑_x μ({x})², the total squared mass of the atoms. Thus the asymptotic behavior of the Fourier coefficients detects exactly the pure-point part of the measure. Mathlib provides AddCircle, the Fourier characters fourier, and related Fourier theory for functions, but it does not currently package Fourier coefficients of measures or this Wiener atom-detection theorem.
Source: N. Wiener, The Fourier Integral and Certain of its Applications (1933). Listed as §66 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Expand |μ̂_k|² = μ̂_k · conj(μ̂_k) = ∫∫ e^{ik(x−y)} dμ(x) dμ(y) by Fubini. Averaging over k = 1, …, N gives (1/N) ∑_{k=1}^N |μ̂_k|² = ∫∫ D_N(x−y) dμ(x) dμ(y), where D_N(t) = (1/N) ∑_{k=1}^N e^{ikt} is a Cesàro/Fejér-type kernel with |D_N| ≤ 1 and D_N(t) → 1 if t = 0 and → 0 if t ≠ 0. By dominated convergence (against the finite product measure μ × μ) the double integral converges to (μ × μ){(x, y) : x = y} = ∑_x μ({x})², the mass the diagonal carries, which is exactly the sum of squared atomic masses. The right-hand side is summable because the atoms of a finite measure are at most countable with masses bounded by μ(𝕋) = 1.
theorem wiener_atom_detection (μ : Measure (AddCircle (2 * Real.pi))) [IsProbabilityMeasure μ] :
Tendsto
(fun N : ℕ =>
(1 / (N : ℝ)) *
∑ k ∈ Finset.Icc (1 : ℤ) N, ‖fourierCoeffMeasure μ k‖ ^ 2)
atTop
(𝓝 (∑' x : AddCircle (2 * Real.pi), ((μ {x}).toReal) ^ 2)) := μ:Measure (AddCircle (2 * π))inst✝:IsProbabilityMeasure μ⊢ Tendsto (fun N => 1 / ↑N * ∑ k ∈ Finset.Icc 1 ↑N, ‖fourierCoeffMeasure μ k‖ ^ 2) atTop
(𝓝 (∑' (x : AddCircle (2 * π)), (μ {x}).toReal ^ 2))
All goals completed! 🐙Wigner semicircle law
Submitter: Kim Morrison.
Notes: For an iid family X i j : Ω → ℝ of mean-0, variance-1 real random variables (parameterised over upper-triangular pairs i ≤ j), the empirical spectral measure of the real-symmetric matrix W_n / √n (with W_n(i, j) = X (min i j) (max i j)) converges weakly, almost surely, to the semicircle measure on [−2, 2] with density √(4 − x²) / (2π). Weak convergence is stated against bounded continuous test functions: almost surely ∫ f dμ_n → ∫ f dμ_∞ for every bounded continuous f. The hypotheses include `Integrable (X i j)` and `Integrable ((X i j)^2)` so the mean/variance identities are genuine (mathlib's Bochner integral defaults to 0 on non-integrable integrands). §102 of Knill's *Some Fundamental Theorems in Mathematics*.
Source: E. Wigner, 'Characteristic vectors of bordered matrices with infinite dimensions', Ann. of Math. (2) 62 (1955) 548–564 (Gaussian case). Pastur's universality extending to all variances with finite second moments: L. Pastur, 'On the spectrum of random matrices', Teor. Mat. Fiz. 10 (1972) 102–112. Listed as §102 in O. Knill, *Some Fundamental Theorems in Mathematics* (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf).
Informal solution: Two main approaches: (i) the **moment method**, computing ∫ x^k dμ_n → ∫ x^k dμ_∞ for every k and matching the limit moments to the semicircle moments — odd moments vanish, the (2m)-th moment equals the Catalan number C_m, identified combinatorially via non-crossing pair partitions on 2m vertices; (ii) the **Stieltjes-transform method**, showing the Stieltjes transform s_n(z) of μ_n satisfies a fixed-point equation converging to the semicircle Stieltjes transform (the convention here: `s(z) = ∫ (x − z)⁻¹ dμ(x)` for `Im z > 0`, giving the unique root of `s² + zs + 1 = 0` in the upper half plane). Mathlib has the spectral framework (`Matrix.IsHermitian.eigenvalues`), iid hypotheses (`iIndepFun`, `IdentDistrib`), and weak convergence on Polish spaces (`Mathlib/MeasureTheory/Measure/Portmanteau.lean`), but no semicircle measure, no Stieltjes transform, no Catalan-number combinatorics on non-crossing partitions, and no random-matrix universality framework.
theorem wigner_semicircle {Ω : Type*} [MeasurableSpace Ω]
(μ : Measure Ω) [IsProbabilityMeasure μ]
(X : ℕ → ℕ → Ω → ℝ)
(_hX_meas : ∀ i j, Measurable (X i j))
(_hX_indep : iIndepFun
(fun ij : {p : ℕ × ℕ // p.1 ≤ p.2} => X ij.val.1 ij.val.2) μ)
(_hX_iid : ∀ i j i' j', i ≤ j → i' ≤ j' →
ProbabilityTheory.IdentDistrib (X i j) (X i' j') μ μ)
(_hX_int : ∀ i j, i ≤ j → Integrable (X i j) μ)
(_hX_sq_int : ∀ i j, i ≤ j → Integrable (fun ω => (X i j ω) ^ 2) μ)
(_hX_mean : ∀ i j, i ≤ j → ∫ ω, X i j ω ∂μ = 0)
(_hX_var : ∀ i j, i ≤ j → ∫ ω, (X i j ω) ^ 2 ∂μ = 1) :
∀ᵐ ω ∂μ,
∀ (f : ℝ → ℝ), Continuous f → (∃ M, ∀ x, ‖f x‖ ≤ M) →
Tendsto
(fun n : ℕ =>
∫ x, f x ∂ (empiricalSpectralMeasureHerm
(wignerMatrix_isHermitian X n ω)).map
(fun x : ℝ => x / Real.sqrt n))
atTop (𝓝 (∫ x, f x ∂semicircleLaw)) := Ω:Type u_1inst✝¹:MeasurableSpace Ωμ:Measure Ωinst✝:IsProbabilityMeasure μX:ℕ → ℕ → Ω → ℝ_hX_meas:∀ (i j : ℕ), Measurable (X i j)_hX_indep:iIndepFun (fun ij => X (↑ij).1 (↑ij).2) μ_hX_iid:∀ (i j i' j' : ℕ), i ≤ j → i' ≤ j' → IdentDistrib (X i j) (X i' j') μ μ_hX_int:∀ (i j : ℕ), i ≤ j → Integrable (X i j) μ_hX_sq_int:∀ (i j : ℕ), i ≤ j → Integrable (fun ω => X i j ω ^ 2) μ_hX_mean:∀ (i j : ℕ), i ≤ j → ∫ (ω : Ω), X i j ω ∂μ = 0_hX_var:∀ (i j : ℕ), i ≤ j → ∫ (ω : Ω), X i j ω ^ 2 ∂μ = 1⊢ ∀ᵐ (ω : Ω) ∂μ,
∀ (f : ℝ → ℝ),
Continuous f →
(∃ M, ∀ (x : ℝ), ‖f x‖ ≤ M) →
Tendsto (fun n => ∫ (x : ℝ), f x ∂Measure.map (fun x => x / √↑n) (empiricalSpectralMeasureHerm ⋯)) atTop
(𝓝 (∫ (x : ℝ), f x ∂semicircleLaw))
All goals completed! 🐙Test problems
CI regenerate-main check
Submitter: Kim Morrison.
Notes: Internal trivial problem used to exercise the regenerate-main workflow end-to-end.
Source: Internal CI check.
Informal solution: True is true.
theorem ci_regenerate_main_check : True := ⊢ True
All goals completed! 🐙def-hole minimal example
Submitter: Kim Morrison.
Notes: Minimal example exercising def + theorem holes through the comparator def-hole pipeline.
Source: Unavailable.
Informal solution: Unavailable.
def foo : Nat := sorrytheorem foo_def : foo = 37 := sorryinstance-hole minimal example
Submitter: Kim Morrison.
Notes: Minimal example exercising instance + theorem holes; instances must be named so the comparator can address them.
Source: Unavailable.
Informal solution: Unavailable.
def WidgetCarrier : Type := sorryinstance instInhabitedWidget : Inhabited WidgetCarrier := sorryAppending a singleton increases the list length
Submitter: Kim Morrison.
Notes: A simple list problem that exercises notation in generated files.
Source: Internal starter problem.
Informal solution: Compute the length after append.
theorem list_append_singleton_length :
(([1, 2] : List Nat).append [3]).length = 3 := ⊢ ([1, 2].append [3]).length = 3
All goals completed! 🐙multi-hole-with-helpers regression example
Submitter: Kim Morrison.
Notes: Regression test for trusted-helper support in multi-hole problems. Exercises three failure modes the generator used to have: (1) helpers at root namespace (`rootHelper`) must not get a spurious `open`; (2) the helper namespace `Helpers` differs from the module's last path component `MultiHoleHelpersExample`, so the injected `open` must be derived from the helper names rather than the module name; (3) the helper `Helpers.postHole` appears in source order *between* two holes, exercising the right-to-left edit pass against a layout where a sequential strip-then-replace pipeline (with helper ranges taken from `.ilean` and applied after hole-body replacement) would have shifted offsets. A submission that defines `Submission.Helpers.first := 1`, `Submission.Helpers.second_eq := rfl`, and `Submission.Helpers.third_eq := rfl` should be accepted.
Source: Unavailable.
Informal solution: Unavailable.
def first : Nat := sorrytheorem second_eq : first + rootHelper + preHole = first + 141 := sorrytheorem third_eq : postHole + ({ value := 0 } : WithCompanions).value = 1000 := sorrynoncomputable-hole minimal example
Submitter: Kim Morrison.
Notes: Minimal example exercising noncomputable def/instance holes; the generated Solution.lean delegations must be noncomputable so that honest (noncomputable) submissions compile.
Source: Unavailable.
Informal solution: Unavailable.
def RWidget : Type := sorrynoncomputable instance instInhabitedRWidget : Inhabited RWidget := sorrynoncomputable def rwidgetPoint : RWidget := sorrytheorem rwidgetPoint_default : rwidgetPoint = (default : RWidget) := sorry2 + 2 = 4
Submitter: Kim Morrison.
Notes: An easy problem to get you on the leaderboard.
Source: Internal starter problem.
Informal solution: By computation.
theorem two_plus_two_eq_four : (2 : Nat) + 2 = 4 := ⊢ 2 + 2 = 4
All goals completed! 🐙variable-binder minimal example
Submitter: Kim Morrison.
Notes: Regression for https://github.com/leanprover/lean-eval/issues/276. The theorem inherits implicit binders from a preceding `variable` declaration, which the extractor must re-emit in the generated workspace.
Source: Unavailable.
Informal solution: Unavailable.
theorem variable_binder_example (A : Matrix n n ℚ) (hA : A.IsHermitian) :
A.trace = ∑ i, A i i := n:Type u_1inst✝¹:Fintype ninst✝:DecidableEq nA:Matrix n n ℚhA:A.IsHermitian⊢ A.trace = ∑ i, A i i
All goals completed! 🐙