Documentation

Mathlib.NumberTheory.NumberField.CMField

CM-extension of number fields #

A CM-extension K/F of fields is an extension where K is totally complex, F is totally real and K is a quadratic extension of F. In this situation, the totally real subfield F is (isomorphic to) the maximal real subfield Kโบ of K.

Main definitions and results #

Implementation note #

Most results are proved for the case of a CM field, that is K is totally complex quadratic extension of its totally real. These results live in the NumberField.IsCMField namespace. Some results deal with the general case K/F, where K is totally complex, F is totally real and K is a quadratic extension of F, and live in the NumberField.CMExtension namespace. Note that results for the general case can be deduced for the CM case by using the isomorphism equivMaximalRealSubfield between F and Kโบ mentioned above.

class NumberField.IsCMField (K : Type u_1) [Field K] [CharZero K] :

A field K is CM if K is a totally complex quadratic extension of its maximal real subfield Kโบ.

Instances

    The equiv between the infinite places of K and the infinite places of Kโบ induced by the restriction to Kโบ, see equivInfinitePlace_apply.

    Instances For
      theorem NumberField.IsCMField.exists_isConj (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsAlgebraic โ„š K] (ฯ† : K โ†’+* โ„‚) :
      โˆƒ (ฯƒ : Gal(K/โ†ฅ(maximalRealSubfield K))), ComplexEmbedding.IsConj ฯ† ฯƒ
      theorem NumberField.IsCMField.isConj_eq_isConj (K : Type u_1) [Field K] [CharZero K] [IsCMField K] {ฯ† ฯˆ : K โ†’+* โ„‚} {ฯƒ ฯ„ : Gal(K/โ†ฅ(maximalRealSubfield K))} (hฯ† : ComplexEmbedding.IsConj ฯ† ฯƒ) (hฯˆ : ComplexEmbedding.IsConj ฯˆ ฯ„) :
      ฯƒ = ฯ„

      All the conjugations of a CM-field over its maximal real subfield are the same.

      noncomputable def NumberField.IsCMField.complexConj (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] :
      Gal(K/โ†ฅ(maximalRealSubfield K))

      The complex conjugation of the CM-field K.

      Instances For

        The complex conjugation is the conjugation of any complex embedding of a CM-field.

        @[simp]
        theorem NumberField.IsCMField.complexEmbedding_complexConj (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] (ฯ† : K โ†’+* โ„‚) (x : K) :
        ฯ† ((complexConj K) x) = (starRingEnd โ„‚) (ฯ† x)
        @[simp]
        theorem NumberField.IsCMField.complexConj_apply_eq_self (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] (x : โ†ฅ(maximalRealSubfield K)) :
        (complexConj K) โ†‘x = โ†‘x

        The complex conjugation is an automorphism of degree 2.

        The complex conjugation generates the Galois group of K/Kโบ.

        @[simp]
        theorem NumberField.IsCMField.complexConj_eq_self_iff (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] (x : K) :
        (complexConj K) x = x โ†” x โˆˆ maximalRealSubfield K

        An element of K is fixed by the complex conjugation iff it lies in Kโบ.

        theorem NumberField.IsCMField.RingOfIntegers.complexConj_eq_self_iff (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] (x : RingOfIntegers K) :
        (complexConj K) โ†‘x = โ†‘x โ†” โˆƒ (y : RingOfIntegers โ†ฅ(maximalRealSubfield K)), (algebraMap (RingOfIntegers โ†ฅ(maximalRealSubfield K)) K) y = โ†‘x
        @[implicit_reducible]
        noncomputable instance NumberField.IsCMField.starRing (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [Algebra.IsIntegral โ„š K] :
        @[reducible, inline]

        A variant of the complex conjugation defined as an AlgEquiv on the ring of integers.

        Instances For
          @[reducible, inline]

          The complex conjugation as an isomorphism of the units of K.

          Instances For

            The subgroup of (๐“ž K)หฃ generated by the units of Kโบ. These units are exactly the units fixed by the complex conjugation, see IsCMField.unitsComplexConj_eq_self_iff.

            Instances For
              theorem NumberField.IsCMField.mem_realUnits_iff (K : Type u_1) [Field K] (u : (RingOfIntegers K)หฃ) :
              u โˆˆ realUnits K โ†” โˆƒ (v : (RingOfIntegers โ†ฅ(maximalRealSubfield K))หฃ), (algebraMap (RingOfIntegers โ†ฅ(maximalRealSubfield K)) (RingOfIntegers K)) โ†‘v = โ†‘u
              @[simp]
              theorem NumberField.IsCMField.complexConj_torsion (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [NumberField K] (ฮถ : โ†ฅ(Units.torsion K)) :
              (complexConj K) ((algebraMap (RingOfIntegers K) K) โ†‘โ†‘ฮถ) = ((algebraMap (RingOfIntegers K) K) โ†‘โ†‘ฮถ)โปยน

              The image of a root of unity by the complex conjugation is its inverse. This is the version of Complex.conj_rootsOfUnity for CM-fields.

              theorem NumberField.IsCMField.unitsComplexConj_torsion (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [NumberField K] (ฮถ : โ†ฅ(Units.torsion K)) :
              (unitsComplexConj K) โ†‘ฮถ = โ†‘ฮถโปยน

              The map (๐“ž K)หฃ โ†’* torsion K defined by u โ†ฆ u * (conj u)โปยน.

              Instances For
                @[simp]
                theorem NumberField.IsCMField.unitsMulComplexConjInv_apply_torsion (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [NumberField K] (ฮถ : โ†ฅ(Units.torsion K)) :
                (unitsMulComplexConjInv K) โ†‘ฮถ = ฮถ ^ 2
                @[reducible, inline]
                noncomputable abbrev NumberField.IsCMField.indexRealUnits (K : Type u_1) [Field K] :
                โ„•

                The index of the subgroup of (๐“ž K)หฃ generated by the real units and the roots of unity. This index is equal to 1 or 2, see indexRealUnits_eq_one_or_two and indexRealUnits_eq_two_iff.

                Instances For

                  The index of the subgroup of (๐“ž K)หฃ generated by the real units and the roots of unity is equal to 1 or 2 (see NumberField.IsCMField.indexRealUnits_eq_two_iff for the computation of this index).

                  The index of the subgroup of (๐“ž K)หฃ generated by the real units and the roots of unity is equal to 2 iff there exists a unit whose image by unitsMulComplexConjInv generates the torsion subgroup of K.

                  noncomputable def NumberField.IsCMField.realFundSystem (K : Type u_1) [Field K] [CharZero K] [IsCMField K] [NumberField K] (i : Fin (Units.rank K)) :

                  The fundamental system of units of Kโบ as a family of (๐“ž K)หฃ.

                  Instances For

                    Any field F such that K/F is a CM-extension is isomorphic to the maximal real subfield of K.

                    Instances For

                      If K/F is a CM-extension then K is a CM-field.

                      theorem NumberField.IsCMField.of_forall_isConj (K : Type u_2) [Field K] [CharZero K] [Algebra.IsIntegral โ„š K] [IsTotallyComplex K] [IsGalois โ„š K] {ฯƒ : Gal(K/โ„š)} (hฯƒ : โˆ€ (ฯ† : K โ†’+* โ„‚), ComplexEmbedding.IsConj ฯ† ฯƒ) :

                      A totally complex field that has a unique complex conjugation is CM.

                      A totally complex abelian extension of โ„š is CM.

                      @[deprecated NumberField.IsCMField.of_isAbelianGalois (since := "2025-11-19")]

                      Alias of NumberField.IsCMField.of_isAbelianGalois.


                      A totally complex abelian extension of โ„š is CM.

                      theorem IsCyclotomicExtension.Rat.isCMField (K : Type u_1) [Field K] [CharZero K] {S : Set โ„•} (hS : โˆƒ n โˆˆ S, 2 < n) [IsCyclotomicExtension S โ„š K] :

                      A nontrivial abelian extension of โ„š is CM.