Skip to content

feat: The finite product of semi-rings (in terms of measure theory) is a semi-ring.#22714

Closed
pfaffelh wants to merge 57 commits intomasterfrom
pfaffelh_SemiringPi
Closed

feat: The finite product of semi-rings (in terms of measure theory) is a semi-ring.#22714
pfaffelh wants to merge 57 commits intomasterfrom
pfaffelh_SemiringPi

Conversation

@pfaffelh
Copy link
Copy Markdown
Contributor

@pfaffelh pfaffelh commented Mar 8, 2025

Move results for rings (in terms of measure theory) to a separate file; was in Semiring.lean before.
For ∀ i ∈ s, IsSetSemiring (C i)), the product s.pi '' s.pi C is a semiring.
Prove two auxiliary lemmas in Data.Set.Prod needed on the way.

@github-actions github-actions bot added new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! large-import Automatically added label for PRs with a significant increase in transitive imports labels Mar 8, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 8, 2025

PR summary 3bb3ee2af4

Import changes exceeding 2%

% File
+13.05% Mathlib.MeasureTheory.SetSemiring

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.MeasureTheory.SetSemiring 613 693 +80 (+13.05%)
Mathlib.Data.Set.Prod 235 237 +2 (+0.85%)
Mathlib.Data.Set.Pairwise.Lattice 273 275 +2 (+0.73%)
Import changes for all files
Files Import difference
4 files Mathlib.MeasureTheory.Constructions.ProjectiveFamilyContent Mathlib.MeasureTheory.Measure.AddContent Mathlib.MeasureTheory.Measure.SeparableMeasure Mathlib.MeasureTheory.OuterMeasure.OfAddContent
1
151 files Mathlib.Algebra.Field.ULift Mathlib.Algebra.Group.Action.Pi Mathlib.Algebra.Group.Action.Pointwise.Set.Basic Mathlib.Algebra.Group.Indicator Mathlib.Algebra.Group.Pi.Lemmas Mathlib.Algebra.Group.Pointwise.Set.Basic Mathlib.Algebra.Group.Pointwise.Set.Lattice Mathlib.Algebra.Group.Pointwise.Set.Scalar Mathlib.Algebra.Group.Submonoid.Basic Mathlib.Algebra.Group.Submonoid.MulOpposite Mathlib.Algebra.Group.Submonoid.Operations Mathlib.Algebra.Group.Subsemigroup.Basic Mathlib.Algebra.Group.Subsemigroup.Membership Mathlib.Algebra.Group.Subsemigroup.Operations Mathlib.Algebra.GroupWithZero.Indicator Mathlib.Algebra.GroupWithZero.Pointwise.Set.Basic Mathlib.Algebra.Module.PointwisePi Mathlib.Algebra.NoZeroSMulDivisors.Pi Mathlib.Algebra.Order.Field.Pointwise Mathlib.Algebra.Order.Group.Action.Flag Mathlib.Algebra.Order.Group.Action Mathlib.Algebra.Order.Group.CompleteLattice Mathlib.Algebra.Order.Group.Indicator Mathlib.Algebra.Order.Group.Pointwise.Bounds Mathlib.Algebra.Order.Group.Pointwise.CompleteLattice Mathlib.Algebra.Order.GroupWithZero.Bounds Mathlib.Algebra.Order.Interval.Set.Monoid Mathlib.Algebra.Order.Kleene Mathlib.Algebra.Order.Pi Mathlib.Algebra.Order.Quantale Mathlib.Algebra.Order.Ring.Prod Mathlib.Algebra.Ring.Action.Pointwise.Set Mathlib.Algebra.Ring.CompTypeclasses Mathlib.Algebra.Ring.Equiv Mathlib.Algebra.Ring.Pi Mathlib.Algebra.Ring.Pointwise.Set Mathlib.Algebra.Ring.Prod Mathlib.Algebra.Ring.Submonoid.Basic Mathlib.Algebra.Ring.Submonoid Mathlib.Algebra.Ring.ULift Mathlib.Algebra.Tropical.Lattice Mathlib.Combinatorics.Quiver.Arborescence Mathlib.Data.Countable.Small Mathlib.Data.FP.Basic Mathlib.Data.Int.ConditionallyCompleteOrder Mathlib.Data.List.Iterate Mathlib.Data.Nat.Pairing Mathlib.Data.PFun Mathlib.Data.Rel Mathlib.Data.Semiquot Mathlib.Data.Set.Accumulate Mathlib.Data.Set.BooleanAlgebra Mathlib.Data.Set.Function Mathlib.Data.Set.Functor Mathlib.Data.Set.Lattice.Image Mathlib.Data.Set.Lattice Mathlib.Data.Set.Monotone Mathlib.Data.Set.NAry Mathlib.Data.Set.Pairwise.Basic Mathlib.Data.Set.Pairwise.Lattice Mathlib.Data.Set.Piecewise Mathlib.Data.Set.Prod Mathlib.Data.Set.Sigma Mathlib.Data.Set.Subset Mathlib.Data.Set.UnionLift Mathlib.Data.Setoid.Basic Mathlib.GroupTheory.Congruence.Basic Mathlib.GroupTheory.Congruence.Defs Mathlib.GroupTheory.Congruence.Hom Mathlib.GroupTheory.Congruence.Opposite Mathlib.GroupTheory.GroupAction.DomAct.ActionHom Mathlib.GroupTheory.GroupAction.DomAct.Basic Mathlib.GroupTheory.GroupAction.Embedding Mathlib.GroupTheory.GroupAction.Pointwise Mathlib.GroupTheory.GroupAction.Support Mathlib.GroupTheory.Submonoid.Center Mathlib.GroupTheory.Submonoid.Centralizer Mathlib.GroupTheory.Subsemigroup.Centralizer Mathlib.Logic.Equiv.Nat Mathlib.Logic.Equiv.PartialEquiv Mathlib.Logic.Equiv.Set Mathlib.Logic.Small.Basic Mathlib.Logic.Small.Set Mathlib.Order.Antichain Mathlib.Order.Bounds.Image Mathlib.Order.Bounds.Lattice Mathlib.Order.Bounds.OrderIso Mathlib.Order.Chain Mathlib.Order.Closure Mathlib.Order.Cofinal Mathlib.Order.CompleteBooleanAlgebra Mathlib.Order.CompleteLattice.Basic Mathlib.Order.CompleteLattice.Chain Mathlib.Order.CompleteLattice.Lemmas Mathlib.Order.Concept Mathlib.Order.ConditionallyCompleteLattice.Basic Mathlib.Order.ConditionallyCompleteLattice.Defs Mathlib.Order.ConditionallyCompleteLattice.Group Mathlib.Order.ConditionallyCompleteLattice.Indexed Mathlib.Order.Copy Mathlib.Order.Extension.Linear Mathlib.Order.Filter.AtTopBot.Basic Mathlib.Order.Filter.AtTopBot.CompleteLattice Mathlib.Order.Filter.AtTopBot.Defs Mathlib.Order.Filter.AtTopBot.Disjoint Mathlib.Order.Filter.AtTopBot.Field Mathlib.Order.Filter.AtTopBot.Group Mathlib.Order.Filter.AtTopBot.Map Mathlib.Order.Filter.AtTopBot.Monoid Mathlib.Order.Filter.AtTopBot.Ring Mathlib.Order.Filter.AtTopBot.Tendsto Mathlib.Order.Filter.Bases.Basic Mathlib.Order.Filter.Basic Mathlib.Order.Filter.Curry Mathlib.Order.Filter.Ker Mathlib.Order.Filter.Map Mathlib.Order.Filter.NAry Mathlib.Order.Filter.Partial Mathlib.Order.Filter.Prod Mathlib.Order.Filter.Tendsto Mathlib.Order.GaloisConnection.Basic Mathlib.Order.Heyting.Regular Mathlib.Order.Hom.CompleteLattice Mathlib.Order.Hom.Order Mathlib.Order.Hom.Set Mathlib.Order.Interval.Basic Mathlib.Order.Interval.Set.Disjoint Mathlib.Order.Interval.Set.Image Mathlib.Order.Interval.Set.OrderIso Mathlib.Order.Interval.Set.SurjOn Mathlib.Order.Minimal Mathlib.Order.Monotone.Extension Mathlib.Order.Nucleus Mathlib.Order.OrdContinuous Mathlib.Order.Preorder.Chain Mathlib.Order.Rel.GaloisConnection Mathlib.Order.RelIso.Set Mathlib.Order.SemiconjSup Mathlib.Order.WellFounded Mathlib.Order.Zorn Mathlib.RingTheory.Congruence.Basic Mathlib.RingTheory.Congruence.Defs Mathlib.RingTheory.Congruence.Opposite Mathlib.RingTheory.RingInvo Mathlib.SetTheory.ZFC.PSet Mathlib.Tactic.DeriveCountable Mathlib.Tactic.Monotonicity.Lemmas Mathlib.Tactic.Monotonicity Mathlib.Tactic.Peel Mathlib.Topology.Defs.Filter Mathlib.Topology.Defs.Sequences
2
Mathlib.MeasureTheory.SetAlgebra Mathlib.MeasureTheory.SetSemiring 80

Declarations diff

+ IsPiSystem.pi_subset
+ disjoint_pi_of_interSetdiff_of_interSetdiffInter
+ fintype_pi_ofFinset
+ iff
+ isPiSystem_iff_of_nmem_empty
+ pairwiseDisjoint_set_pi
+ pairwiseDisjoint_union_of_disjoint
+ pi
+ pi_antitone
+ pi_inter_image
+ pi_inter_image'
+ pi_setdiff_eq_union
+ pi_singleton_diff_eq_sUnion
+ subset_pi_image_of_subset
+ union_pi_ite_of_disjoint

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/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).

@pfaffelh pfaffelh added the WIP Work in progress label Mar 8, 2025
@pfaffelh pfaffelh removed the WIP Work in progress label Mar 9, 2025
@grunweg grunweg changed the title Pfaffelh semiring pi feat: The finite product of semi-rings (in terms of measure theory) is a semi-ring. Mar 9, 2025
robertmaxton42 and others added 10 commits May 3, 2025 22:47
* Adds a convenience lemma `Shrink.rec_equivShrink` that is very nearly the definitional property of `Shrink.rec`, but for whatever reason can't be automatically proven by `simp`.
- Turn `IsLittleOTVS` into a 1-field `structure`. We may want to replace the definition with "the ratio of `egauge`s tends to zero". In `ENNReal`, it's the right definition.
- Define `IsBigOTVS`, prove basic API lemmas.
- Prove lemmas about `IsLittleOTVS` in (indexed) products.
…inner` (#24499)

There are two reasons why `𝕜` should be an explicit argument.
- This change makes it so that notations `⟪x, y⟫` and `⟪x, y⟫_𝕜` elaborate properly, so that this notation can be seen in the infoview.
- This change makes is so that the expected type is known whenever using `inner`. Thus, this PR also removes some now unneccessary type annotations.

The argument explicitness now matches that of `innerₛₗ` and `innerSL`.

`notation3` has been replaced by `notation`, since we don't need the more fancy `notation3` elborator.
Prove `Specializes.map_of_continuousWithinAt`, `Specializes.map_of_continuousOn`, and `Inseparable.map_of_continuousWithinAt`, `Inseparable.map_of_continuousOn`.
In this PR we proved the finiteness of associated primes for finitely generated modules over notherian ring. Mainly from https://github.com/acmepjz/lean-iwasawa/blob/master/Iwasawalib/RingTheory/CharacteristicIdeal/Basic.lean authored by @acmepjz 

Co-authored-by: Jz Pan <acme_pjz@hotmail.com>



Co-authored-by: acmepjz <acme_pjz@hotmail.com>
- extract `Homotopy.extend_of_mem_I` from `Homotopy.extend_apply_of_mem_I`;
- add convenience lemmas `extend_zero` and `extend_one`.
This PR defines completely positive maps. A linear map `φ : A₁ →ₗ[ℂ] A₂` (where `A₁` and `A₂` are C⋆-algebras) is called completely positive (CP) if applying `φ` to all entries of a k × k matrix is also positive for every `k ∈ ℕ`.

Here we provide the definition and a few basic properties: CP maps are positive, and non-unital star algebra homomorphisms are CP. A fair amount of supporting material was also added to `CStarMatrix`. The API is still very barebones and we leave e.g. composition for subsequent PRs.



Co-authored-by: Frédéric Dupuis <31101893+dupuisf@users.noreply.github.com>
Generalize Bernstein approximations from `f : C(I, ℝ)` to `f : C(I, E)`,
where `E` is a real normed space.
If `L : C ⥤ D` is an additive localization functor between preadditive categories, and `C` is `R`-linear, we show that `D` can also be equipped with a `R`-linear structure such that `L` is a `R`-linear functor
… lemmas (#22327)

Moves:
* `Nat.Icc_succ_left` → `Finset.Icc_succ_left_eq_Ioc`
* `Nat.Ico_succ_right` → `Finset.Ico_succ_right_eq_Icc`
* `Nat.Ico_succ_left` → `Finset.Ico_succ_left_eq_Ioo`
* `Nat.Icc_pred_right` → `Finset.Icc_pred_right_eq_Ico`
* `Nat.Ico_succ_succ` → `Finset.Ico_succ_succ_eq_Ioc`
* `Nat.Ico_succ_right_eq_insert_Ico` → `Finset.insert_Ico_right_eq_Ico_succ_right`
* `Nat.Ico_insert_succ_left` → `Finset.insert_Ico_succ_left_eq_Ico`
* `Nat.Icc_insert_succ_left` → `Finset.insert_Icc_succ_left_eq_Icc`
* `Nat.Icc_insert_succ_right` → `Finset.insert_Icc_eq_Icc_succ_right`
@sgouezel sgouezel added the awaiting-author A reviewer has asked the author a question or requested changes. label May 13, 2025
pfaffelh and others added 5 commits May 30, 2025 11:52
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@leanprover-community-bot-assistant leanprover-community-bot-assistant added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jun 3, 2025
@leanprover-community-bot-assistant
Copy link
Copy Markdown
Collaborator

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

@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 Jun 8, 2025
@RemyDegenne
Copy link
Copy Markdown
Contributor

Closing: replaced by #25902

@YaelDillies YaelDillies deleted the pfaffelh_SemiringPi branch August 18, 2025 07:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

large-import Automatically added label for PRs with a significant increase in transitive imports new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-measure-probability Measure theory / Probability theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.