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
              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 →+* } :

                  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
                              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
                                  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 φ
                                          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 wz 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' ww' 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' ww' x < 1) (h₃ : w.IsReal |(w.embedding x).re| < 1) :
                                          @[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]
                                                      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.