Skip to content

feat(IwaniecKowalskiCh1): prove liouville_eq_moebius_on_squarefree#1482

Open
foolishair wants to merge 1 commit into
AlexKontorovich:mainfrom
foolishair:fix/liouville-eq-moebius-squarefree
Open

feat(IwaniecKowalskiCh1): prove liouville_eq_moebius_on_squarefree#1482
foolishair wants to merge 1 commit into
AlexKontorovich:mainfrom
foolishair:fix/liouville-eq-moebius-squarefree

Conversation

@foolishair

Copy link
Copy Markdown

Summary

This PR proves the sorry in liouville_eq_moebius_on_squarefree in PrimeNumberTheoremAnd/IwaniecKowalskiCh1.lean (line 1456 on main).

Strategy

For squarefree n:

  • n ≠ 0 (from not_squarefree_zero)
  • liouville n = (-1)^Ω(n) by definition (unfolding toArithmeticFunction)
  • μ n = (-1)^Ω(n) by moebius_apply_of_squarefree

Both sides reduce to the same expression.

Notes

  • 4 lines of proof, no new imports.
  • Verified locally against mathlib v4.29.0 (the lemmas used — not_squarefree_zero, moebius_apply_of_squarefree — are stable core mathlib API present in both v4.29.0 and v4.30.0).

For squarefree n, both λ(n) and μ(n) equal (-1)^Ω(n) (where Ω = ω on
squarefrees). The proof unfolds the definitions and applies
moebius_apply_of_squarefree from mathlib.

Verified locally against mathlib v4.29.0 (PNT is on v4.30.0; the lemmas
used are stable core mathlib API).
@foolishair

Copy link
Copy Markdown
Author

Gentle ping — happy to address any feedback or rebase if needed. The patch is a 4-line proof with no new imports and is verified against mathlib v4.29.0. Thanks for taking a look whenever you have a moment!

@AlexKontorovich

Copy link
Copy Markdown
Owner

Unless this is Vaishnav, this task is already claimed.

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