Skip to content

feat(RingTheory.DedekindDomain.Factorization): add API for factorization#38654

Open
MichaelStollBayreuth wants to merge 6 commits intoleanprover-community:masterfrom
MichaelStollBayreuth:MS_Heights_18
Open

feat(RingTheory.DedekindDomain.Factorization): add API for factorization#38654
MichaelStollBayreuth wants to merge 6 commits intoleanprover-community:masterfrom
MichaelStollBayreuth:MS_Heights_18

Conversation

@MichaelStollBayreuth
Copy link
Copy Markdown
Contributor

This PR adds

  • simp lemmas that convert ways of expressing the multiplicity of a prime ideal p in the factorization of an ideal I into multiplicity p.asIdeal I (see #Is there code for X? > Results on elements of number fields and ideals @ 💬),
  • API lemmas on multiplicities, expressed in terms of multiplicity p.asIdeal I.
  • We also refactor a proof in Mathlib.RingTheory.DedekindDomain.Ideal.Lemmas by extracting a couple of lemmas that we can reuse in one of the new lemmas.

These will be useful in proving the Northcott property of heights on number fields.


Open in Gitpod

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 28, 2026

PR summary 900c9b0390

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.RingTheory.DedekindDomain.Factorization 2126 2127 +1 (+0.05%)
Import changes for all files
Files Import difference
19 files Mathlib.Algebra.Module.Torsion.PrimaryComponent Mathlib.AlgebraicGeometry.EllipticCurve.LFunction Mathlib.NumberTheory.FLT.Three Mathlib.NumberTheory.Height.NumberField Mathlib.NumberTheory.NumberField.AdeleRing Mathlib.NumberTheory.NumberField.Completion.FinitePlace Mathlib.NumberTheory.NumberField.Cyclotomic.Basic Mathlib.NumberTheory.NumberField.Cyclotomic.Galois Mathlib.NumberTheory.NumberField.Cyclotomic.Ideal Mathlib.NumberTheory.NumberField.Cyclotomic.PID Mathlib.NumberTheory.NumberField.Cyclotomic.Three Mathlib.NumberTheory.NumberField.Discriminant.Different Mathlib.NumberTheory.NumberField.FinitePlaces Mathlib.NumberTheory.NumberField.Ideal.Basic Mathlib.NumberTheory.NumberField.ProductFormula Mathlib.RingTheory.DedekindDomain.Factorization Mathlib.RingTheory.DedekindDomain.FiniteAdeleRing Mathlib.RingTheory.Ideal.Norm.RelNorm Mathlib.Topology.Algebra.Ring.Compact
1

Declarations diff

+ Ideal.finprod_heightOneSpectrum_pow_multiplicity
+ count_normalizedFactors_eq_multiplicity
+ emultiplicity_ciSup
+ emultiplicity_sup
+ factorization_eq_multiplicity
+ maxPowDividing_eq_pow_multiplicity
+ multiplicity_ciSup
+ multiplicity_le_of_ideal_ge
+ multiplicity_sup
+ normalizedFactors_prod_inter_eq_inter
+ prod_inter_normalizedFactors_ne_zero

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 technical debt.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

t-ring-theory Ring theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant