Make the 246 bounded-prime-gap theorem unconditional - #11
Conversation
|
Hosted verification is complete at https://github.com/kimihiro64/PrimeGapsLib/actions/runs/33969757043 for exact PR head ff4fbdc. The workflow ran both Comparator/comparator_fast.json and Comparator/comparator.json. The log records two successful Comparator completions, two NanoDa kernel acceptances, and two Lean default-kernel acceptances. |
|
Follow-up release evidence for the Bombieri-Vinogradov dependency:
That run passed the full Ubuntu Lean build, explicit Lean lint, Challenge/Solution Comparator export matching, NanoDa replay, Lean default-kernel replay, metadata/provenance, paper, offline API documentation, licensing, and downstream release verification. The published release contains exactly three nonempty remotely downloadable assets (paper PDF, Linux Lean build archive, and offline docs ZIP). The v0.1.4 hardening commits do not change the mathematical Lean source or its reviewed dependency pins from the proof release. |
Summary - upgrades the project to Lean 4.33.1 and the matching Mathlib revision; - pins the Lean 4.33.1 module-compatible
PrimeNumberTheoremAndfork at0f15a38c619298b5cd786d39a84dd4bb8997324c; - adds the completed Bombieri--Vinogradov formalization atafbcbb5959ad22f86ede6b3a53d5d396142fd32b; - single-sourcesReal.primeCountingZModand the exactBombieriVinogradovproposition from that dependency; - addsPrimeGaps.Unconditional246, proving the unconditional frequent-gap, threshold-prime, and enumerated-prime formulations; - keeps the existing conditional Challenge/Solution pairs, while addingset_option autoImplicit falseto every configured boundary file. ## Proof chainBombieriVinogradov.PrimeCountingConversion.weighted_to_prime_countingproves the exact proposition already consumed by PrimeGapsLib. The newbombieriVinogradovtheorem supplies that proposition to the existingbombieriVinogradov_implies_*_246theorems, producing: -frequently_prime_gap_le_246; -prime_gap_le_246; -nth_prime_gap_le_246. All four new public results use onlypropext,Classical.choice, andQuot.sound. ## Verification - local full build:lake build— 5,472 jobs passed; - local full lint:lake lint— all three default libraries passed; -Challenge/Basic.lean,Solution/Basic.lean,ChallengeFast/Basic.lean, andSolutionFast/Basic.leaneach typecheck directly; - fork CI passed at the exact head commit: https://github.com/kimihiro64/PrimeGapsLib/actions/runs/33966896968; - hosted pinned Comparator/NanoDa verification passed for both configured declaration pairs at the exact head commit: https://github.com/kimihiro64/PrimeGapsLib/actions/runs/33969757043. The three declaration-local@[nolint checkType]annotations are limited to generated-scale private certificate declarations that kernel-check successfully but deterministically exhaust the linter's 200,000-heartbeat budget under Lean 4.33.1. No linter is disabled globally.