Zulip Chat Archive

Stream: PrimeNumberTheorem+

Topic: mathlib bump


Sébastien Gouëzel (May 29 2024 at 10:15):

I am bumping mathlib in https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/178, to use that mathlib knows that Fourier transform is a bijection on Schwartz space. The bump went really well thanks to deprecations (apart from the nat_cast renaming, on which we forgot to add deprecations). And Lean became more powerful at several places (less bugs in typeclass inference, gcongr more powerful), so most fixing was just removing things because the goal was already closed!

Yaël Dillies (May 29 2024 at 10:16):

Sébastien Gouëzel said:

apart from the nat_cast renaming, on which we forgot to add deprecations

Was this mine?

Sébastien Gouëzel (May 29 2024 at 10:27):

Probably, yes. I'll look if I can generate the deprecations automatically.

Sébastien Gouëzel (May 30 2024 at 10:02):

Deprecations in #13368 (around 275 deprecations...).

Yaël Dillies (May 30 2024 at 10:17):

Oh I see. Deprecations were not really "forgotten". Since there were so many of them and the name change was so mechanical, it was decided to not bother.

Alastair Irving (Jun 09 2024 at 11:29):

Maybe you should have specified specific commits for Mathlib and the other dependencies rather than just the master branch. When I run make I get an error:
error: ././.lake/packages/mathlib/lakefile.lean:86:2: error: unknown attribute [test_driver]
which I think is because Mathlib has now moved to Lean 4.9 but we're still on 4.8.

Ruben Van de Velde (Jun 09 2024 at 11:41):

This is what the JSON file is for

Ruben Van de Velde (Oct 03 2024 at 20:59):

Preparing one now

Ruben Van de Velde (Oct 03 2024 at 21:51):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/192

Alex Kontorovich (Oct 15 2024 at 15:37):

Darn, this broke again... (Building docs...) Any help?

Pietro Monticone (Oct 15 2024 at 16:53):

Sure, doc-gen4 isn't in manifest.

Fixed, tested locally and opened PR.

Mauricio Collares (Oct 15 2024 at 17:05):

I believe there's no need to update the manifest, since make doc does that in CI (the last passing commit doesn't have doc-gen4 in the manifest, for example). Pointing to the correct doc-gen4 commit in lakefile.lean should suffice.

Pietro Monticone (Oct 15 2024 at 17:12):

When I locally run

lake -R -Kenv=dev build PrimeNumberTheoremAnd:docs

It returns:

error: dependency '«doc-gen4»' not in manifest; use `lake update «doc-gen4»` to add it

I tend to believe it's better to have all the dependencies in the manifest file, but I'm not sure.

Mauricio Collares (Oct 15 2024 at 17:15):

I don't mind either way, but CI doesn't run lake directly. It runs make LAKEBIN='~/.elan/bin/lake' doc, and the Makefile takes care of running $(LAKEBIN) -R -Kenv=dev update before running a documentation build.

Pietro Monticone (Oct 15 2024 at 17:15):

I see... the PNT+ workflow is different from those I'm used to.

Thanks @Mauricio Collares for pointing that out.

Pietro Monticone (Oct 15 2024 at 17:16):

The changes in this PR should work in any case.

Alex Kontorovich (Oct 15 2024 at 17:40):

It worked! Thank you!!

Ruben Van de Velde (Nov 07 2024 at 10:40):

Not sure what's wrong with the CI in https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/203 ; it builds locally

Kevin Buzzard (Nov 07 2024 at 10:43):

When I've seen errors like this, they're sometimes caused by the fact that even though a file builds locally, it somehow conflicts with another file in the repo which isn't imported. Can you get the error locally if you import the entire project all in one go?

Ruben Van de Velde (Nov 07 2024 at 10:55):

That shouldn't be it - I'm also running lake build locally. In fact, I did see that error before, but I fixed it by changing the version of mathlib I depended on

Alex Kontorovich (Nov 07 2024 at 14:30):

Paging @Ian Jauslin - any idea what's going on here?

Mauricio Collares (Nov 07 2024 at 14:37):

Note that CI on PRs essentially runs lake update; lake exe cache get; lake build. If your lakefile does not use a pinned commit, the lake update step could cause problems. CI on master does a similar thing.

With this command I can reproduce the build failures in the PR because mathlib's v4.13.0 tag moved from d5ab93e3a3afadaf265a583a92f7e7c47203b540 to d7317655e2826dc1f1de9a0c138db2775c4bb841.

Mauricio Collares (Nov 07 2024 at 14:37):

Ah, the same problem is being discussed at #general > v4.13.0 discussion I believe

Ruben Van de Velde (Nov 07 2024 at 14:41):

Oh, why is it doing that?

Alex Kontorovich (Nov 07 2024 at 15:40):

Ack! Docs failing to build again...

Ruben Van de Velde (Nov 07 2024 at 15:44):

Oh, same issue

Ruben Van de Velde (Nov 07 2024 at 15:48):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/205 - alternatively I can pin the lake commit in the lakefile.lean

Ian Jauslin (Nov 07 2024 at 16:41):

We are using a pinned commit, so lake update should not cause issues, as long as there is no inherent incompatibility with the version of mathlib that is pinned.
So I'm adding lake update back into the workflow.

Ian Jauslin (Nov 07 2024 at 16:52):

The issue seems to be with the bump to version 4.13.0. Why is the bump needed? Should we revert to 4.12 for now?

Ruben Van de Velde (Nov 07 2024 at 16:52):

The issue is that a tag is not fixed, and the v4.13.0 tag changed after EulerProducts updated to it

Ruben Van de Velde (Nov 07 2024 at 16:53):

Why do you want to run lake update? What purpose does that serve?

Ian Jauslin (Nov 07 2024 at 16:54):

It downloads the appropriate versions of the dependencies, does it not?

Ian Jauslin (Nov 07 2024 at 16:56):

So if the tag is being moved, shouldn't we revert to 4.12 until things are settled?

Mauricio Collares (Nov 07 2024 at 17:00):

The tag was moved once to bump ProofWidgets (to get this fix), I don't think it's expected to change again. But since the tags point to master instead of a separate branch, applying the ProofWidgets bump meant picking up a bunch of unrelated commits as well.

Ian Jauslin (Nov 07 2024 at 17:15):

It seems that EulerProducts is not working properly with the newly tagged 4.13.0, as @Ruben Van de Velde mentioned. I'm guessing we should revert to the commit that was previously tagged as 4.13.0? Or revert everything to how it was with 4.12.0?

Ruben Van de Velde (Nov 07 2024 at 17:33):

Why do you want to revert things? What purpose does that serve?

Ian Jauslin (Nov 07 2024 at 17:33):

The project currently does not compile

Ruben Van de Velde (Nov 07 2024 at 17:34):

What makes you say that?

Ian Jauslin (Nov 07 2024 at 17:36):

In the CI, if we don't run lake update, then it keeps the old versions of the dependencies that are cached. So not running lake update is not a fix: it just prevents the version of mathlib and EulerProducts that was cached from being updated to the versions in the lakefile. If you download a fresh version of the repo and try to compile it, it fails, with an error related to EulerProducts.

Ruben Van de Velde (Nov 07 2024 at 17:37):

That's not true

Ruben Van de Velde (Nov 07 2024 at 17:38):

lake build will use the versions of dependencies that are listed in the JSON file

Ruben Van de Velde (Nov 07 2024 at 17:38):

Running lake update in CI will either do nothing or do the wrong thing

Ian Jauslin (Nov 07 2024 at 17:38):

But not the versions in the lakefile

Ian Jauslin (Nov 07 2024 at 17:38):

If lake update breaks the build, then there's a problem, wouldn't you agree?

Ruben Van de Velde (Nov 07 2024 at 17:39):

The JSON file is updated from the lake file locally

Ruben Van de Velde (Nov 07 2024 at 17:39):

No, that is expected

Ian Jauslin (Nov 07 2024 at 17:39):

Why should lake update break the build?

Ruben Van de Velde (Nov 07 2024 at 17:40):

Because it can change the versions of dependencies you're using - because that's its purpose

Ruben Van de Velde (Nov 07 2024 at 17:40):

And updating your dependencies will more likely than not break your build

Ian Jauslin (Nov 07 2024 at 17:41):

It changes the versions to those that are specified in the lakefile. We need to have a lakefile with the correct version.
If we don't get lake update to work, then whenever we want to bump a version a mathlib, we need to edit the JSON file. That does not seem to be the best way to proceed

Ian Jauslin (Nov 07 2024 at 17:42):

In fact, the JSON file has the mathlib commit that used to be pointed at by 4.13. So if we revert to that commit in the lakefile, then everything should run.

Mauricio Collares (Nov 07 2024 at 17:43):

I think the simplest option is to bump mathlib forward to match EulerProducts. It requires no code changes. I will submit a PR.

Mauricio Collares (Nov 07 2024 at 17:44):

Ian Jauslin said:

In fact, the JSON file has the mathlib commit that used to be pointed at by 4.13. So if we revert to that commit in the lakefile, then everything should run.

This will cause problems for people who don't have npm installed, since ProofWidgets is missing a cloud release for this version. See #mathlib4 > cache and proofwidgets

Ian Jauslin (Nov 07 2024 at 17:44):

I just submitted the PR, after checking it works

Ian Jauslin (Nov 07 2024 at 17:45):

Yeah... The alternative I see is to revert to 4.12 while we wait for EulerProducts to be updated to the new 4.13? Is that right?

Mauricio Collares (Nov 07 2024 at 17:47):

I think EulerProducts will never be updated to the new 4.13 since it's already at 4.14.0-rc2. Is using only stable releases a hard requirement? Otherwise there is an easy solution, as I mentioned above.

Ian Jauslin (Nov 07 2024 at 17:48):

Ah, to bump to 4.14.0-rc2. Let me see if that compiles.

Mauricio Collares (Nov 07 2024 at 17:57):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/207 CI just finished successfully

Ian Jauslin (Nov 07 2024 at 17:58):

Great thanks!

Michael Stoll (Nov 07 2024 at 18:48):

I should perhaps mention that EulerProducts is currently moving fairly fast, as I am PRing the orthogonality material to Mathlib (and update Mathlib in EulerProducts after each PR has been merged). I hope this will not cause further problems for PNT+.

Kim Morrison (Nov 07 2024 at 21:33):

I would recommend not using lake update in CI for contributor PRs. This is dangerous: it means you are moving to different versions of dependencies underneath your contributors, and they will see failures in their PRs which are unrelated to their changes.

Kim Morrison (Nov 07 2024 at 21:33):

lake build is sufficient to bring the dependencies to the versions that are specified in the lake-manifest.json

Kim Morrison (Nov 07 2024 at 21:39):

Then lake update should be run by a human who is planning on handling the fallout of the upstream repositories changing (or by a bot which commits if all goes well, or asks for help if something goes wrong).

Alex Kontorovich (Nov 08 2024 at 03:14):

I now see two pull requests, PNT#204 and PNT#208; are those safe to merge?

Ian Jauslin (Nov 08 2024 at 03:14):

Hold off on 208

Ian Jauslin (Nov 08 2024 at 03:16):

Let me rerun the checks on 204, to make sure they are compatible with the new version of mathlib

Ian Jauslin (Nov 08 2024 at 03:18):

Kim Morrison said:

I would recommend not using lake update in CI for contributor PRs. This is dangerous: it means you are moving to different versions of dependencies underneath your contributors, and they will see failures in their PRs which are unrelated to their changes.

I see. But if the contributors don't mess with the lakefile, then things should not break. And if they do mess with the lakefile in a way that breaks the compilation, shouldn't their PR be rejected?

Alex Kontorovich (Nov 08 2024 at 03:19):

I only ever merge things with the green checkmark. Is CI on PR's somehow doing something different from compiling once its merged...?

Ian Jauslin (Nov 08 2024 at 03:20):

Yeah, the green checkmark should be good enough. In this case, because we bumped up the mathlib version after the PR was submitted, the checkmark was awarded on the old version of mathlib, so I just wanted to check that the bump doesn't break the PR.

Ian Jauslin (Nov 08 2024 at 03:23):

Looks like it's all good, so you can go ahead and merge PR 204. I canceled 208

Kim Morrison (Nov 08 2024 at 06:36):

Ian Jauslin said:

But if the contributors don't mess with the lakefile, then things should not break.

If the lakefile points exclusively to tags or commit SHAs, then lake update is a noop. Otherwise, if it points to branches, then it moves the upstream repos to different commits. That's the thing you don't want happening!

Ian Jauslin (Nov 08 2024 at 13:32):

Right. That's why our lakefile points exclusively to tags and commit SHAs. So running lake update checks that the lake-manifest is the one corresponding to the lakefile, and wasn't changed manually. If we are doing version control through the lakefile and not the manifest, isn't that something we would want to check for? (Especially since running lake update does not have a downside given that we do not (and do not want to) point to branches?

Kim Morrison (Nov 08 2024 at 22:53):

Yes, you're right. I'm sorry for jumping the gun and assuming that the lakefile was pointing to upstream branches (in my defense, it's pretty common!). You're doing it right. :-)

Alastair Irving (Jan 01 2025 at 12:32):

I started to look at what changes would be needed to bump to Mathlib 4.14 and the latest EulerProducts. So far the biggest changes come from https://github.com/leanprover-community/mathlib4/pull/19442 which changes the notation for $C^\infty$ functions but mostly that just means replacing the notation. There's also various deprications which are easy to fix and one line which no longer compiles with Lean 4.14 (no idea why).

Is this worth doing? It would allow us to replace Abel summation in Consequences.lean with the one now in Mathlib and also keeping current with Mathlib seems like a good idea. I'm happy to keep working on this and submit a PR if it would be helpful.

Ruben Van de Velde (Jan 01 2025 at 12:58):

EulerProducts is at 4.14 already - do you mean 4.15?

Ruben Van de Velde (Jan 01 2025 at 12:59):

I think we'll definitely want to bump once 4.15 is officially released this week or next - but feel free to already make a PR with the changes you need so far

Alastair Irving (Jan 01 2025 at 21:08):

Sorry, I wasn't clear. I meant bumping the dependnecies of PNT to Mathlib 4.14 and to the latest EulerProducts (which as you say is already at 4.14).

Ruben Van de Velde (Jan 01 2025 at 21:12):

Oh no, I just didn't read properly

Ruben Van de Velde (Jan 01 2025 at 21:13):

Yes, good idea

Michael Stoll (Jan 01 2025 at 22:31):

Mathlib at version 4.14.0 should contain everything that PNT+ was using from EulerProducts, so you can probably remove EulerProducts as a dependency at this point.

Alastair Irving (Jan 04 2025 at 21:26):

I've got everything working with Mathlib 4.14, see https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/214 for details.

Michael Stoll (Jan 04 2025 at 21:49):

If you tell me which parts of EulerProducts.Auxiliary you need, I can try to get them into Mathlib.

Ruben Van de Velde (Feb 06 2025 at 13:59):

Michael Stoll said:

Mathlib at version 4.14.0 should contain everything that PNT+ was using from EulerProducts, so you can probably remove EulerProducts as a dependency at this point.

I did this in PNT#225. I do need explicit permission from @Michael Stoll and @Moritz Firsching to relicense the last bit of code we depend on away from the GPL, though.

I'll look at bumping after that

Michael Stoll (Feb 06 2025 at 14:04):

Permission granted!

Moritz Firsching (Feb 06 2025 at 14:06):

Permission granted!

Ruben Van de Velde (Feb 06 2025 at 14:16):

Michael Stoll said:

Permission granted!

Would you mind writing that on the PR as well? :)

Alex Kontorovich (Feb 06 2025 at 17:41):

Perfect, thank you!!

Ruben Van de Velde (Feb 06 2025 at 18:29):

And PNT#226 for the first bump

Ruben Van de Velde (Feb 07 2025 at 09:11):

And straight on to v4.16: PNT#227

Ruben Van de Velde (Apr 01 2025 at 11:51):

4.18: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/248

(Didn't debug why additive_combination broke)

Ruben Van de Velde (May 01 2025 at 19:49):

4.19: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/252

Ruben Van de Velde (May 30 2025 at 21:30):

@Yaël Dillies could you take look at the deprecations in https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/253 (Nat.Icc_succ_left etc)? The replacements don't seem to work because of confusion between SuccOrder.succ and Nat.succ

Yaël Dillies (May 30 2025 at 21:34):

Deprecating lemmas properly would have either involved significantly increasing imports or moving the deprecated lemmas elsewhere (mostly nullifying the point of deprecation)

Yaël Dillies (May 30 2025 at 21:35):

Therefore the deprecated lemmas point to the correct lemmas up to Order.succ n = n + 1

Yaël Dillies (May 30 2025 at 21:35):

If you replace succ/pred with add_one/sub_one in the relevant lemma names and add more imports if necessary, then everything will work as expected

Ruben Van de Velde (May 31 2025 at 05:38):

Oh, there's add_one variants too? Those might have been better deprecation targets. Thanks for the pointer!

Ruben Van de Velde (May 31 2025 at 05:39):

Also, should there be a lemma about what SuccOrder.succ means on Nat? I didn't find it

Yaël Dillies (May 31 2025 at 05:46):

It's docs#Nat.succ_eq_succ or docs#Order.succ_eq_add_one, depending on what you want the RHS to be

Ruben Van de Velde (May 31 2025 at 05:55):

Wait, what's the relation between Order.succ and SuccOrder.succ?

Yaël Dillies (May 31 2025 at 05:56):

docs#SuccOrder.succ is an implementation detail for docs#Order.succ

Bhavik Mehta (May 31 2025 at 15:57):

Yaël Dillies said:

Deprecating lemmas properly would have either involved significantly increasing imports or moving the deprecated lemmas elsewhere (mostly nullifying the point of deprecation)

I don't see why it forces either of those: the deprecation message can point to the lemma we actually want to deprecate in favour of, it doesn't need to import that one. (I also ran into the problem of these deprecations being unhelpful)

Ruben Van de Velde (Jun 30 2025 at 07:49):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/314 for 4.21

Ruben Van de Velde (Aug 14 2025 at 11:50):

Working on 4.22

Ruben Van de Velde (Aug 14 2025 at 13:16):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/371

Alex Kontorovich (Aug 14 2025 at 15:28):

Thank you!

Ruben Van de Velde (Sep 20 2025 at 10:41):

@Alex Kontorovich , could I have a review on https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/387 ?

Ruben Van de Velde (Sep 29 2025 at 18:51):

Ruben Van de Velde said:

Alex Kontorovich , could I have a review on https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/387 ?

Ping

Alex Kontorovich (Sep 30 2025 at 20:00):

Oh sorry, I left a whole bunch of notes in the review; did you have a chance to look through them? (Basically lots of non-terminal simps)

Ruben Van de Velde (Oct 01 2025 at 14:43):

I don't see it - did you submit them? The nonterminal simps are mostly preexisting (as field_simp), and I was planning to fix them in a followup PR, but I can do them here as well if you prefer

Alex Kontorovich (Oct 03 2025 at 15:20):

Strange; this is what I see on github; do you not see the same?
image.png
I don't think field_simp counts as a non-terminal simp, does it? I suppose it too could change in the future (and just did...), so it should also not be terminal. Anyway, if you're planning on fixing that in a follow-up, that's fine with me, I can merge as is; please let me know. Thanks!

Rémy Degenne (Oct 03 2025 at 15:22):

The "pending" word next to your review messages means that you have not submitted your review yet, and they are only visible to you.

Alex Kontorovich (Oct 03 2025 at 15:31):

Ha! :) What an idiot. One day I'll learn to use github....

Ruben Van de Velde (Oct 03 2025 at 15:49):

That tag could be more prominent :)

Ruben Van de Velde (Oct 03 2025 at 15:50):

I should have time to look at them tonight

Kevin Buzzard (Oct 03 2025 at 16:58):

Alex Kontorovich said:

Ha! :)

You're certainly not the only person to have done this! (indeed some of us have fallen into this trap more than once...)

Ruben Van de Velde (Oct 03 2025 at 21:01):

@Alex Kontorovich should be better now

Ruben Van de Velde (Oct 15 2025 at 16:35):

4.24: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/403

Alex Kontorovich (Oct 17 2025 at 01:33):

Thank you!!

Ruben Van de Velde (Nov 14 2025 at 23:29):

4.25: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/412 (wip; heading off now in case anyone wants to take a look)

Ruben Van de Velde (Nov 15 2025 at 11:09):

Should build now

Alex Kontorovich (Nov 16 2025 at 19:30):

Great thank you!!

Ruben Van de Velde (Nov 24 2025 at 19:53):

Hoping https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/418 is the last one this cycle

Alex Kontorovich (Nov 25 2025 at 22:34):

Something happened with the latest PR that's giving a strange error message: error: could not download nonexistent lean version leanprover/lean4:v4.25.1`` Can anyone please help figure out what went wrong? Thank you!

Ruben Van de Velde (Nov 25 2025 at 23:10):

Seems like someone deleted the tag - cc @Kim Morrison

Julian Berman (Nov 25 2025 at 23:18):

The URL being downloaded from is very strange, it has https://releases.lean-lang.org/lean4/v4.25.1/lean-4.25.0-linux.tar.zst in it so something clearly is confused about the version number, but yeah it does seem clear that that URL worked previously in the last successful build.

Kim Morrison (Nov 26 2025 at 04:11):

It's been fixed in the meantime. Sorry this caught you out. :woman_facepalming:

Alex Kontorovich (Nov 26 2025 at 05:13):

No worries, thanks for your help! Rerunning failed jobs now...

Alex Kontorovich (Nov 26 2025 at 05:24):

Oops now the error is: uncaught exception: Failed to fetch ProofWidgets cloud release: lake failed with error code 1?

Kim Morrison (Nov 26 2025 at 11:03):

Can you tell us what state you're in? e.g. a commit at some repo, and a command to run to observe this error?

Alex Kontorovich (Nov 26 2025 at 13:09):

This is the build on main: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/

Alex Kontorovich (Nov 26 2025 at 13:09):

Here's the full error message: https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/actions/runs/19668741297/job/56413302297

Alex Kontorovich (Nov 26 2025 at 13:10):

Thanks for your help!

Alex Kontorovich (Nov 26 2025 at 13:14):

CCing @Ian Jauslin as we have some non-standard features set up...

Alastair Irving (Nov 26 2025 at 19:27):

I get the same error if I build locally. There seems to be a confusion of tags between mathlib and proofwidgets and I haven't managed to find a combination which works:

  • Currently PNT points at mathlib v4.25.1. That tag no longer exists but we still have the hash in the lake-manifest. However That mathlib version points at a proofwidgets for which there isn't a tagged release and that's why we're getting an error.
  • I thought the fix should be to update to mathlib 4.25.2. The v4.25.2 mathlib tag exists but points at a proofwidgets commit which has been force pushed over. There's also a branch of mathlib, releases/v4.25 which maybe points at a correct proof widgets. That seems to work but it would maybe be best if the tag was updated and we used that rather than pointing at a branch.

Alastair Irving (Nov 27 2025 at 18:40):

It looks like @Kim Morrison fixed the tags, thank you. I've ran lake update and created https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/422 which builds.

I thought about bumping to V4.25.2 at the same time but that didn't work because there isn't a corresponding tag on Docgen4.

Eric Rodriguez (Nov 27 2025 at 18:45):

for docgen you should be able to use the v4.25.1 tag with few issues I would think

Ruben Van de Velde (Nov 30 2025 at 20:24):

I don't know what the deal is this release cycle, but bumping to 4.25.2 fixes the cache for me locally - https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/425

Ruben Van de Velde (Dec 15 2025 at 16:56):

https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/pull/429 is open for 4.26


Last updated: Dec 20 2025 at 21:32 UTC