Documentation

Mathlib.NumberTheory.NumberField.InfinitePlace.Basic

Infinite places of a number field #

This file defines the infinite places of a number field.

Main Definitions and Results #

Tags #

number field, infinite places

def NumberField.InfinitePlace (K : Type u_1) [Field K] :
Type u_1

An infinite place of a number field K is a place associated to a complex embedding.

Equations
Instances For
    noncomputable def NumberField.InfinitePlace.mk {K : Type u_1} [Field K] (φ : K →+* ℂ) :

    Return the infinite place defined by a complex embedding φ.

    Equations
    Instances For

      A predicate singling out infinite places among the absolute values on a number field K.

      Equations
      Instances For
        @[instance_reducible]
        Equations
        theorem NumberField.InfinitePlace.coe_apply {K : Type u_1} [Field K] (v : InfinitePlace K) (x : K) :
        v x = ↑v x
        theorem NumberField.InfinitePlace.ext {K : Type u_1} [Field K] (v₁ v₂ : InfinitePlace K) (h : ∀ (k : K), v₁ k = v₂ k) :
        v₁ = v₂
        theorem NumberField.InfinitePlace.ext_iff {K : Type u_1} [Field K] {v₁ v₂ : InfinitePlace K} :
        v₁ = v₂ ↔ ∀ (k : K), v₁ k = v₂ k
        @[simp]
        theorem NumberField.InfinitePlace.apply {K : Type u_1} [Field K] (φ : K →+* ℂ) (x : K) :
        (mk φ) x = ‖φ x‖
        noncomputable def NumberField.InfinitePlace.embedding {K : Type u_1} [Field K] (w : InfinitePlace K) :

        For an infinite place w, return an embedding φ such that w = infinite_place φ .

        Equations
        Instances For
          @[simp]
          theorem NumberField.InfinitePlace.embedding_inj {K : Type u_1} [Field K] {v₁ v₂ : InfinitePlace K} :
          v₁.embedding = v₂.embedding ↔ v₁ = v₂
          theorem NumberField.InfinitePlace.eq_iff_eq {K : Type u_1} [Field K] (x : K) (r : ℝ) :
          (∀ (w : InfinitePlace K), w x = r) ↔ ∀ (φ : K →+* ℂ), ‖φ x‖ = r
          theorem NumberField.InfinitePlace.le_iff_le {K : Type u_1} [Field K] (x : K) (r : ℝ) :
          (∀ (w : InfinitePlace K), w x ≤ r) ↔ ∀ (φ : K →+* ℂ), ‖φ x‖ ≤ r
          theorem NumberField.InfinitePlace.pos_iff {K : Type u_1} [Field K] {w : InfinitePlace K} {x : K} :
          0 < w x ↔ x ≠ 0
          @[simp]
          theorem NumberField.InfinitePlace.mk_eq_iff {K : Type u_1} [Field K] {φ ψ : K →+* ℂ} :
          @[reducible, inline]
          abbrev NumberField.InfinitePlace.LiesOver {K : Type u_1} [Field K] {L : Type u_2} [Field L] [Algebra K L] (w : InfinitePlace L) (v : InfinitePlace K) :

          An infinite place w of L / K lies over the infinite place v of K if v is the restriction of w to K.

          Equations
          Instances For

            An infinite place is real if it is defined by a real embedding.

            Equations
            Instances For

              An infinite place is complex if it is defined by a complex (i.e. not real) embedding.

              Equations
              Instances For
                theorem NumberField.InfinitePlace.ne_of_isReal_isComplex {K : Type u_1} [Field K] {w w' : InfinitePlace K} (h : w.IsReal) (h' : w'.IsComplex) :
                w ≠ w'
                noncomputable def NumberField.InfinitePlace.embedding_of_isReal {K : Type u_1} [Field K] {w : InfinitePlace K} (hw : w.IsReal) :

                The real embedding associated to a real infinite place.

                Equations
                Instances For
                  @[simp]
                  noncomputable def NumberField.InfinitePlace.mult {K : Type u_1} [Field K] (w : InfinitePlace K) :

                  The multiplicity of an infinite place, that is the number of distinct complex embeddings that define it, see card_filter_mk_eq.

                  Equations
                  Instances For
                    @[simp]
                    theorem NumberField.InfinitePlace.mult_isReal {K : Type u_1} [Field K] (w : { w : InfinitePlace K // w.IsReal }) :
                    (↑w).mult = 1
                    @[simp]
                    theorem NumberField.InfinitePlace.mult_isComplex {K : Type u_1} [Field K] (w : { w : InfinitePlace K // w.IsComplex }) :
                    (↑w).mult = 2
                    theorem NumberField.InfinitePlace.prod_eq_prod_mul_prod {K : Type u_1} [Field K] {α : Type u_2} [CommMonoid α] [NumberField K] (f : InfinitePlace K → α) :
                    ∏ w : InfinitePlace K, f w = (∏ w : { w : InfinitePlace K // w.IsReal }, f ↑w) * ∏ w : { w : InfinitePlace K // w.IsComplex }, f ↑w
                    theorem NumberField.InfinitePlace.sum_eq_sum_add_sum {K : Type u_1} [Field K] {α : Type u_2} [AddCommMonoid α] [NumberField K] (f : InfinitePlace K → α) :
                    ∑ w : InfinitePlace K, f w = ∑ w : { w : InfinitePlace K // w.IsReal }, f ↑w + ∑ w : { w : InfinitePlace K // w.IsComplex }, f ↑w

                    The map from real embeddings to real infinite places as an equiv

                    Equations
                    Instances For

                      The map from nonreal embeddings to complex infinite places

                      Equations
                      Instances For
                        @[simp]
                        theorem NumberField.InfinitePlace.mkReal_coe {K : Type u_1} [Field K] (φ : { φ : K →+* ℂ // ComplexEmbedding.IsReal φ }) :
                        ↑(mkReal φ) = mk ↑φ
                        @[simp]
                        theorem NumberField.InfinitePlace.prod_eq_abs_norm {K : Type u_1} [Field K] [NumberField K] (x : K) :
                        ∏ w : InfinitePlace K, w x ^ w.mult = ↑|(Algebra.norm ℚ) x|

                        The infinite part of the product formula : for x ∈ K, we have Π_w ‖x‖_w = |norm(x)| where ‖·‖_w is the normalized absolute value for w.

                        theorem NumberField.InfinitePlace.one_le_of_lt_one {K : Type u_1} [Field K] [NumberField K] {w : InfinitePlace K} {a : RingOfIntegers K} (ha : a ≠ 0) (h : ∀ ⦃z : InfinitePlace K⦄, z ≠ w → z ↑a < 1) :
                        1 ≤ w ↑a
                        theorem NumberField.is_primitive_element_of_infinitePlace_lt {K : Type u_1} [Field K] [NumberField K] {x : RingOfIntegers K} {w : InfinitePlace K} (h₁ : x ≠ 0) (h₂ : ∀ ⦃w' : InfinitePlace K⦄, w' ≠ w → w' ↑x < 1) (h₃ : w.IsReal ∨ |(w.embedding ↑x).re| < 1) :
                        ℚ⟮↑x⟯ = ⊤
                        theorem NumberField.adjoin_eq_top_of_infinitePlace_lt {K : Type u_1} [Field K] [NumberField K] {x : RingOfIntegers K} {w : InfinitePlace K} (h₁ : x ≠ 0) (h₂ : ∀ ⦃w' : InfinitePlace K⦄, w' ≠ w → w' ↑x < 1) (h₃ : w.IsReal ∨ |(w.embedding ↑x).re| < 1) :
                        ℚ[↑x] = ⊤
                        @[reducible, inline]
                        noncomputable abbrev NumberField.InfinitePlace.nrRealPlaces (K : Type u_1) [Field K] [NumberField K] :

                        The number of infinite real places of the number field K.

                        Equations
                        Instances For
                          @[reducible, inline]
                          noncomputable abbrev NumberField.InfinitePlace.nrComplexPlaces (K : Type u_1) [Field K] [NumberField K] :

                          The number of infinite complex places of the number field K.

                          Equations
                          Instances For

                            The signature of the permutation on the complex embeddings of K defined by sending an embedding to its conjugate has signature (-1) ^ nrComplexPlaces K.

                            The infinite place of the rationals. #

                            The infinite place of ℚ, coming from the canonical map ℚ → ℂ.

                            Equations
                            Instances For
                              @[simp]
                              @[simp]
                              theorem NumberField.InfinitePlace.map_ratCast {K : Type u_1} [Field K] (v : InfinitePlace K) (x : ℚ) :
                              v ↑x = ‖x‖
                              @[simp]
                              theorem NumberField.InfinitePlace.map_natCast {K : Type u_1} [Field K] (v : InfinitePlace K) (n : ℕ) :
                              v ↑n = ↑n
                              @[simp]
                              theorem NumberField.InfinitePlace.map_intCast {K : Type u_1} [Field K] (v : InfinitePlace K) (z : ℤ) :
                              v ↑z = ‖z‖
                              theorem NumberField.InfinitePlace.eq_one_of_rpow_eq {K : Type u_1} [Field K] {v w : InfinitePlace K} {t : ℝ} (h : (fun (x : K) => w x) ^ t = ⇑v) :
                              t = 1

                              If v and w are infinite places of K and v = w ^ t for some t then t = 1.

                              theorem NumberField.InfinitePlace.eq_iff_isEquiv {K : Type u_1} [Field K] {v w : InfinitePlace K} :
                              w = v ↔ (↑w).IsEquiv ↑v

                              Two infinite places v and w are equal if and only if their underlying absolute values are equivalent.

                              Infinite places are represented by non-trivial absolute values.

                              Weak approximation for infinite places The number field K is dense when embedded diagonally in the product (v : InfinitePlace K) → WithAbs v.1, in which WithAbs v.1 represents K equipped with the topology coming from the infinite place v.