Module

Core.lean

Nyll.ValuedFieldTheory.Valuation.Henselian.Core
9 declarations indexed from sourceView source ↗

Henselian discretely valued fields

The Henselian factorization condition and the residual linear-factor lemmas used in the residual linear-factor criterion.

Imports20
Imported by11

Declarations

ValuationTheory.DiscreteValuationField.HenselFactorizationProperty

The factorization form of Hensel's lemma used in the Henselian factorization condition.

Every primitive polynomial whose reduction is a product of coprime factors has degree-controlled lifts with the prescribed reductions.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
def HenselFactorizationProperty {K : Type u} [Field K]
    (V : ValuationSubring K) : Prop
ValuationTheory.DiscreteValuationField.HenselianValuationByFactorization

The Henselian factorization condition: a valuation is Henselian when its valuation ring satisfies Hensel's lemma in the factorization sense.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
def HenselianValuationByFactorization {K : Type u} [Field K]
    {Γ : Type v} [LinearOrderedCommGroupWithZero Γ]
    (val : _root_.Valuation K Γ) : Prop
ValuationTheory.DiscreteValuationField.eval_map_quotient_mk_eq_zero_of_eval_mem

An approximate root becomes an actual root after reducing coefficients modulo the ideal.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem eval_map_quotient_mk_eq_zero_of_eval_mem
    {S : Type*} [CommRing S] {J : Ideal S} {p : Polynomial S} {a₀ : S}
    (hroot : p.eval a₀ ∈ J) :
    (p.map (Ideal.Quotient.mk J)).eval (Ideal.Quotient.mk J a₀) = 0
ValuationTheory.DiscreteValuationField.derivative_eval_map_quotient_mk

Derivatives commute with coefficient reduction and evaluation at the reduced approximate root.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem derivative_eval_map_quotient_mk
    {S : Type*} [CommRing S] (J : Ideal S) (p : Polynomial S) (a₀ : S) :
    (p.map (Ideal.Quotient.mk J)).derivative.eval (Ideal.Quotient.mk J a₀) =
      Ideal.Quotient.mk J (p.derivative.eval a₀)
ValuationTheory.DiscreteValuationField.derivative_isUnit_map_quotient_mk_of_simpleRoot_mod

The simple-root hypothesis is the derivative-unit condition for the residual polynomial.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem derivative_isUnit_map_quotient_mk_of_simpleRoot_mod
    {S : Type*} [CommRing S] {J : Ideal S} {p : Polynomial S} {a₀ : S}
    (hsimple : IsUnit (Ideal.Quotient.mk J (p.derivative.eval a₀))) :
    IsUnit
      ((p.map (Ideal.Quotient.mk J)).derivative.eval
        (Ideal.Quotient.mk J a₀))
ValuationTheory.DiscreteValuationField.isCoprime_X_sub_C_divByMonic_of_derivative_isUnit

A derivative unit makes the linear factor coprime to the cofactor obtained by monic division.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem isCoprime_X_sub_C_divByMonic_of_derivative_isUnit
    {S : Type*} [CommRing S] (p : Polynomial S) (a : S)
    (hunit : IsUnit (p.derivative.eval a)) :
    IsCoprime (Polynomial.X - Polynomial.C a)
      (p /ₘ (Polynomial.X - Polynomial.C a))
ValuationTheory.DiscreteValuationField.residual_X_sub_C_mul_divByMonic_eq_map_of_eval_mem

A residual approximate root supplies an actual linear factor after coefficient reduction.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem residual_X_sub_C_mul_divByMonic_eq_map_of_eval_mem
    {S : Type*} [CommRing S] {J : Ideal S} {p : Polynomial S} {a₀ : S}
    (hroot : p.eval a₀ ∈ J) :
    (Polynomial.X - Polynomial.C (Ideal.Quotient.mk J a₀)) *
        ((p.map (Ideal.Quotient.mk J)) /ₘ
          (Polynomial.X - Polynomial.C (Ideal.Quotient.mk J a₀))) =
      p.map (Ideal.Quotient.mk J)
ValuationTheory.DiscreteValuationField.isCoprime_residual_X_sub_C_divByMonic_of_simpleRoot_mod

A residual simple root splits the residual polynomial into coprime linear and complementary factors.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem isCoprime_residual_X_sub_C_divByMonic_of_simpleRoot_mod
    {S : Type*} [CommRing S] {J : Ideal S} {p : Polynomial S} {a₀ : S}
    (hsimple : IsUnit (Ideal.Quotient.mk J (p.derivative.eval a₀))) :
    IsCoprime
      (Polynomial.X - Polynomial.C (Ideal.Quotient.mk J a₀))
      ((p.map (Ideal.Quotient.mk J)) /ₘ
        (Polynomial.X - Polynomial.C (Ideal.Quotient.mk J a₀)))
ValuationTheory.DiscreteValuationField.henselianRing_map_algebraMap_of_moduleFinite_of_base_isPrecomplete

Finite algebras over a Noetherian Henselian, precomplete base are Henselian along the extended ideal.

Source context 4 commands

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

namespace ValuationTheory
noncomputable section
namespace DiscreteValuationField
universe u v
theorem henselianRing_map_algebraMap_of_moduleFinite_of_base_isPrecomplete
    {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S]
    {I : Ideal R} [IsNoetherianRing R] [Module.Finite R S]
    [HenselianRing R I] [IsPrecomplete I R] :
    HenselianRing S (I.map (algebraMap R S))