Skip to content

feat(Topology/Algebra): inv and div for infinite products over groups with zero#40591

Open
ajirving wants to merge 10 commits into
leanprover-community:masterfrom
ajirving:hasprod_inv0
Open

feat(Topology/Algebra): inv and div for infinite products over groups with zero#40591
ajirving wants to merge 10 commits into
leanprover-community:masterfrom
ajirving:hasprod_inv0

Conversation

@ajirving

Copy link
Copy Markdown
Contributor

Proves two lemmas for infinite products over groups with zero: inverses and division behave as expected provided the limit is nonzero. This requires an extra import to get some of the GroupWithZero API. Maybe the GroupWithZero results should be in a different file but I was just adding to what was already there in Group.lean.


Open in Gitpod

@github-actions

github-actions Bot commented Jun 14, 2026

Copy link
Copy Markdown

PR summary 3c6d1ffe9e

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Topology.Algebra.InfiniteSum.Group 1154 1155 +1 (+0.09%)
Import changes for all files
Files Import difference
6 files Mathlib.Topology.Algebra.InfiniteSum.Constructions Mathlib.Topology.Algebra.InfiniteSum.DiscreteConvolution Mathlib.Topology.Algebra.InfiniteSum.GroupCompletion Mathlib.Topology.Algebra.InfiniteSum.Group Mathlib.Topology.Algebra.InfiniteSum.Module Mathlib.Topology.Algebra.InfiniteSum.NatInt
1

Declarations diff (regex)

+ HasProd.div₀
+ HasProd.inv₀
+ Multipliable.div₀
+ Multipliable.inv₀
+ Multipliable.tprod_div₀
+ Multipliable.tprod_inv₀

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.

Declarations diff (Lean)

Lean-aware diff — post-build, computed from the Lean environment (commit 3c6d1ff).

  • +6 new declarations
  • −0 removed declarations
+HasProd.div₀
+HasProd.inv₀
+Multipliable.div₀
+Multipliable.inv₀
+Multipliable.tprod_div₀
+Multipliable.tprod_inv₀

No changes to strong technical debt.

No changes to weak technical debt.

Current commit 3c6d1ffe9e
Reference commit c026161a58

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/scripts/reporting/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@github-actions github-actions Bot added the t-topology Topological spaces, uniform spaces, metric spaces, filters label Jun 14, 2026
@github-actions

github-actions Bot commented Jun 14, 2026

Copy link
Copy Markdown

✅ PR Title Formatted Correctly

The title of this PR has been updated to match our commit style conventions.
Thank you!

@ajirving ajirving changed the title feat(Topology.Algebra): inv and div for infinite products over groups with zero feat(Topology/Algebra): inv and div for infinite products over groups with zero Jun 14, 2026
Comment thread Mathlib/Topology/Algebra/InfiniteSum/Group.lean Outdated
@plp127

plp127 commented Jun 14, 2026

Copy link
Copy Markdown
Contributor

Can you generalize these lemmas to an arbitrary SummationFilter, instead of just .unconditional?

ajirving and others added 2 commits June 14, 2026 15:27
Co-authored-by: Aaron Liu <aaronliu2008@outlook.com>
@ajirving

ajirving commented Jun 14, 2026

Copy link
Copy Markdown
Contributor Author

Can you generalize these lemmas to an arbitrary SummationFilter, instead of just .unconditional?

Thanks, I've done that now.

@scholzhannah scholzhannah left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thank you for your PR! I have left two superficial comments but I don't know anything about this area so I'll unassign myself.

Comment thread Mathlib/Topology/Algebra/InfiniteSum/Group.lean
Comment thread Mathlib/Topology/Algebra/InfiniteSum/Group.lean Outdated
@scholzhannah scholzhannah removed their assignment Jul 10, 2026
ajirving and others added 4 commits July 10, 2026 16:40
Co-authored-by: Hannah Scholz <70071345+scholzhannah@users.noreply.github.com>
Co-authored-by: Hannah Scholz <70071345+scholzhannah@users.noreply.github.com>

@j-loreaux j-loreaux left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Can you please add the associated lemmas for Multipliable and tprod?

@j-loreaux j-loreaux added the awaiting-author A reviewer has asked the author a question or requested changes. label Jul 21, 2026
@ajirving

Copy link
Copy Markdown
Contributor Author

-awaiting-author

I've added Multipliable and tprod variants.

@github-actions github-actions Bot removed the awaiting-author A reviewer has asked the author a question or requested changes. label Jul 22, 2026

@j-loreaux j-loreaux left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

bors d+

obtain ⟨s, hs⟩ : ∃ s : Finset α, ∀ i ∉ s, f i = g i := ⟨hfg.toFinset, by simp⟩
exact (hc.congr_cofinite₀ (fun a _ ↦ hf' a) hs).multipliable

omit [SeparatelyContinuousMul K] in

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Instead of omitting this everywhere, just out that variable in its own section for the results above.

@mathlib-bors

mathlib-bors Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

✌️ ajirving can now approve this pull request until 2026-08-06 02:36 UTC (in 2 weeks). To approve and merge, reply with bors r+. More detailed instructions are available here.

⚠️ This delegation only covers changes within Archive/**, Counterexamples/**, docs/**, DownstreamTest/**, Mathlib/**, MathlibTest/**, widget/**, Archive.lean, Counterexamples.lean, docs.lean, Mathlib.lean; an author commit touching anything else will revoke it. Bors also revokes it if a later push changes too many files for it to check the full list — even if it stays within scope.

@mathlib-bors mathlib-bors Bot added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). t-topology Topological spaces, uniform spaces, metric spaces, filters

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants