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/NumberField/FinitePlaces): the finite places of a number field #19667

Closed
wants to merge 34 commits into from

Conversation

fbarroero
Copy link
Collaborator

@fbarroero fbarroero commented Dec 1, 2024

This file defines finite places of a number field K as absolute values coming from an embedding
into a completion of K associated to a non-zero prime ideal of 𝓞 K with some basic APIs.

This is part of a project which aims to define heights. The next step is the product formula.


Open in Gitpod

…umber field

---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.

For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html

In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.

To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:

Co-authored-by: Author Name <[email protected]>

If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:

Moves:
- Vector.* -> Mathlib.Vector.*
- ...

Deletions:
- Nat.bit1_add_bit1
- ...

Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.

If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]

-->

[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
@github-actions github-actions bot added the t-number-theory Number theory (also use t-algebra or t-analysis to specialize) label Dec 1, 2024
Copy link

github-actions bot commented Dec 1, 2024

PR summary 4e978f3c00

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.NumberTheory.NumberField.FinitePlaces (new file) 2402

Declarations diff

+ FinitePlace
+ FinitePlace.mk
+ FinitePlace.norm_def
+ FinitePlace.norm_def'
+ FinitePlace.norm_def_int
+ apply
+ embedding
+ instNormedFieldValuedAdicCompletion
+ instRankOneValuedAdicCompletion
+ instance : FunLike (FinitePlace K) K ℝ
+ instance : MonoidWithZeroHomClass (FinitePlace K) K ℝ
+ instance : NonnegHomClass (FinitePlace K) K ℝ
+ maximalIdeal
+ maximalIdeal_inj
+ maximalIdeal_injective
+ maximalIdeal_mk
+ mk_eq_iff
+ mk_maximalIdeal
+ mulSupport_finite
+ mulSupport_finite_int
+ norm_embedding_eq
+ norm_eq_one_iff_not_mem
+ norm_le_one
+ norm_lt_one_iff_mem
+ one_lt_norm
+ pos_iff
+ toNNReal_Valued_eq_vadicAbv
+ vadicAbv
+ vadicAbv_def

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

@fbarroero
Copy link
Collaborator Author

Thank you @MichaelStollBayreuth for the review and the suggestions!

@fbarroero fbarroero removed the awaiting-author A reviewer has asked the author a question or requested changes label Dec 4, 2024
Copy link
Collaborator

@MichaelStollBayreuth MichaelStollBayreuth left a comment

Choose a reason for hiding this comment

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

Looks good to me now!
maintainer merge

Copy link

github-actions bot commented Dec 5, 2024

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

Copy link
Member

@kbuzzard kbuzzard left a comment

Choose a reason for hiding this comment

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

Thanks a lot! Just to flag that in the FLT project we are also thinking about this sort of thing; in particular this file https://github.com/ImperialCollegeLondon/FLT/blob/main/FLT/HaarMeasure/DistribHaarChar.lean defines the norm on the units of any locally compact topological field as being the factor which Haar measure is scaled by under multiplication. What we need in FLT is the assertion that if B is a f.d. central simple algebra over a number field K, then multiplication by a unit in B doesn't change Haar measure on B tensor_K A_K. This is a generalization of what your goal is here so we should take care not to duplicate work. See for example ImperialCollegeLondon/FLT#223 .

bors merge

‖embedding (maximalIdeal w) x‖ = w x := by
conv_rhs => rw [← mk_maximalIdeal w, apply]

theorem pos_iff {w : FinitePlace K} {x : K} : 0 < w x ↔ x ≠ 0 := AbsoluteValue.pos_iff w.1
Copy link
Member

Choose a reason for hiding this comment

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

Remark: this could have just been w.1.pos_iff

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the ready-to-merge This PR has been sent to bors. label Dec 7, 2024
mathlib-bors bot pushed a commit that referenced this pull request Dec 7, 2024
…umber field (#19667)

This file defines finite places of a number field `K` as absolute values coming from an embedding
into a completion of `K` associated to a non-zero prime ideal of `𝓞 K` with some basic APIs.

This is part of a project which aims to define heights. The next step is the product formula.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Dec 7, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(NumberTheory/NumberField/FinitePlaces): the finite places of a number field [Merged by Bors] - feat(NumberTheory/NumberField/FinitePlaces): the finite places of a number field Dec 7, 2024
@mathlib-bors mathlib-bors bot closed this Dec 7, 2024
@mathlib-bors mathlib-bors bot deleted the fbarroero_finitePlaces branch December 7, 2024 12:29
@fbarroero
Copy link
Collaborator Author

Thanks a lot! Just to flag that in the FLT project we are also thinking about this sort of thing; in particular this file https://github.com/ImperialCollegeLondon/FLT/blob/main/FLT/HaarMeasure/DistribHaarChar.lean defines the norm on the units of any locally compact topological field as being the factor which Haar measure is scaled by under multiplication. What we need in FLT is the assertion that if B is a f.d. central simple algebra over a number field K, then multiplication by a unit in B doesn't change Haar measure on B tensor_K A_K. This is a generalization of what your goal is here so we should take care not to duplicate work. See for example ImperialCollegeLondon/FLT#223 .

bors merge

Thanks!
I see what you mean. I am planning to PR the Product Formula soon. My goal is to define the Weil height, you don't need that for FLT, do you?

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.

4 participants