Module

CompletedChangedUniformizerPrimitive.lean

Nyll.ClassFieldTheory.LubinTate.Padic.CompletedChangedUniformizerPrimitive
18 declarations indexed from sourceView source ↗

Primitive changed-uniformizer points in the completed p-adic level

For a p-adic valuation-ring unit u, the primitive polynomial attached to the changed uniformizer u * p remains Eisenstein after extension to the completed-unramified Witt valuation ring. Consequently the genuine theta value constructed in the standard completed level has the changed primitive polynomial as its minimal polynomial and generates the whole completed level over the completed-unramified coefficient field.

Declarations

LubinTate.padicChangedCompletedPrimitivePolynomialInteger

The integral primitive polynomial for the changed uniformizer u * p over the completed-unramified Witt valuation ring.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
def padicChangedCompletedPrimitivePolynomialInteger
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    Polynomial
      (padicCompletedUnramifiedCompleteDVF p).valuationSubring
LubinTate.padicChangedCompletedPrimitivePolynomial

The field-valued changed primitive polynomial after extension from ℚ_[p] to the completed-unramified fraction field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
def padicChangedCompletedPrimitivePolynomial
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    Polynomial (padicCompletedUnramifiedField p)
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_map

Passing the integral changed primitive polynomial to the fraction field gives the field-valued changed primitive polynomial.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomialInteger_map
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomialInteger p u n).map
        (algebraMap
          (padicCompletedUnramifiedCompleteDVF p).valuationSubring
          (padicCompletedUnramifiedField p)) =
      padicChangedCompletedPrimitivePolynomial p u n
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_monic

The integral changed primitive polynomial is monic.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomialInteger_monic
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomialInteger p u n).Monic
LubinTate.padicChangedCompletedPrimitivePolynomial_monic

The field-valued changed primitive polynomial is monic.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomial_monic
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomial p u n).Monic
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_natDegree

The integral changed primitive polynomial has degree (p - 1) * p ^ n.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomialInteger_natDegree
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomialInteger p u n).natDegree =
      (p - 1) * p ^ n
LubinTate.padicChangedCompletedPrimitivePolynomial_natDegree

The changed primitive polynomial has degree (p - 1) * p ^ n.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomial_natDegree
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomial p u n).natDegree =
      (p - 1) * p ^ n
LubinTate.padicChangedCompletedUniformizer_isUniformizer

The image of the changed uniformizer u * p is a uniformizer of the completed-unramified coefficient field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedUniformizer_isUniformizer
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) :
    let π :=
      padicIntEquivValuationSubring p (p : ℤ_[p])
    let πu :=
      standardLubinTateChangedUniformizer
        (padicLocalField p) π u
    (padicCompletedUnramifiedCompleteDVF p).valuation.IsUniformizer
      ((padicCompletedUnramifiedIntegerMap p πu :
        (padicCompletedUnramifiedCompleteDVF p).valuationSubring) :
          padicCompletedUnramifiedField p) := by
  let target := padicCompletedUnramifiedCompleteDVF p
  let π := padicIntEquivValuationSubring p (p : ℤ_[p])
  let πu :=
    standardLubinTateChangedUniformizer
      (padicLocalField p) π u
  let πE : target.valuationSubring :=
    padicCompletedUnramifiedIntegerMap p π
  let uE : target.valuationSubring :=
    padicCompletedUnramifiedIntegerMap p
      (u : (padicLocalField p).valuationSubring)
  have hπ :
      target.valuation.IsUniformizer
        (πE : padicCompletedUnramifiedField p) := by
    simpa only [target, π, πE] using
      padicCompletedUnramifiedIntegerMap_isUniformizer p
  have huE : IsUnit uE :=
    u.isUnit.map (padicCompletedUnramifiedIntegerMap p)
  apply hπ.of_associated
  have hmul : padicCompletedUnramifiedIntegerMap p πu = uE * πE :=
    map_mul (padicCompletedUnramifiedIntegerMap p)
      (u : (padicLocalField p).valuationSubring) π
  exact hmul.symm ▸ (associated_unit_mul_right πE uE huE)
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_isWeaklyEisensteinAt

The integral changed primitive polynomial is weakly Eisenstein after base change to the completed-unramified valuation ring.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem
    padicChangedCompletedPrimitivePolynomialInteger_isWeaklyEisensteinAt
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomialInteger p u n).IsWeaklyEisensteinAt
      (padicCompletedUnramifiedCompleteDVF p).maximalIdeal
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_isEisensteinAt

The integral changed primitive polynomial is genuinely Eisenstein over the completed-unramified valuation ring.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomialInteger_isEisensteinAt
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedCompletedPrimitivePolynomialInteger p u n).IsEisensteinAt
      (padicCompletedUnramifiedCompleteDVF p).maximalIdeal
LubinTate.padicChangedCompletedPrimitivePolynomialInteger_irreducible

The integral changed primitive polynomial is irreducible.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomialInteger_irreducible
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    Irreducible
      (padicChangedCompletedPrimitivePolynomialInteger p u n)
LubinTate.padicChangedCompletedPrimitivePolynomial_irreducible

The changed primitive polynomial remains irreducible over the completed maximal-unramified fraction field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedCompletedPrimitivePolynomial_irreducible
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    Irreducible (padicChangedCompletedPrimitivePolynomial p u n)
LubinTate.padicChangedUniformizerThetaValue_isRoot_completedPrimitivePolynomial

The theta value is a root of the named changed primitive polynomial over the completed-unramified field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedUniformizerThetaValue_isRoot_completedPrimitivePolynomial
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    ((padicChangedCompletedPrimitivePolynomial p u n).map
      (algebraMap (padicCompletedUnramifiedField p)
        (padicCompletedLevelField p n))).IsRoot
      ((padicChangedUniformizerThetaValue p u n :
        (padicCompletedLevelCompleteDVF p n).valuationSubring) :
          padicCompletedLevelField p n)
LubinTate.padicChangedUniformizerThetaValue_isIntegral_completedBase

The theta value is integral over the completed-unramified field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedUniformizerThetaValue_isIntegral_completedBase
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    IsIntegral (padicCompletedUnramifiedField p)
      ((padicChangedUniformizerThetaValue p u n :
        (padicCompletedLevelCompleteDVF p n).valuationSubring) :
          padicCompletedLevelField p n)
LubinTate.padicChangedUniformizerThetaValue_minpoly_completedBase

The minimal polynomial of the theta value over the completed-unramified field is the genuine changed primitive polynomial.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedUniformizerThetaValue_minpoly_completedBase
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    minpoly (padicCompletedUnramifiedField p)
        ((padicChangedUniformizerThetaValue p u n :
          (padicCompletedLevelCompleteDVF p n).valuationSubring) :
            padicCompletedLevelField p n) =
      padicChangedCompletedPrimitivePolynomial p u n
LubinTate.padicChangedUniformizerThetaValue_adjoin_completedBase_eq_top

The fixed theta point generates the entire standard completed level over the completed-unramified coefficient field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedUniformizerThetaValue_adjoin_completedBase_eq_top
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    IntermediateField.adjoin
        (padicCompletedUnramifiedField p)
        ({((padicChangedUniformizerThetaValue p u n :
          (padicCompletedLevelCompleteDVF p n).valuationSubring) :
            padicCompletedLevelField p n)} :
          Set (padicCompletedLevelField p n)) =
      ⊤
LubinTate.padicChangedUniformizerThetaPowerBasis

The theta value supplies a power basis of the completed standard level over the completed-unramified field.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
def padicChangedUniformizerThetaPowerBasis
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    PowerBasis (padicCompletedUnramifiedField p)
      (padicCompletedLevelField p n)
LubinTate.padicChangedUniformizerThetaPowerBasis_gen

The generator of the theta power basis is the genuine evaluated theta value.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open scoped Polynomial
namespace LubinTate
open LocalFieldTheory.DiscreteValuationField
open LocalFieldTheory.DiscreteValuationField.Examples.Qp
open ValuationTheory.DiscreteValuationField
theorem padicChangedUniformizerThetaPowerBasis_gen
    (p : ℕ) [Fact p.Prime]
    (u : (padicLocalField p).valuationSubringˣ) (n : ℕ) :
    (padicChangedUniformizerThetaPowerBasis p u n).gen =
      ((padicChangedUniformizerThetaValue p u n :
        (padicCompletedLevelCompleteDVF p n).valuationSubring) :
          padicCompletedLevelField p n)