Plectis Atlas
Search

↑ and ↓ move, Enter opens, Esc closes.

Lean statement

Eventual maximal Seshadri constants

Lean is a language for mathematical statements and proofs that a computer can verify. This page shows one statement file from OpenAI’s release, possible paper matches and independent reports. The code-like names below identify the definitions or theorems selected by the proof-verification settings.

Theorem selected for verification: OAI.MaximalSeshadri.Geometry.maximalSeshadriConstants

Lean statement file: MaximalSeshadriConstants.leanShow on the mapFamily 039. OpenAI lists this as a main result in its Lean catalogue.

The Lean statement

The lines of the Lean statement that state the theorem, then the definitions in the file that it uses.

theorem maximalSeshadriConstants (S : Surface) (L : LineBundle S.scheme)    (hL : LineBundle.IsAmple S.scheme L) : EventualMaximalSeshadri S L := by  sorry

A Lean statement states the theorem and leaves its proof as sorry on purpose. OpenAI’s proof is in a separate solution module, and a program called Comparator checks that proof against this statement.

Definitions needed to read it

Local definitions the statement names, followed through the definitions they name in turn. The match is by name in the source text, so a name reached only through notation can be missed; the full file is below.

  • definition OAI.MaximalSeshadri.Geometry.complexProjectiveSpace line 18

    def complexProjectiveSpace (N : ℕ) : Scheme :=  Proj (MvPolynomial.homogeneousSubmodule (Fin (N + 1)) ℂ)
  • definition OAI.MaximalSeshadri.Geometry.constantsInDegreeZero line 22

    def constantsInDegreeZero (N : ℕ) :    ℂ →+* (MvPolynomial.homogeneousSubmodule (Fin (N + 1)) ℂ 0) :=  { toFun := fun c => ⟨MvPolynomial.C c, MvPolynomial.isHomogeneous_C _ c⟩    map_one' := Subtype.ext MvPolynomial.C_1    map_mul' := fun a b => Subtype.ext (MvPolynomial.C_mul (a := a) (a' := b))    map_zero' := Subtype.ext MvPolynomial.C_0    map_add' := fun a b => Subtype.ext (MvPolynomial.C_add (a := a) (a' := b)) }
  • definition OAI.MaximalSeshadri.Geometry.projectiveSpaceToSpec line 31

    def projectiveSpaceToSpec (N : ℕ) :    complexProjectiveSpace N ⟶ Spec (CommRingCat.of ℂ) :=  Proj.toSpecZero _ ≫ Spec.map (CommRingCat.ofHom (constantsInDegreeZero N))
  • structure OAI.MaximalSeshadri.Geometry.Surface line 38

    structure Surface where  scheme : Scheme  structureMap : scheme ⟶ Spec (CommRingCat.of ℂ)  integral : IsIntegral scheme  smooth : SmoothOfRelativeDimension 2 structureMap  embeddingDimension : ℕ  embedding : scheme ⟶ complexProjectiveSpace embeddingDimension  closedImmersion : IsClosedImmersion embedding  overComplex : embedding ≫ projectiveSpaceToSpec embeddingDimension = structureMap
  • structure OAI.MaximalSeshadri.Geometry.LineBundle line 53

    structure LineBundle where  sheaf : X.Modules  locallyRankOne : ∀ x : X, ∃ U : X.Opens, x ∈ U ∧    Nonempty (sheaf.restrict U.ι ≅ SheafOfModules.unit U.toScheme.ringCatSheaf)
  • definition OAI.MaximalSeshadri.Geometry.moduleTensor line 60

    def moduleTensor (M N : X.Modules) : X.Modules :=  (PresheafOfModules.sheafification (𝟙 X.ringCatSheaf.obj)).obj    (PresheafOfModulesOfCommRing.Monoidal.tensorObj (R := X.presheaf) M.val N.val)
  • definition OAI.MaximalSeshadri.Geometry.modulePow line 65

    def modulePow (M : X.Modules) : ℕ → X.Modules  | 0 => SheafOfModules.unit X.ringCatSheaf  | n + 1 => moduleTensor X M (modulePow M n)
  • definition OAI.MaximalSeshadri.Geometry.structureSheaf line 70

    def structureSheaf : X.Modules := SheafOfModules.unit X.ringCatSheaf
  • abbreviation OAI.MaximalSeshadri.Geometry.GlobalSections line 73

    abbrev GlobalSections (M : X.Modules) := structureSheaf X ⟶ M
  • definition OAI.MaximalSeshadri.Geometry.sectionOpen line 77

    def sectionOpen {M : X.Modules} (s : GlobalSections X M) : X.Opens :=  ⨆ (U : X.Opens) (_ : IsIso ((Scheme.Modules.restrictFunctor U.ι).map s)), U
  • definition OAI.MaximalSeshadri.Geometry.LineBundle.IsAmple line 81

    def LineBundle.IsAmple (L : LineBundle X) : Prop :=  ∀ (x : X) (V : X.Opens), x ∈ V → ∃ n : ℕ, 0 < n ∧    ∃ s : GlobalSections X (modulePow X L.sheaf n),      x ∈ sectionOpen X s ∧ sectionOpen X s ≤ V ∧ IsAffineOpen (sectionOpen X s)
  • definition OAI.MaximalSeshadri.Geometry.baseScalars line 186

    def baseScalars (f : X ⟶ Spec (CommRingCat.of ℂ)) : ℂ →+* Γ(X, ⊤) :=  f.appTop.hom.comp (Scheme.ΓSpecIso (CommRingCat.of ℂ)).inv.hom
  • abbreviation OAI.MaximalSeshadri.Geometry.cohomology line 195

    abbrev cohomology (M : X.Modules) (n : ℕ) : Type 1 :=  Abelian.Ext.{1} (C := X.Modules) (structureSheaf X) M n
  • definition OAI.MaximalSeshadri.Geometry.cohomologyDimension line 201

    def cohomologyDimension (f : X ⟶ Spec (CommRingCat.of ℂ))    (M : X.Modules) (n : ℕ) : ℕ :=  letI : Module ℂ (cohomology M n) :=    Module.compHom (cohomology M n) (baseScalars f)  Module.finrank ℂ (cohomology M n)
  • definition OAI.MaximalSeshadri.Geometry.eulerCharacteristic line 209

    def eulerCharacteristic (f : X ⟶ Spec (CommRingCat.of ℂ)) (d : ℕ)    (M : X.Modules) : ℤ :=  ∑ n ∈ Finset.range (d + 1), (-1 : ℤ) ^ n * (cohomologyDimension f M n : ℤ)
  • definition OAI.MaximalSeshadri.Geometry.selfIntersection line 215

    def selfIntersection (S : Surface) (L : LineBundle S.scheme) : ℤ :=  eulerCharacteristic S.structureMap 2 (modulePow S.scheme L.sheaf 2) -    2 * eulerCharacteristic S.structureMap 2 L.sheaf +    eulerCharacteristic S.structureMap 2 (SheafOfModules.unit S.scheme.ringCatSheaf)
  • structure OAI.MaximalSeshadri.Geometry.IntegralCurve line 222

    structure IntegralCurve (S : Surface) where  scheme : Scheme  embedding : scheme ⟶ S.scheme  closedImmersion : IsClosedImmersion embedding  integral : IsIntegral scheme  dimension : topologicalKrullDim scheme = 1
  • definition OAI.MaximalSeshadri.Geometry.curveDegree line 233

    def curveDegree (S : Surface) (L : LineBundle S.scheme) (C : IntegralCurve S) : ℤ :=  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    ((Scheme.Modules.pullback C.embedding).obj L.sheaf) -  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    (SheafOfModules.unit C.scheme.ringCatSheaf)
  • abbreviation OAI.MaximalSeshadri.Geometry.complexBase line 248

    abbrev complexBase : Scheme := Spec (CommRingCat.of ℂ)
  • abbreviation OAI.MaximalSeshadri.Geometry.ComplexPoint line 251

    abbrev ComplexPoint (S : Surface) :=  Over.mk (𝟙 complexBase) ⟶ Over.mk S.structureMap
  • definition OAI.MaximalSeshadri.Geometry.ComplexPoint.image line 255

    def ComplexPoint.image {S : Surface} (p : ComplexPoint S) : S.scheme :=  p.left (⟨⊥, Ideal.isPrime_bot⟩ : PrimeSpectrum ℂ)
  • definition OAI.MaximalSeshadri.Geometry.Configuration line 274

    def Configuration (S : Surface) (r : ℕ) :=  {p : Fin r → ComplexPoint S // Function.Injective (fun i => (p i).image)}
  • definition OAI.MaximalSeshadri.Geometry.idealOrder line 287

    def idealOrder {R : Type} [CommRing R] [IsLocalRing R] (I : Ideal R) : ℕ :=  sInf {n : ℕ | ¬ I ≤ IsLocalRing.maximalIdeal R ^ (n + 1)}
  • definition OAI.MaximalSeshadri.Geometry.curveMultiplicity line 293

    def curveMultiplicity (S : Surface) (C : IntegralCurve S) (p : ComplexPoint S) : ℕ := by  classical  exact if h : ∃ q : C.scheme, C.embedding q = p.image then    idealOrder (RingHom.ker (C.embedding.stalkMap h.choose).hom)  else 0

11 more definitions are reached the same way; the full file lists them.

Possible paper match, with no recorded review

No paper statement clearly matched the Lean wording. Statement Map, the program that collects Atlas’s source records, selected this possible match using words in OpenAI’s catalogue and Lean note. No review of whether the statements mean the same thing is recorded.

Shared with the catalogue’s wording or OpenAI’s note, none of them matched in the Lean text: ample, bundle, class, closed, complement, complex, countable, integral and eight more.

Theorem 1.1 of Maximal Seshadri constants on arbitrary polarized surfaces

Theorem

For every smooth integral complex projective surface S and every ample line bundle L on S, there is an integer r_0=r_0(S,L) with the following property. For each integer r\ge r_0, there is a countable union Z_r of proper Zariski-closed subsets of U_r, with nonempty complement, such that for every \mathbf p\in U_r\setminus Z_r the class

\pi^*L-\sqrt{\frac{L^2}{r}}\sum_{i=1}^r E_i

is nef on the blow-up at \mathbf p. Consequently,

\varepsilon(S,L;\mathbf p)=\sqrt{\frac{L^2}{r}}.
Section 1, Introduction Read it in the paper TeX source, line 31
Show the TeX
For every smooth integral complex projective surface $S$ and every ample
line bundle $L$ on $S$, there is an integer $r_0=r_0(S,L)$ with the following
property. For each integer $r\ge r_0$, there is a countable union
$Z_r$ of proper Zariski-closed subsets of $U_r$, with nonempty complement,
such that for every $\mathbf p\in U_r\setminus Z_r$ the class
\[
 \pi^*L-\sqrt{\frac{L^2}{r}}\sum_{i=1}^r E_i
\]
is nef on the blow-up at $\mathbf p$. Consequently,
\[
 \varepsilon(S,L;\mathbf p)=\sqrt{\frac{L^2}{r}}.
\]

Other possible paper matches, closest wording first

  • Theorem 1.1 of Maximal Multipoint Seshadri Constants in Higher Dimensions. Words of the Lean statement, its names split into words, that also appear in the theorem: dimension, line, bundle, nonempty, complex, smooth and five more. Found in the paper’s title, which its main theorem states: maximal, seshadri and constants.
  • Theorem 1.1 of Maximal multipoint Seshadri constants in positive characteristic. Words of the Lean statement, its names split into words, that also appear in the theorem: dim, characteristic, smooth, projective, ample, integral and two more. Found in the paper’s title, which its main theorem states: maximal, constants and seshadri.
  • Corollary 5.5 of Maximal Seshadri constants on arbitrary polarized surfaces. Words of the Lean statement, its names split into words, that also appear in the theorem: one, zero, line, characteristic, bundle, nonempty and eight more.
  • Proposition 5.3 of Maximal Seshadri constants on arbitrary polarized surfaces. Words of the Lean statement, its names split into words, that also appear in the theorem: exceptional, homogeneous, pi, curves, real, nef and ten more.
  • Proposition 5.3 of Maximal multipoint Seshadri constants in positive characteristic. Words of the Lean statement, its names split into words, that also appear in the theorem: base, real, dimension, characteristic, ample, smooth and six more.
  • Corollary 6.1 of Nagata’s conjecture for plane curves. Words of the Lean statement, its names split into words, that also appear in the theorem: zero, multiplicity, characteristic, space, nonempty, degree and two more.

How Atlas selects possible matches: it compares words in the Lean statement with every statement in the family. It also splits Lean names into words. The release’s label and note receive less weight; a main theorem wins a close match. If the Lean wording yields no clear match, Atlas uses the catalogue description. This selects passages to compare; it does not establish that they mean the same thing.

Reported Comparator runs

two independent groups report that Comparator accepted runs for this Lean statement file: Carlos Toledo’s cert-machine; MathVet. Each group reports its own Comparator run for this statement file. Atlas has not repeated the runs.

For a configured theorem, Comparator tests whether OpenAI’s proof proves the exact Lean statement. Some files instead configure definitions for comparison by name and type. Acceptance does not establish that the statement means the same thing as the paper’s theorem.

Carlos Toledo’s cert-machine

How they ran it, in their words

Every Comparator challenge re-run on Linux with nanoda switched on, decided by a preregistered rule; every family’s challenge statements read against OpenAI’s headline, clause by clause. Decider: Comparator (leanprover/comparator d03acab1 = tag v4.34.0, built with the release’s toolchain v4.34.1), lean4export 076e8e57, landrun 811cfff5, nanoda_lib 3a240721 — on GitHub’s Linux runners (.github/workflows/openai-math-kernel.yml), one j…

  • Accepted Their term: “CERTIFIED”.

    Re-run through Comparator with the independent nanoda kernel switched on: Lean’s kernel and nanoda both accept OpenAI’s solution.

    Reported 10 October 2026, at the release version shown here. Original verification report

MathVet

How they ran it, in their words

An independent, model-assisted, pre-referee reading of each family’s challenge statements against its headline claim under a published rubric (PROTOCOL.md), with its own Comparator runs per challenge. Its protocol describes a planned error-rate study; this import does not establish that the study has been completed.

  • Accepted Their term: “comparator-sandboxed-pass”.

    Re-run through Comparator in a sandboxed virtual machine: accepted.

    Reported 8 October 2026, at the release version shown here. Original verification report

What an accepted Comparator run would establish

If Comparator is run under this configuration and accepts, the solution proves the configured theorem using only the allowed axioms, and the Lean kernel accepts every step.

This configuration lists no definition holes, so every definition the statement uses is compared as it is written in this file.

Allowed axioms: propext, Quot.sound, Classical.choice

Acceptance leaves open whether the Lean statement means the same thing as the paper’s theorem, whether the paper’s other claims are correct, and whether the result is new. Those questions require comparing the definitions and statements, reviewing the paper’s arguments, and reading the earlier literature.

Do family 039’s Lean statements express the advertised result?

These assessments compare all the family’s Lean statements with the whole result OpenAI describes in its catalogue. They do not assess this statement alone. Each group uses its own published rules.

Neither group finds that the Lean statements express or imply the whole advertised result. They describe what the statements express in different terms.

  • MathVet

    Finds part of it stated, or a narrower or weaker statement Their term: “partial”.

    Only a special case is stated, or a co-equal headline claim has no challenge statement. Their record

    Their note: Nagata (r >= 10, very general, arbitrary multiplicities) fully stated; maximal multipoint Seshadri constants only for smooth projective surfaces over C, not (L^n/r)^{1/n} in dimension n >= 2 and not over algebraically closed fields of positive characteristic.

    Definitions the group asks readers to compare with the paper: Seshadri side is custom scheme theory: selfIntersection S L := χ(L^2) - 2χ(L) + χ(O) (= L^2 by Riemann-Roch, checked), curveDegree := χ(L|_C) - χ(O_C), cohomology := Abelian.Ext (structureSheaf X) M n with cohomologyDimension := Module.finrank ℂ (junk 0 if infinite-dimensional), IsBlowup by universal property, curveMultiplicity via idealOrder of the stalk kernel; Nagata side defines the curve equation by Classical.choose of a sorry'd existence theorem (curveEquation) that is itself a checked theorem_name

  • Carlos Toledo’s cert-machine

    Finds part of it stated, or a narrower or weaker statement Their term: “NARROWER — UNLINKED”.

    The challenge statements state less than the headline; the missing part comes from a paper the Lean note does not link. Their record

    Their note: maximal multipoint Seshadri constants in dimension n >= 3 (complex, very general points) and in positive characteristic (all n >= 2, geometric generic tuple) are claimed by the headline but not stated; Lean states only smooth complex projective surfaces

Read the complete assessments on the family page.

OpenAI’s own note on what this Lean statement covers

“The formalized result establishes this for every smooth integral complex projective surface $S$ and ample line bundle $L$.”

An AI agent drafted an interpretation of that note, classifying this statement as “states a paper’s theorem as the paper does”. No human review of the draft is recorded.

Supporting material

The complete Lean statement file

414 lines, copied from release version fd4aeeb. A name defined in this file links to its line; pointing at the name shows its definition.

Declared in this fileOpenAI’s library at fd4aeebOther linked names open the current documentation for Mathlib, Lean’s mathematical library.

Links in the file: 138 to its own declarations, 129 to Mathlib’s documentation. 12 declared names also link to the same declaration in OpenAI’s library. 4 identifiers stay plain because they resolve to no single declaration: variables Lean binds automatically, notation, or names the scan of the pinned sources did not find. 2 of them could name more than one declaration. OpenAI uses Mathlib version d13f23b. The linked documentation describes the current version, so names that have since changed may be missing there.

import Mathlibnamespace OAI                                                                                                                                                                                                                              namespace MaximalSeshadri.Geometrynoncomputable sectionopen CategoryTheory AlgebraicGeometry TopologicalSpaceopen scoped AlgebraicGeometryattribute [local instance] MvPolynomial.gradedAlgebra                                                                                    def complexProjectiveSpace (N : ℕ) : Scheme :=  Proj (MvPolynomial.homogeneousSubmodule (Fin (N + 1)) ℂ)                                                                              def constantsInDegreeZero (N : ℕ) :    ℂ →+* (MvPolynomial.homogeneousSubmodule (Fin (N + 1)) ℂ 0) :=  { toFun := fun c => ⟨MvPolynomial.C c, MvPolynomial.isHomogeneous_C _ c⟩    map_one' := Subtype.ext MvPolynomial.C_1    map_mul' := fun a b => Subtype.ext (MvPolynomial.C_mul (a := a) (a' := b))    map_zero' := Subtype.ext MvPolynomial.C_0    map_add' := fun a b => Subtype.ext (MvPolynomial.C_add (a := a) (a' := b)) }                                                           def projectiveSpaceToSpec (N : ℕ) :    complexProjectiveSpace N ⟶ Spec (CommRingCat.of ℂ) :=  Proj.toSpecZero _ ≫ Spec.map (CommRingCat.ofHom (constantsInDegreeZero N))                                                                                                                                                                                                   structure Surface where  scheme : Scheme  structureMap : scheme ⟶ Spec (CommRingCat.of ℂ)  integral : IsIntegral scheme  smooth : SmoothOfRelativeDimension 2 structureMap  embeddingDimension : ℕ  embedding : scheme ⟶ complexProjectiveSpace embeddingDimension  closedImmersion : IsClosedImmersion embedding  overComplex : embedding ≫ projectiveSpaceToSpec embeddingDimension = structureMapattribute [instance] Surface.integral Surface.smooth Surface.closedImmersionvariable (X : Scheme)                                                          structure LineBundle where  sheaf : X.Modules  locallyRankOne : ∀ x : X, ∃ U : X.Opens, x ∈ U ∧    Nonempty (sheaf.restrict U.ι ≅ SheafOfModules.unit U.toScheme.ringCatSheaf)                                                                                                                                                         def moduleTensor (M N : X.Modules) : X.Modules :=  (PresheafOfModules.sheafification (𝟙 X.ringCatSheaf.obj)).obj    (PresheafOfModulesOfCommRing.Monoidal.tensorObj (R := X.presheaf) M.val N.val)                                                        def modulePow (M : X.Modules) : ℕ → X.Modules  | 0 => SheafOfModules.unit X.ringCatSheaf  | n + 1 => moduleTensor X M (modulePow M n)                                                                      def structureSheaf : X.Modules := SheafOfModules.unit X.ringCatSheaf                                                                        abbrev GlobalSections (M : X.Modules) := structureSheaf X ⟶ M                                                                                                                                                         def sectionOpen {M : X.Modules} (s : GlobalSections X M) : X.Opens :=  ⨆ (U : X.Opens) (_ : IsIso ((Scheme.Modules.restrictFunctor U.ι).map s)), U                                                                         def LineBundle.IsAmple (L : LineBundle X) : Prop :=  ∀ (x : X) (V : X.Opens), x ∈ V → ∃ n : ℕ, 0 < n ∧    ∃ s : GlobalSections X (modulePow X L.sheaf n),      x ∈ sectionOpen X s ∧ sectionOpen X s ≤ V ∧ IsAffineOpen (sectionOpen X s)endend MaximalSeshadri.Geometrynamespace MaximalSeshadri.Geometrynoncomputable sectionopen CategoryTheory AlgebraicGeometry TopologicalSpaceopen scoped AlgebraicGeometryvariable (X : Scheme)                                                       def restrictScalar (U : X.Opens) : Γ(X, ⊤) →+* Γ(X, U) :=  (X.presheaf.map (homOfLE le_top).op).homlemma restrictScalar_naturality {U V : X.Opens} (i : U ⟶ V) (r : Γ(X, ⊤)) :    X.presheaf.map i.op (restrictScalar X V r) = restrictScalar X U r := by  change (X.presheaf.map (homOfLE le_top).op ≫ X.presheaf.map i.op) r = _  rw [← X.presheaf.map_comp]  rfl                                                        def sheafHomSMul {M N : X.Modules} (r : Γ(X, ⊤)) (f : M ⟶ N) : M ⟶ N where  val := {    app U := by      letI : Module Γ(X, U.unop) (M.val.obj U) := (M.val.obj U).isModule      letI : Module Γ(X, U.unop) (N.val.obj U) := (N.val.obj U).isModule      let g : M.val.obj U →ₗ[Γ(X, U.unop)] N.val.obj U := (f.val.app U).hom      exact ModuleCat.ofHom ((restrictScalar X U.unop r) • g)    naturality {U V} g := by      let : Module (X.presheaf.obj V) (N.presheaf.obj V) := (N.val.obj V).isModule      ext m      change restrictScalar X V.unop r • f.app V.unop (M.presheaf.map g m) =        N.presheaf.map g (restrictScalar X U.unop r • f.app U.unop m)      have hn := CategoryTheory.congr_fun (f.mapPresheaf.naturality g) m      change f.app V.unop (M.presheaf.map g m) =        N.presheaf.map g (f.app U.unop m) at hn      rw [hn]      calc        _ = X.presheaf.map g (restrictScalar X U.unop r) •            N.presheaf.map g (f.app U.unop m) := by              exact congrArg (fun a : X.presheaf.obj V =>                a • N.presheaf.map g (f.app U.unop m))                (restrictScalar_naturality X g.unop r).symm        _ = _ := (N.map_smul g.unop (restrictScalar X U.unop r) (f.app U.unop m)).symm }instance sheafHomModule (M N : X.Modules) : Module Γ(X, ⊤) (M ⟶ N) where  smul := sheafHomSMul X  one_smul f := by    ext U m    change restrictScalar X U 1 • f.app U m = f.app U m    simp  mul_smul r s f := by    ext U m    change restrictScalar X U (r * s) • f.app U m =      restrictScalar X U r • (restrictScalar X U s • f.app U m)    simp [mul_smul]  smul_zero r := by    ext U m    change restrictScalar X U r • (0 : Γ(N, U)) = 0    exact smul_zero _  smul_add r f g := by    ext U m    change restrictScalar X U r • (f.app U m + g.app U m) =      restrictScalar X U r • f.app U m + restrictScalar X U r • g.app U m    exact smul_add _ _ _  zero_smul f := by    ext U m    change restrictScalar X U 0 • f.app U m = 0    simp  add_smul r s f := by    ext U m    change restrictScalar X U (r + s) • f.app U m =      restrictScalar X U r • f.app U m + restrictScalar X U s • f.app U m    simp [add_smul]instance sheafLinear : Linear Γ(X, ⊤) X.Modules where  smul_comp M N P r f g := by    ext U m    change g.app U (restrictScalar X U r • f.app U m) =      restrictScalar X U r • g.app U (f.app U m)    exact g.app_smul _ _  comp_smul M N P f r g := by    ext U m    rflendend MaximalSeshadri.Geometrynamespace MaximalSeshadri.Geometrynoncomputable sectionopen CategoryTheory AlgebraicGeometry TopologicalSpaceopen scoped AlgebraicGeometryvariable {X : Scheme.{0}}instance schemeHasExt : HasExt.{1} X.Modules := HasExt.standard X.Modules                                                                                                  def baseScalars (f : X ⟶ Spec (CommRingCat.of ℂ)) : ℂ →+* Γ(X, ⊤) :=  f.appTop.hom.comp (Scheme.ΓSpecIso (CommRingCat.of ℂ)).inv.hom                                                                                                                                                                                                                                                                                                                                                             abbrev cohomology (M : X.Modules) (n : ℕ) : Type 1 :=  Abelian.Ext.{1} (C := X.Modules) (structureSheaf X) M n                                                                                                                                                                                                     def cohomologyDimension (f : X ⟶ Spec (CommRingCat.of ℂ))    (M : X.Modules) (n : ℕ) : ℕ :=  letI : Module ℂ (cohomology M n) :=    Module.compHom (cohomology M n) (baseScalars f)  Module.finrank ℂ (cohomology M n)                                                                                                                                                         def eulerCharacteristic (f : X ⟶ Spec (CommRingCat.of ℂ)) (d : ℕ)    (M : X.Modules) : ℤ :=  ∑ n ∈ Finset.range (d + 1), (-1 : ℤ) ^ n * (cohomologyDimension f M n : ℤ)                                                                                                                        def selfIntersection (S : Surface) (L : LineBundle S.scheme) : ℤ :=  eulerCharacteristic S.structureMap 2 (modulePow S.scheme L.sheaf 2) -    2 * eulerCharacteristic S.structureMap 2 L.sheaf +    eulerCharacteristic S.structureMap 2 (SheafOfModules.unit S.scheme.ringCatSheaf)                                                                                                                                                structure IntegralCurve (S : Surface) where  scheme : Scheme  embedding : scheme ⟶ S.scheme  closedImmersion : IsClosedImmersion embedding  integral : IsIntegral scheme  dimension : topologicalKrullDim scheme = 1attribute [instance] IntegralCurve.closedImmersion IntegralCurve.integral                                                                                                 def curveDegree (S : Surface) (L : LineBundle S.scheme) (C : IntegralCurve S) : ℤ :=  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    ((Scheme.Modules.pullback C.embedding).obj L.sheaf) -  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    (SheafOfModules.unit C.scheme.ringCatSheaf)endend MaximalSeshadri.Geometrynamespace MaximalSeshadri.Geometrynoncomputable sectionopen CategoryTheory CategoryTheory.Limits AlgebraicGeometry TopologicalSpaceopen scoped AlgebraicGeometry                               abbrev complexBase : Scheme := Spec (CommRingCat.of ℂ)                                                                           abbrev ComplexPoint (S : Surface) :=  Over.mk (𝟙 complexBase) ⟶ Over.mk S.structureMap                                                             def ComplexPoint.image {S : Surface} (p : ComplexPoint S) : S.scheme :=  p.left (⟨⊥, Ideal.isPrime_bot⟩ : PrimeSpectrum ℂ)                                                                                   def surfacePower (S : Surface) (r : ℕ) : Over complexBase :=  ∏ᶜ (fun _ : Fin r => Over.mk S.structureMap)                                                                 def tupleImage (S : Surface) (r : ℕ) (p : Fin r → ComplexPoint S) :    (surfacePower S r).left :=  (Limits.Pi.lift p).left (⟨⊥, Ideal.isPrime_bot⟩ : PrimeSpectrum ℂ)                                                                                                                       @[instance_reducible] def tupleZariskiTopology (S : Surface) (r : ℕ) :    TopologicalSpace (Fin r → ComplexPoint S) :=  TopologicalSpace.induced (tupleImage S r) inferInstance                                                                def Configuration (S : Surface) (r : ℕ) :=  {p : Fin r → ComplexPoint S // Function.Injective (fun i => (p i).image)}instance configurationTopology (S : Surface) (r : ℕ) :    TopologicalSpace (Configuration S r) :=  letI := tupleZariskiTopology S r  inferInstanceAs (TopologicalSpace {p : Fin r → ComplexPoint S //    Function.Injective (fun i => (p i).image)})                                                                                                                                                                                                                                                                                         def idealOrder {R : Type} [CommRing R] [IsLocalRing R] (I : Ideal R) : ℕ :=  sInf {n : ℕ | ¬ I ≤ IsLocalRing.maximalIdeal R ^ (n + 1)}                                                                                                                                                                                                                def curveMultiplicity (S : Surface) (C : IntegralCurve S) (p : ComplexPoint S) : ℕ := by  classical  exact if h : ∃ q : C.scheme, C.embedding q = p.image then    idealOrder (RingHom.ker (C.embedding.stalkMap h.choose).hom)  else 0                                                              def totalMultiplicity (S : Surface) (r : ℕ) (C : IntegralCurve S)    (p : Configuration S r) : ℕ :=  ∑ i : Fin r, curveMultiplicity S C (p.val i)                                                                 def seshadriConstant (S : Surface) (L : LineBundle S.scheme) (r : ℕ)    (p : Configuration S r) : ℝ :=  sInf {a : ℝ | ∃ C : IntegralCurve S, 0 < totalMultiplicity S r C p ∧    a = (curveDegree S L C : ℝ) / (totalMultiplicity S r C p : ℝ)}                                                                                                                                                                                                                                                                          endend MaximalSeshadri.Geometrynamespace MaximalSeshadri.Geometrynoncomputable sectionopen CategoryTheory CategoryTheory.Limits AlgebraicGeometry TopologicalSpaceopen scoped AlgebraicGeometry                                                                                                                                                                                def moduleCurveDegree (S : Surface) (M : S.scheme.Modules) (C : IntegralCurve S) : ℤ :=  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    ((Scheme.Modules.pullback C.embedding).obj M) -  eulerCharacteristic (C.embedding ≫ S.structureMap) 1    (structureSheaf C.scheme)                                                                                                         def sectionImageIdeal {X : Scheme} (J : LineBundle X)    (ι : J.sheaf ⟶ structureSheaf X) (U : X.Opens) : Ideal Γ(X, U) := by  letI : Module Γ(X, U) (J.sheaf.val.obj (Opposite.op U)) :=    (J.sheaf.val.obj (Opposite.op U)).isModule  let φ : J.sheaf.val.obj (Opposite.op U) →ₗ[Γ(X, U)] Γ(X, U) :=    (ι.val.app (Opposite.op U)).hom  exact φ.range                                                                                                                                                                                                                                         def PresentsPullbackIdeal {X Y : Scheme} (I : X.IdealSheafData) (f : Y ⟶ X)    (J : LineBundle Y) (ι : J.sheaf ⟶ structureSheaf Y) : Prop :=  Mono ι ∧ ∀ (U : Y.affineOpens) (V : X.affineOpens)    (e : U.1 ≤ f ⁻¹ᵁ V.1),    sectionImageIdeal J ι U.1 = (I.ideal V).map (f.appLE V.1 U.1 e).hom                                                            def InvertiblePullbackIdeal {X Y : Scheme} (I : X.IdealSheafData) (f : Y ⟶ X) : Prop :=  ∃ (J : LineBundle Y) (ι : J.sheaf ⟶ structureSheaf Y), PresentsPullbackIdeal I f J ι                                                                                                                                                                                                                    def centreIdeal (S : Surface) (r : ℕ) (p : Configuration S r) : S.scheme.IdealSheafData :=  ∏ i : Fin r, (p.val i).left.ker                                                                                                                                                                                                            def IsBlowup {X B : Scheme} (I : X.IdealSheafData) (π : B ⟶ X) : Prop :=  InvertiblePullbackIdeal I π ∧ ∀ (Y : Scheme) (f : Y ⟶ X),    InvertiblePullbackIdeal I f → ∃! h : Y ⟶ B, h ≫ π = f                                                                                                                                                                                                             structure PointBlowup (S : Surface) (r : ℕ) (p : Configuration S r) where  surface : Surface  projection : surface.scheme ⟶ S.scheme  overComplex : projection ≫ S.structureMap = surface.structureMap  isBlowup : IsBlowup (centreIdeal S r p) projection  exceptionalIdeal : Fin r → LineBundle surface.scheme  exceptionalInclusion : ∀ i, (exceptionalIdeal i).sheaf ⟶ structureSheaf surface.scheme  exceptionalPullback : ∀ i, PresentsPullbackIdeal (p.val i).left.ker projection    (exceptionalIdeal i) (exceptionalInclusion i)                                                                                                                                                                                                                 def PointBlowup.BoundaryNef {S : Surface} {r : ℕ} {p : Configuration S r}    (B : PointBlowup S r p) (L : LineBundle S.scheme) : Prop :=  ∀ C : IntegralCurve B.surface,    0 ≤ (moduleCurveDegree B.surface      ((Scheme.Modules.pullback B.projection).obj L.sheaf) C : ℝ) +      Real.sqrt ((selfIntersection S L : ℝ) / r) *        ∑ i : Fin r, (curveDegree B.surface (B.exceptionalIdeal i) C : ℝ)                                                                                                                                                   def EventualMaximalSeshadri (S : Surface) (L : LineBundle S.scheme) : Prop :=  ∃ r₀ : ℕ, 0 < r₀ ∧ ∀ r : ℕ, r₀ ≤ r →    ∃ Z : ℕ → Set (Configuration S r),      (∀ n, IsClosed (Z n) ∧ Z n ≠ Set.univ) ∧      (∃ p : Configuration S r, ∀ n, p ∉ Z n) ∧      ∀ p : Configuration S r, (∀ n, p ∉ Z n) →        (∃ B : PointBlowup S r p, B.BoundaryNef L) ∧        seshadriConstant S L r p = Real.sqrt ((selfIntersection S L : ℝ) / r)endend MaximalSeshadri.Geometrynamespace MaximalSeshadri.Geometrytheorem maximalSeshadriConstants (S : Surface) (L : LineBundle S.scheme)    (hL : LineBundle.IsAmple S.scheme L) : EventualMaximalSeshadri S L := by  sorryend MaximalSeshadri.Geometryend OAI
Every extracted statement of the accompanying papers

The statements the atlas extracted automatically from each accompanying paper’s TeX source, with links to the full sources.

Nagata’s conjecture for plane curves

Theorem

For every integer r\ge10, there is a countable union E_r of proper Zariski-closed subsets of U_r, with nonempty complement, such that the following holds for every tuple (p_1,\ldots,p_r)\notin E_r. If C is a nonzero effective plane curve of degree d\ge1 and m_1,\ldots,m_r\in\Z_{\ge0} satisfy \mult_{p_i}C\ge m_i, then

d\sqrt r>\sum_{i=1}^r m_i.
Section 1, Introduction Read it in the paper TeX source, line 31
Show the TeX
For every integer $r\ge10$, there is a countable union $E_r$ of proper
Zariski-closed subsets of $U_r$, with nonempty complement, such that the
following holds for every tuple $(p_1,\ldots,p_r)\notin E_r$.
If $C$ is a nonzero effective plane curve of degree $d\ge1$ and
$m_1,\ldots,m_r\in\Z_{\ge0}$ satisfy $\mult_{p_i}C\ge m_i$, then
\[
 d\sqrt r>\sum_{i=1}^r m_i.
\]

Maximal Seshadri constants on arbitrary polarized surfaces

Theorem

For every smooth integral complex projective surface S and every ample line bundle L on S, there is an integer r_0=r_0(S,L) with the following property. For each integer r\ge r_0, there is a countable union Z_r of proper Zariski-closed subsets of U_r, with nonempty complement, such that for every \mathbf p\in U_r\setminus Z_r the class

\pi^*L-\sqrt{\frac{L^2}{r}}\sum_{i=1}^r E_i

is nef on the blow-up at \mathbf p. Consequently,

\varepsilon(S,L;\mathbf p)=\sqrt{\frac{L^2}{r}}.
Section 1, Introduction Read it in the paper TeX source, line 31
Show the TeX
For every smooth integral complex projective surface $S$ and every ample
line bundle $L$ on $S$, there is an integer $r_0=r_0(S,L)$ with the following
property. For each integer $r\ge r_0$, there is a countable union
$Z_r$ of proper Zariski-closed subsets of $U_r$, with nonempty complement,
such that for every $\mathbf p\in U_r\setminus Z_r$ the class
\[
 \pi^*L-\sqrt{\frac{L^2}{r}}\sum_{i=1}^r E_i
\]
is nef on the blow-up at $\mathbf p$. Consequently,
\[
 \varepsilon(S,L;\mathbf p)=\sqrt{\frac{L^2}{r}}.
\]
Configuration and file facts
OpenAI’s Lean catalogue
OpenAI lists this as a main result in its Lean catalogue.
Allowed axioms
propext, Quot.sound, Classical.choiceThe axioms this configuration allows a proof to use. A replay shows which of them a proof uses.
Imports
Mathlib
Imports from outside Mathlib
None
Local vocabulary
44 local vocabulary declarations
Lines of Lean, without comments or blank lines
223
Second proof-verification program (nanoda)
Off in OpenAI's configuration.

Statement comparison

A shareable summary of this page: the proposed paper match, what the Lean statement expresses, and which reviews are recorded.

Plectis Atlas

Eventual maximal Seshadri constants

Family 039: Nagata’s conjecture and maximal Seshadri constants

Candidate pairing

Theorem

For every smooth integral complex projective surface S and every ample line bundle L on S, there is an integer r_0=r_0(S,L) with the following property. For each integer r\ge r_0, there is a countable union Z_r of proper Zariski-closed subsets of U_r, with nonempty complement, such that for every \mathbf p\in U_r\setminus Z_r the class

\pi^*L-\sqrt{\frac{L^2}{r}}\sum_{i=1}^r E_i

is nef on the blow-up at \mathbf p. Consequently,

\varepsilon(S,L;\mathbf p)=\sqrt{\frac{L^2}{r}}.

Maximal Seshadri constants on arbitrary polarized surfaces

TeX label thm:main, build/sections/introduction.tex, line 31

The Lean statement says

theorem maximalSeshadriConstants (S : Surface) (L : LineBundle S.scheme)    (hL : LineBundle.IsAmple S.scheme L) : EventualMaximalSeshadri S L := by  sorry

A Lean statement states the theorem and leaves its proof as sorry on purpose. OpenAI’s proof is in a separate solution module, and a program called Comparator checks that proof against this statement.

Atlas selected this possible match because the two statements share words. No review of whether they mean the same thing is recorded.two independent groups report that Comparator accepted runs for this file at the release version shown here.Statement review: none recorded

44 local vocabulary declarationsAllowed axioms: propext, Quot.sound, Classical.choiceopenai/math at fd4aeebwcook04.github.io/plectis-atlas/statements/MaximalSeshadriConstants.html

Recorded comparisons with the paper

Atlas records no contributed comparison of this statement with the paper.

Contributed Comparator run reports

Atlas records no contributed report of running Comparator for this statement file.

Questions to resolve when comparing this statement with the paper

  • Both independent readers find this family's challenges state less than its headline, while the atlas's AI draft classes this file as stating a paper's theorem as the paper does; check which part of the headline it covers.

Compare this statement with the paperShare a Comparator run reportSuggest a change