Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Merged by Bors] - feat(NumberTheory/EllipticDivisibilitySequence): extend even-odd recursion to integers #13786

Closed
wants to merge 80 commits into from

Conversation

Multramate
Copy link
Collaborator

@Multramate Multramate commented Jun 12, 2024

Provide a quick proof that normalised EDSs satisfy an even-odd recursion over all integers rather than just natural numbers, without relying on heavier machinery i.e. the full EDS recurrence in #13155, and make Int.negInduction slightly stronger.


Open in Gitpod

@kim-em
Copy link
Contributor

kim-em commented Jul 15, 2024

@Multramate please remember to mark old conversations as resolved. If they are left unresolved it is hard for a new reviewer coming in to understand the status of the PR.

@Multramate
Copy link
Collaborator Author

Multramate commented Jul 15, 2024

They're resolved in the sense that I still intend to move forward with this PR (despite #13057), but they're not resolved in the sense that @alreadydone hasn't explicitly agreed to this. Note that #13057 will take a while to get merged, while this is essentially standalone, and I think it's fine to have this easy proof early on without relying on that.

@faenuccio faenuccio self-assigned this Aug 27, 2024
@faenuccio faenuccio requested a review from alreadydone August 27, 2024 15:26
@faenuccio
Copy link
Collaborator

@alreadydone I have been assigned this PR and am having a look. Can you perform another round of revision? Thanks.

Copy link
Collaborator

@faenuccio faenuccio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please update your doc by using unicode characters for all latex codes? Although MathJax will probably render them nicely in a browser, they're still pretty unreadable in VSCode, and if you use unicode things are much more readable. Thanks!

split_ifs <;> C_simp <;> rw [C_Ψ₂Sq] <;> ring1

lemma Ψ_even (m : ℕ) : W.Ψ (2 * (m + 3)) * W.ψ₂ =
lemma Ψ_even' (m : ℕ) : W.Ψ (2 * (m + 3)) * W.ψ₂ =
W.Ψ (m + 2) ^ 2 * W.Ψ (m + 3) * W.Ψ (m + 5) - W.Ψ (m + 1) * W.Ψ (m + 3) * W.Ψ (m + 4) ^ 2 := by
repeat erw [Ψ_ofNat]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is erw needed? Is there perhaps a bit of API missing, making rw work smoothly?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of these are just for the sake of my sanity, e.g. converting 4 - 1 to 3 by rw [show (4 - 1 : ℤ) = 3 by rfl] etc.

I can add these to the bottom of this file though, what do you think?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait, I have to find a different home for those lemmas, since I don't think file imports AddGroup...

@Multramate
Copy link
Collaborator Author

@faenuccio just to be clear, would we prefer something like this instead?

Let `W` be a Weierstrass curve over a commutative ring `R`. The sequence of `n`-division polynomials
`ψₙ ∈ R[X, Y]` of `W` is the normalised EDS with initial values
 * `ψ₀ := 0`,
 * `ψ₁ := 1`,
 * `ψ₂ := 2Y + a₁X + a₃`,
 * `ψ₃ := 3X⁴ + b₂X³ + 3b₄X² + 3b₆X + b₈`, and
 * `ψ₄ := ψ₂⬝(2X⁶ + b₂X⁵ + 5b₄X⁴ + 10b₆X³ + 10b₈X² + (b₂b₈ - b₄b₆)X + (b₄b₈ - b₆²))`.

@faenuccio
Copy link
Collaborator

@faenuccio just to be clear, would we prefer something like this instead?

Let `W` be a Weierstrass curve over a commutative ring `R`. The sequence of `n`-division polynomials
`ψₙ ∈ R[X, Y]` of `W` is the normalised EDS with initial values
 * `ψ₀ := 0`,
 * `ψ₁ := 1`,
 * `ψ₂ := 2Y + a₁X + a₃`,
 * `ψ₃ := 3X⁴ + b₂X³ + 3b₄X² + 3b₆X + b₈`, and
 * `ψ₄ := ψ₂⬝(2X⁶ + b₂X⁵ + 5b₄X⁴ + 10b₆X³ + 10b₈X² + (b₂b₈ - b₄b₆)X + (b₄b₈ - b₆²))`.

If you're asking with regard to the unicode business, then yes: I find this much more readable.

@Multramate Multramate requested a review from faenuccio November 6, 2024 22:02
@faenuccio faenuccio added the awaiting-author A reviewer has asked the author a question or requested changes label Nov 26, 2024
@Multramate Multramate removed the awaiting-author A reviewer has asked the author a question or requested changes label Nov 29, 2024
@faenuccio
Copy link
Collaborator

maintainer merge

Copy link

🚀 Pull request has been placed on the maintainer queue by faenuccio.

@riccardobrasca
Copy link
Member

Thanks!

bors merge

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the ready-to-merge This PR has been sent to bors. label Nov 29, 2024
mathlib-bors bot pushed a commit that referenced this pull request Nov 29, 2024
…rsion to integers (#13786)

Provide a quick proof that normalised EDSs satisfy an even-odd recursion over all integers rather than just natural numbers, without relying on heavier machinery i.e. the full EDS recurrence in #13155, and make `Int.negInduction` slightly stronger.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Nov 29, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(NumberTheory/EllipticDivisibilitySequence): extend even-odd recursion to integers [Merged by Bors] - feat(NumberTheory/EllipticDivisibilitySequence): extend even-odd recursion to integers Nov 29, 2024
@mathlib-bors mathlib-bors bot closed this Nov 29, 2024
@mathlib-bors mathlib-bors bot deleted the EllipticDivisibilitySequence.Int branch November 29, 2024 11:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintainer-merge ready-to-merge This PR has been sent to bors. t-number-theory Number theory (also use t-algebra or t-analysis to specialize)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants