Zulip Chat Archive

Stream: general

Topic: Archive results added to Mathlib


Xavier Roblot (Sep 16 2023 at 13:02):

The PR #6907 (ready for review :grinning_face_with_smiling_eyes: ) proves the formula for the area of a circle. This result has been proved already in Lean and is part of the Archive, see AreaOfACircle (and in fact #6907 uses some ideas from this proof). In the PR, there is a discussion about what to do about the Archive result (and the entry in the 100 theorems list that links to it) when this PR is merged. Should we keep the Archive result as such, or should we delete it and update the link to point to the result in Mathlib? Or maybe some other options...

I think it is worth having a discussion here before making a decision.

Yaël Dillies (Sep 16 2023 at 13:07):

I think it's fine to remove the archive result if mathlib acquires a more general result.

Eric Wieser (Sep 16 2023 at 13:20):

Arguably the truly analogous result is the one about the area of discs in WithLp 2 (ℝ × ℝ), which needs #6136

Eric Wieser (Sep 16 2023 at 13:22):

Perhaps we should keep the file AreaOfACircle, and have it contain aliases for all three of:

  • Area of a circle in the complex numbers
  • Area of a circle in EuclideanSpace
  • Area of a circle in WithLp 2 (ℝ × ℝ) (to be added later)

Kevin Buzzard (Sep 16 2023 at 13:37):

Area of a circle in the "unoriented complexes", any algebraic closure of the reals

Yury G. Kudryashov (Sep 18 2023 at 04:32):

Can we have it in a 2-dimensional inner product space?

Yury G. Kudryashov (Sep 18 2023 at 04:33):

Or better have a formula for the volume of a ball in n-dimensional inner product space.

Yaël Dillies (Sep 18 2023 at 06:19):

If anyone gets to doing that, the best formulas I know for the volume and surface of a ball are equations (32) and (33) from the Tau Manifesto.

Yaël Dillies (Sep 18 2023 at 06:20):

They involve no case splitting between even and odd n, and are written in terms of π/2 and the double factorial.

Kevin Buzzard (Sep 18 2023 at 06:22):

We have the gamma function so why not just use that :-)

Yaël Dillies (Sep 18 2023 at 06:44):

Because it's non-elementary and over-powered here?

Kevin Buzzard (Sep 18 2023 at 06:56):

Use Gamma and prove the results relating special values to double factorials then

Yaël Dillies (Sep 18 2023 at 07:24):

You know that the volume calculation is naturally inductive (with a step of 2) and shows that V_{n + 2} = 2 * pi / (n + 2) * V_n? I don't see how to justify dragging an import as huge as the Gamma function to encode such a simple relation. You aren't going to use 43\frac 4 3-dimensional spheres (if that is even a thing), are you?

Antoine Chambert-Loir (Sep 18 2023 at 07:27):

The Beta/Gamma relation is a really fundamental result in analysis. It has to belong to Mathlib.

Yaël Dillies (Sep 18 2023 at 07:38):

Sure, I'm just saying it should not be imported where a simple two-step recurrence relation suffices.

Sebastien Gouezel (Sep 18 2023 at 07:38):

There is a direct non-inductive volume calculation, where the volumes comes out directly in terms of the Gamma function.

Sebastien Gouezel (Sep 18 2023 at 07:40):

(search for "Gaussian integrals" in https://en.wikipedia.org/wiki/Volume_of_an_n-ball)

Eric Wieser (Sep 18 2023 at 07:44):

I'm pretty sure @Floris van Doorn said they already had the n-ball result ready

Floris van Doorn (Sep 18 2023 at 10:19):

Yes, @Heather Macbeth and I proved it on a branch. We will start PR-ing this (somewhat) soon:
https://github.com/leanprover-community/mathlib4/blob/marginal/Mathlib/MeasureTheory/Measure/Lebesgue/VolumeBall.lean#L367
Our current result is formulated for ι → ℝ, and we indeed defined the Beta function for this:

def Real.Beta (a b : ) :  := Gamma a * Gamma b / Gamma (a + b)

Last updated: Dec 20 2023 at 11:08 UTC