Skip to content

feat(NumberTheory/ModularForms): API lemmas for level-1 graded ring#38908

Draft
CBirkbeck wants to merge 3 commits into
leanprover-community:masterfrom
CBirkbeck:modular-forms-api-prereq
Draft

feat(NumberTheory/ModularForms): API lemmas for level-1 graded ring#38908
CBirkbeck wants to merge 3 commits into
leanprover-community:masterfrom
CBirkbeck:modular-forms-api-prereq

Conversation

@CBirkbeck
Copy link
Copy Markdown
Collaborator

@CBirkbeck CBirkbeck commented May 4, 2026

Adds API lemmas extracted from #38813 to keep that PR reviewable: DirectSum.of_eq_of_eq, DirectSum.of_eq_sub_add_smul, ModularForm.cast_apply, ModularForm.mul_ne_zero, ModularForm.sub_smul_isCuspForm.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

PR summary 834e51690b

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.NumberTheory.ModularForms.QExpansion 2776 2782 +6 (+0.22%)
Import changes for all files
Files Import difference
6 files Mathlib.NumberTheory.ModularForms.Bounds Mathlib.NumberTheory.ModularForms.LevelOne.Basic Mathlib.NumberTheory.ModularForms.LevelOne Mathlib.NumberTheory.ModularForms.NormTrace Mathlib.NumberTheory.ModularForms.Petersson Mathlib.NumberTheory.ModularForms.QExpansion
6

Declarations diff

+ cast_apply
+ mul_ne_zero
+ of_eq_of_eq
+ of_eq_sub_add_smul
+ sub_smul_isCuspForm

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.


No changes to strong technical debt.
No changes to weak technical debt.

…aded ring

Adds five lemmas extracted from the upcoming graded-ring PR (leanprover-community#38813), so that
that PR can be reviewed in smaller pieces:

* `DirectSum.of_eq_of_eq` (Algebra/DirectSum/Basic): cast indices in `of`.
* `DirectSum.of_eq_sub_add_smul` (Algebra/DirectSum/Module): the identity
  `of i f = of i (f - c•g) + c • of i g`.
* `ModularForm.cast_apply` (NumberTheory/ModularForms/Basic): a ModularForm
  cast through a weight equality has the same pointwise values.
* `ModularForm.mul_ne_zero` (NumberTheory/ModularForms/QExpansion): the
  product of two non-zero modular forms is non-zero (via integral domain
  structure of `PowerSeries ℂ`).
* `ModularForm.sub_smul_isCuspForm` (NumberTheory/ModularForms/CuspFormSubmodule):
  for level-1 forms `f, g` with `(qExpansion 1 g).coeff 0 = 1`, the form
  `f - (qExpansion 1 f).coeff 0 • g` is a cusp form.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@mathlib-dependent-issues mathlib-dependent-issues Bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label May 4, 2026
@CBirkbeck CBirkbeck force-pushed the modular-forms-api-prereq branch from e920f0c to f8d4551 Compare May 4, 2026 10:52
@mathlib-dependent-issues mathlib-dependent-issues Bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label May 4, 2026
@CBirkbeck CBirkbeck added the LLM-generated PRs with substantial input from LLMs - review accordingly label May 6, 2026
ModularForm.qExpansion_mul hh hΓ, mul_eq_zero, not_or]
exact ⟨(ModularForm.qExpansion_eq_zero_iff hh hΓ _).not.mpr hf,
(ModularForm.qExpansion_eq_zero_iff hh hΓ _).not.mpr hg⟩

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

why the extra blank line?

@mathlib-merge-conflicts mathlib-merge-conflicts Bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label May 11, 2026
@mathlib-merge-conflicts
Copy link
Copy Markdown

This pull request has conflicts, please merge master and resolve them.

…-prereq

# Conflicts:
#	Mathlib/NumberTheory/ModularForms/QExpansion.lean
@github-actions github-actions Bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label May 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

LLM-generated PRs with substantial input from LLMs - review accordingly

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant