Skip to content

feat(AlgebraicGeometry): function fields and Faltings' theorem#191

Open
alreadydone wants to merge 10 commits into
leanprover:mainfrom
alreadydone:Faltings
Open

feat(AlgebraicGeometry): function fields and Faltings' theorem#191
alreadydone wants to merge 10 commits into
leanprover:mainfrom
alreadydone:Faltings

Conversation

@alreadydone
Copy link
Copy Markdown
Contributor

No description provided.

Comment thread LeanEval/AlgebraicGeometry/FunctionField.lean Outdated
Copy link
Copy Markdown

@MichaelStollBayreuth MichaelStollBayreuth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Otherwise LGTM.

Comment thread LeanEval/AlgebraicGeometry/FunctionField.lean Outdated
Comment thread LeanEval/AlgebraicGeometry/FunctionField.lean Outdated
Comment thread LeanEval/AlgebraicGeometry/FunctionField.lean Outdated
@MichaelStollBayreuth
Copy link
Copy Markdown

Maybe you can also add a concrete special case, e.g.,

theorem faltngs_hyperelliptic {K : Type*} [Field K] [NumberField K] {f : Polynomial K} (hf : f.discr ≠ 0) (hd : 5 ≤ f.natDegree) :
    {x : K | IsSquare (f.eval x)}.Finite := by
  sorry

It would be interesting to see if (1) models can find simpler proofs for the special case, (2) models can deduce the concrete application from the general result.

@alreadydone
Copy link
Copy Markdown
Contributor Author

Nice idea! I'd use Polynomial.Separable for hf though.

@MichaelStollBayreuth
Copy link
Copy Markdown

MichaelStollBayreuth commented May 12, 2026

Strangely, according to loogle, there is no result in Mathlib that connects Polynomial.Separable and Polynomial.discr... I guess this is because Polynomial.discr has very little API.

@alreadydone
Copy link
Copy Markdown
Contributor Author

alreadydone commented May 12, 2026

Yeah apparently @kckennylau added Polynomial.discr relatively recently.

@alreadydone
Copy link
Copy Markdown
Contributor Author

alreadydone commented May 12, 2026

Maybe you can also add a concrete special case, e.g.,

I think it's better that you open a separate PR to add it in another file (maybe under NumberTheory is more suitable than AlgebraicGeometry for this one), since it doesn't mention function fields. This file would be suitable for further eval_problems about function fields, like Riemann Roch ...

@alreadydone
Copy link
Copy Markdown
Contributor Author

alreadydone commented May 12, 2026

Instead of the old Is1DFunctionField I introduced

class BundledFunctionField extends
  Algebra (RatFunc K) F, IsScalarTower K (RatFunc K) F, FunctionField K F

to make statements shorter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants