Zulip Chat Archive
Stream: PrimeNumberTheorem+
Topic: Outstanding Tasks, V1
Alex Kontorovich (Feb 01 2024 at 04:31):
Thanks for all the contributions so far, especially @Bolton Bailey who gave us our first dark green backgrounds with proofs of the Smooth Urysohn lemma and its relative, SmoothExistence. We now also have a first light green background in PerronFormulaLtOne. (Recall that this means that its proof is formalized, but depends on things that are not yet.) The dependencies are (by design) very simple, so please feel free to claim any of the following:
- RectangleIntegral_eq_zero says that the integral of a holomorphic function on a rectangle vanishes, and should be a simple matter of applying integral_boundary_rect_eq_zero_of_differentiableOn. Done thanks to @llllvvuu
- RectangleIntegral_tendsTo_VerticalIntegral is also rather simple, saying that if you integrate over a rectangle, and send the top and bottom to infinity (assuming those decay), what's left is the difference of the (positively-oriented) integrals over the sides. Right now there are no conditions on , so we will need to stipulate that the top and bottom integrals go to zero. (And then this condition will need to be implemented where
RectangleIntegral_tendsTo_VerticalIntegral
is used in the proof ofPerronFormulaLtOne
. Again, I would be surprised if this caused great difficulty... Claimed by @llllvvuu - limitOfConstant should be very simple, saying that a constant function whose limit is zero, is also zero. (Maybe it's already in Mathlib somewhere?) Done thanks to @llllvvuu
- HolomorphicOn_of_Perron_function says that, for , the function is holomorphic (i.e., Complex differentiable) for . Just a matter of chaining some differentiability statements together; shouldn't be too hard. Done by @llllvvuu
- PerronIntegralPosAux says essentially that is integrable over ; shouldn't be hard for someone familiar with that part of the library... Done by @llllvvuu
- tendsto_Realpow_atTop_nhds_0_of_norm_lt_1 says that if , then as in . Such a thing nearly exists, called tendsto_pow_atTop_nhds_0_of_norm_lt_1, but not quite (uses natural exponents, whereas we want real)... Done by @Yury G. Kudryashov
- VertIntPerronBound is a bound on an integral, applying the triangle inequality, and bounding ; again, shouldn't be too hard. Solved by @Ruben Van de Velde
Those would close out PerronFormulaLtOne
. I'm working on a similar treatment for PerronFormulaGtOne which will be more complicated, as we actually need to pull some contours past poles and evaluate residues. Those two together should give us the PerronFormula and we'll be well on the way towards proving MellinInversion.
In the grand scheme of things, Mellin inversion can be used to prove Fourier inversion, which would get us closer to the Fourier transform being a bijection on Schwartz functions. The latter is en route to the first proof of Weak PNT. Though at this point, if @Arend Mellendijk's Selberg sieve argument works out to prove SmoothedChebyshevClose, it seems to me that we'll get to (a weak) PNT even faster by following the second, complex analytic proof. The latter is also a better warmup for the stronger, exp-root-log-savings proof than weak proof 1...
Please let me know if you'd like to claim any of the above, and of any other comments/suggestions. This is really fun; thanks all for participating!! :)
Terence Tao (Feb 01 2024 at 04:44):
Chiming in with some selected tasks from the non-complex-analysis parts of the project that should be relatively straightforward.
- First Fourier Identity. This is basically a Fubini theorem type calculation, and the first step towards the Wiener-Ikehara theorem. Should be pretty simple.
- Second Fourier identity Another Fubini calculation.
- Asymptotics for first summatory function Assuming the Weak PNT as a black box, it should be relatively simple to conclude that as well. This could be a good test case to see whether we have phrased our asymptotic estimates in a convenient fashion.
Terence Tao (Feb 01 2024 at 04:51):
I should add that this list is not meant to be exhaustive; if anyone spots a node in the blueprint that they think they can easily polish off, please feel free to claim it even if we don't list it in our recommended task list!
llllvvuu (Feb 01 2024 at 05:51):
here's "1. RectangleIntegral_eq_zero": https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/18
llllvvuu (Feb 01 2024 at 06:56):
here's "3. limitOfConstant": https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/19
Ruben Van de Velde (Feb 01 2024 at 08:16):
I came across something close to 7 recently, let me see if I can find it
Ruben Van de Velde (Feb 01 2024 at 08:17):
Oh, not all of 7, just docs#Complex.abs_exp
Alex Kontorovich (Feb 01 2024 at 14:13):
Yes that needs to be added to the triangle inequality, together with a simple estimate for the denominator...
Ruben Van de Velde (Feb 01 2024 at 23:36):
I've done 7 modulo some integrability goals I'll look at tomorrow
WIP
Alex Kontorovich (Feb 01 2024 at 23:49):
Great thanks! It's probably closely related to 5; maybe your work on 7 will handle 5 also?
Yury G. Kudryashov (Feb 02 2024 at 00:05):
Isn't No. 6 docs#tendsto_rpow_atTop_of_base_lt_one ?
Ruben Van de Velde (Feb 02 2024 at 10:37):
7: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/21
No time to look further at 5; maybe docs#integral_inv_one_add_sq or docs#Real.deriv_arctan is relevant
llllvvuu (Feb 03 2024 at 04:58):
Here's "4. HolomorphicOn_of_Perron_function": https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/22
llllvvuu (Feb 03 2024 at 09:15):
I've made some progress on "5. PerronIntegralPosAux": https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/24
I should be able to finish it soon.
llllvvuu (Feb 03 2024 at 22:48):
llllvvuu said:
I've made some progress on "5. PerronIntegralPosAux": https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/24
I should be able to finish it soon.
Finished
Alex Kontorovich (Feb 04 2024 at 00:00):
Great thanks!
Alex Kontorovich (Feb 04 2024 at 00:03):
What's the "right" way to handle things like this more generally? Something like: is integrable if, say, is continuous (so no problems near ), and then . Does that already exist somewhere? If so, could PerronIntegralPosAux
be done more easily by showing the big-O statement, instead of the precise work with ?
Alex Kontorovich (Feb 04 2024 at 00:04):
By the way, even if the above works, the work will not have been for naught! We'll need it later when we evaluate residues of simple poles. (Do we have, e.g., that ?)
Arend Mellendijk (Feb 04 2024 at 00:06):
llllvvuu (Feb 04 2024 at 00:19):
I probably could have used the following instead: https://github.com/leanprover-community/mathlib4/blob/8666bd82efec40b8b3a5abca02dc9b24bbdf2652/Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean#L89-L123
Oops. Well, it wasn't too bad either way. Once the arctan stuff is upstreamed, we are left with just the proof of the asymptotic, which is necessary regardless of the asymptotic used (1/x^2 or 1/(1+x^2)). Actually, 1/x^2 might've been a bit more tedious for lower bounding the integral.
llllvvuu (Feb 04 2024 at 00:39):
More generally, I think f = O(g) might be more tedious to work with than f < g, since you have to deal with the part before the "eventually" oops continuity handles this part. Generalization of docs#integrable_of_isBigO_exp_neg to something like integrable_of_isBigO_integrable
could work as an API. You have to do apply it to both tails though which is kind of tedious.
Actually, "show integrable by showing f < g for some integrable g" and "show integral pos by showing h < f < g for some h, g with positive integral" are already pretty expedient techniques at a high level. The part that is not as expedient as it could be currently is, inequalities. One could imagine PerronIntegralPosAux
being very short had I been able to skip the manual calc
and trans
work (and in this case, there is also some extra boilerplate because measurability
timed out).
llllvvuu (Feb 04 2024 at 00:51):
--
llllvvuu (Feb 04 2024 at 02:33):
I've started work on 2. RectangleIntegral_tendsTo_VerticalIntegral
: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/28. The lemma is done, I just need to satisfy the new hypotheses.
Terence Tao (Feb 04 2024 at 03:13):
I just wanted to say that one of the intended outcomes of this project is that we pick up experience with asymptotic notation and how to use estimates to prove statements such as integrability, convergence, etc. in a civilized manner. In particular if in the course of formalizing one of the lemmas in this project, you spot a general lemma (such as a criterion for integrability) that could be re-used for some future application, it may well be worth spinning that off as a standalone lemma, even if it means a little bit more work for the immediate task at hand.
Yury G. Kudryashov (Feb 04 2024 at 04:48):
... and opening a PR to Mathlib
Sébastien Gouëzel (Feb 04 2024 at 06:41):
docs#integrable_one_add_norm may prove useful for this kind of things, by the way.
llllvvuu (Feb 04 2024 at 18:13):
It turns out that I do need to use the asymptotic method, so I've started working on a draft mathlib PR: https://github.com/leanprover-community/mathlib4/pull/10248
The even/odd variant is the one I need (hopefully the statement is actually true). Maybe others will find it helpful too.
Terence Tao (Feb 04 2024 at 18:59):
llllvvuu said:
It turns out that I do need to use the asymptotic method, so I've started working on a draft mathlib PR: https://github.com/leanprover-community/mathlib4/pull/10248
The even/odd variant is the one I need (hopefully the statement is actually true). Maybe others will find it helpful too.
For integrable_of_isBigO_integrable
, perhaps one can replace the hypotheses (hsymm : ∀ x, ‖f x‖ = ‖f (-x)‖)
(ho : f =O[atTop] g)
with (ho : f =O[atTop] g) (ho' : (fun x ↦ f (-x)) =O[atTop] g)
? Or perhaps (ho : f =O[atTop] g) (ho' : f =O[atBot] g')
where g'
obeys similar hypotheses to g
? This could be more flexible for applications, and the original version could be recovered as a corollary.
There is a more abstract statement that if f
is locally integrable on some topological measure space X
, and is O() of an integrable function with respect to the cocompact filter, then f
is integrable, which combines well with the general statement (docs#Continuous.locallyIntegrable) that continuous functions on a locally compact space will be locally integrable wrt any locally finite measure. It may possibly be worth proving this general statement first and deriving your special case from them, since these results are likely to be useful elsewhere (e.g., in higher dimensions).
Terence Tao (Feb 04 2024 at 19:15):
One could also split this up using docs#MeasureTheory.IntegrableAtFilter into two sublemmas:
- If
f =O[l] g
andIntegrableAtFilter g l
, thenIntegrableAtFilter f l
. [EDIT: some measurability hypothesis onf
is needed here also.] - If
IntegrableAtFilter f Filter.cocompact
andLocallyIntegrable f
, thenIntegrable f
. [EDIT: this is in fact an if and only if.]
EDIT: On the reals (and possibly some other ordered topological spaces), there would also be
- If
IntegrableAtFilter f Filter.cocompact
iffIntegrableAtFilter f atTop
andIntegrableAtFilter f atBot
. - On non-negative reals or Ici intervals, one can omit the
atBot
proposition in #3.
Arend Mellendijk (Feb 04 2024 at 19:46):
RE: 3, you could split that up further into docs#Real.cocompact_eq and a more general theorem stating IntegrableAtFilter f (l1 ⊔ l2) ↔ (IntegrableAtFilter f l1 ∧ IntegrableAtFilter f l2)
(which doesn't seem to exist yet).
llllvvuu (Feb 04 2024 at 20:51):
Thanks for the suggestions! I've split up the work and proved 1. and 2. in the PR, and will follow up with a dependent PR establishing 3. and 4.
Terence Tao (Feb 04 2024 at 21:41):
llllvvuu said:
Thanks for the suggestions! I've split up the work and proved 1. and 2. in the PR, and will follow up with a dependent PR establishing 3. and 4.
For part #1, it might be nice to also add the corollary specializing to the top filter ⊤
(so that IntegrableAtFilter
simplifies to Integrable
- this, by the way, should also be a lemma in Mathlib, possibly even a simp lemma). There will be occasions in the future where we obtain non-asymptotic bounds f =O[⊤] g
(as opposed to merely f =O[atTop] g
or f =O[Filter.cocompact] g
) and it would be nice to support this also.
llllvvuu (Feb 05 2024 at 06:54):
I've added the requested IntegrableAtFilter f ⊤ μ
to the first PR and the Real
corollaries as a second PR. Both are ready for review for mathlib; in the meantime, I'll try using this content in PrimeNumberTheorem+
Last updated: May 02 2025 at 03:31 UTC