[____] p-ADIC RINGS AND THEIR EXTENSIONS  
Acknowledgements
 
Introduction
 
Background
 
Overview of the p-adics in Magma
      p-adic Rings
      p-adic Fields
      Free Precision Rings and Fields
      Precision of Extensions
 
Creation of Local Rings and Fields
      Creation Functions for the p-adics
      Creation of Unramified Extensions
      Creation of Totally Ramified Extensions
      Creation of Unbounded Precision Extensions
      Creation of Related Rings
      Other Elementary Constructions
      Attributes of Local Rings and Fields
 
Elementary Invariants
 
Operations on Structures
      Ramification Predicates
 
Element Constructions and Conversions
      Constructions
      Element Decomposers
 
Operations on Elements
      Arithmetic
      Equality and Membership
      Properties
      Precision and Valuation
      Logarithms and Exponentials
      Norm and Trace
      Power Relation (Algebraic Dependency)
      Teichmüller Lifts
 
Linear Algebra
 
Roots of Elements
 
Polynomials
      Operations for Polynomials
      Roots of Polynomials
            Hensel Lifting of Roots
            Functions returning Roots
      Factorization
 
Automorphisms of Local Rings and Fields
 
Completions
 
Class Field Theory
      Unit Group
      Norm Group
      Class Fields
 
Extensions
 
Exact p-Adic Rings
      Introduction
      Exact p-adic Rings and Fields
            Construction of Exact p-adic Rings and Fields
            Related Structures
            Generating Elements
            Invariants
      Exact p-adic Elements
            Arithmetic with Elements
      Polynomials over Exact p-adic Rings and Fields
            Exact Polynomial Rings
            Polynomials
            Arithmetic
            Factorization and Roots
 
Bibliography







 
Introduction

 
Background

 
Overview of the p-adics in Magma

      p-adic Rings

      p-adic Fields

      Free Precision Rings and Fields

      Precision of Extensions

 
Creation of Local Rings and Fields

      Creation Functions for the p-adics
            pAdicRing(p, k) : RngIntElt, RngIntElt -> RngPad
            pAdicRing(p) : RngIntElt -> RngPad
            pAdicQuotientRing(p, k) : RngIntElt, RngIntElt -> RngPadRes
            quo<L | x> : RngPad, RngPadElt -> .
            Example RngLoc_el_creation_padic (H49E1)

      Creation of Unramified Extensions
            UnramifiedExtension(L, n) : RngPad, RngIntElt -> RngPad
            UnramifiedQuotientRing(K, k) : FldFin, RngIntElt -> Rng
            UnramifiedExtension(L, f) : RngPad, RngUPolElt -> RngPad
            IsInertial(f) : RngUPolElt -> BoolElt
            HasGNB(R, n, t) : RngPad, RngIntElt, RngIntElt -> BoolElt
            CyclotomicUnramifiedExtension(R, f) : FldPad, RngIntElt -> FldPad
            Example RngLoc_el_creation_unram (H49E2)

      Creation of Totally Ramified Extensions
            TotallyRamifiedExtension(L, f) : RngPad, RngUPolElt -> RngPad
            IsEisenstein(f) : RngUPolElt -> BoolElt
            Example RngLoc_el_creation_ram (H49E3)

      Creation of Unbounded Precision Extensions
            ext<L | m> : RngPad, Map -> RngPad
            Example RngLoc_el_creation_map (H49E4)

      Creation of Related Rings
            IntegerRing(F) : FldPad -> RngPad
            RingOfIntegers(R) : RngPad -> RngPad
            FieldOfFractions(R) : RngPad -> FldPad
            SplittingField(f, R) : RngUPolElt[RngInt], RngPad -> RngPad
            AbsoluteTotallyRamifiedExtension(R) : RngPad -> RngPad, Map

      Other Elementary Constructions
            Composite(R, S) : RngPad, RngPad -> RngPad

      Attributes of Local Rings and Fields
            L`DefaultPrecision : RngPad -> RngIntElt
            L`SeriesPrinting : RngPad -> BoolElt
            Example RngLoc_series_printing (H49E5)

 
Elementary Invariants
      Prime(L) : RngPad -> RngIntElt
      InertiaDegree(L) : RngPad -> RngIntElt
      InertiaDegree(K, L) : RngPad, RngPad -> RngIntElt
      AbsoluteInertiaDegree(L) : RngPad -> RngIntElt
      RamificationDegree(L) : RngPad -> RngIntElt
      RamificationDegree(K, L) : RngPad, RngPad -> RngIntElt
      AbsoluteRamificationDegree(L) : RngPad -> RngIntElt
      AbsoluteDegree(L) : RngPad -> RngIntElt
      Degree(L) : RngPad -> RngIntElt
      Degree(K, L) : RngPad, RngPad -> RngIntElt
      DefiningPolynomial(L) : RngPad -> RngUPolElt
      DefiningPolynomial(K, L) : RngPad, RngPad -> RngUPolElt
      DefiningMap(L) : RngPad -> Map
      HasDefiningMap(L) : RngPad -> BoolElt, Map
      PrimeRing(L) : RngPad -> RngPad
      BaseRing(L) : RngPad -> RngPad
      ResidueClassField(L) : RngPad -> FldFin, Map
      ResidueSystem(R) : RngPad -> [RngPadElt]
      UniformizingElement(L) : RngPad -> RngPadElt
      L . 1 : RngPad -> RngPadElt
      Precision(L) : RngPad -> RngIntElt
      HasPRoot(R) : RngPad -> BoolElt
      HasRootOfUnity(L, n) : RngPad, RngIntElt -> BoolElt
      Discriminant(R) : RngPad -> RngPadElt
      Discriminant(K, k) : RngPad, RngPad -> RngPadElt
      AdditiveGroup(R) : RngPadRes -> GrpAb, Map
      Example RngLoc_elinvar (H49E6)
      AbsoluteRootNumber(K) : FldPad -> FldCycElt
      RootNumber(K) : FldPad -> FldCycElt
      Example RngLoc_padic-rootno-ex (H49E7)

 
Operations on Structures
      AssignNames(~L, S) : RngPad, SeqEnum ->
      Characteristic(L) : RngPad -> RngIntElt
      # L : RngPad -> RngIntElt
      Name(L, k) : RngPad, RngIntElt -> RngPadElt
      ChangePrecision(L, k) : RngPad, Any -> RngPad
      L eq K : RngPad, RngPad -> BoolElt
      L ne K : RngPad, RngPad -> BoolElt
      Example RngLoc_strop (H49E8)

      Ramification Predicates
            IsRamified(R) : RngPad -> BoolElt
            IsTamelyRamified(R) : RngPad -> BoolElt

 
Element Constructions and Conversions

      Constructions
            Zero(L) : RngPad -> RngPadElt
            One(L) : RngPad -> RngPadElt
            Random(L) : RngPad -> RngPadElt
            Representative(L) : RngPad -> RngPadElt
            elt<L | u> : RngPad, RngElt -> RngPadElt
            elt<L | u, r> : RngPad, RngElt, RngIntElt -> RngPadElt
            elt<L | v, u, r> : RngPad, RngIntElt, RngElt, RngIntElt -> RngPadElt
            BigO(x) : RngPadElt -> RngPadElt
            UniformizingElement(L) : RngPad -> RngPadElt
            Example RngLoc_eltcons (H49E9)
            Example RngLoc_eltcons_seq_weird (H49E10)

      Element Decomposers
            ElementToSequence(x) : RngPadElt -> [ RngElt ]
            Coefficient(x, i) : RngPadElt, RngIntElt -> RngPadElt
            Example RngLoc_gal-desc (H49E11)

 
Operations on Elements

      Arithmetic
            - x : RngPadElt -> RngPadElt
            x + y : RngPadElt, RngPadElt -> RngPadElt
            x - y : RngPadElt, RngPadElt -> RngPadElt
            x * y : RngPadElt, RngPadElt -> RngPadElt
            x ^ k : RngPadElt, RngIntElt -> RngPadElt
            x div y : RngPadElt, RngPadElt -> RngPadElt
            x div:= y : RngPadElt, RngPadElt -> RngPadElt
            x / y : RngPadElt, RngPadElt -> RngPadElt
            IsExactlyDivisible(x, y) : RngPadElt, RngPadElt -> BoolElt, RngPadElt
            Example RngLoc_Division (H49E12)

      Equality and Membership
            x eq y : RngPadResElt, RngPadResElt -> BoolElt
            x ne y : RngPadResElt, RngPadResElt -> BoolElt
            x in L : ., RngPad -> BoolElt
            x notin L : ., RngPad -> BoolElt
            Example RngLoc_unram-ext (H49E13)

      Properties
            IsZero(x) : RngPadElt -> BoolElt
            IsOne(x) : RngPadElt -> BoolElt
            IsMinusOne(x) : RngPadElt -> BoolElt
            IsUnit(x) : RngPadElt -> BoolElt
            IsIntegral(x) : RngPadElt -> BoolElt

      Precision and Valuation
            Parent(x) : RngPadElt -> RngPad
            Precision(x) : RngPadElt -> RngIntElt
            AbsolutePrecision(x) : RngPadElt -> RngIntElt
            RelativePrecision(x) : RngPadElt -> RngIntElt
            ChangePrecision(x, k) : RngUPolElt, RngIntElt -> RngPadElt
            Expand(x) : RngPadElt -> RngPadElt
            Valuation(x) : RngPadElt -> RngIntElt
            Example RngLoc_ofe (H49E14)
            Example RngLoc_padic-precision-woes (H49E15)

      Logarithms and Exponentials
            Log(x) : RngPadElt -> RngPadElt
            Exp(x) : RngPadElt -> RngPadElt
            Example RngLoc_log (H49E16)

      Norm and Trace
            Norm(x) : RngPadElt -> RngPadElt
            Norm(x, R) : RngPadElt, RngPad -> RngPadElt
            Trace(x) : RngPadElt -> RngPadElt
            Trace(x, R) : RngPadElt, RngPad -> RngPadElt
            MinimalPolynomial(x) : RngPadElt -> RngUPolElt
            MinimalPolynomial(x, R) : RngPadElt, RngPad -> RngUPolElt
            CharacteristicPolynomial(x) : RngPadElt -> RngUPolElt
            CharacteristicPolynomial(x, R) : RngPadElt, RngPad -> RngUPolElt
            GaloisImage(x, i) : RngPadElt, RngIntElt -> RngPadElt
            Example RngLoc_agm (H49E17)
            EuclideanNorm(x) : RngPadResElt -> RngIntElt

      Power Relation (Algebraic Dependency)
            PowerRelation(x,n) : FldPadElt, RngIntElt -> RngUPolElt

      Teichmüller Lifts
            TeichmuellerLift(u, R) : FldFinElt, RngPadResExt -> RngPadResExtElt

 
Linear Algebra

 
Roots of Elements
      SquareRoot(x) : RngPadElt -> RngPadElt
      IsSquare(x) : RngPadElt -> BoolElt, RngPadElt
      InverseSquareRoot(x) : RngPadElt -> RngPadElt
      InverseSquareRoot(x, y) : RngPadElt, RngPadElt -> RngPadElt
      Root(x, n) : RngPadElt, RngIntElt -> RngPadElt
      IsPower(x, n) : RngPadElt, RngIntElt -> BoolElt, RngPadElt
      InverseRoot(x, n) : RngPadElt, RngIntElt -> RngPadElt
      InverseRoot(x, y, n) : RngPadElt, RngPadElt, RngIntElt -> RngPadElt

 
Polynomials

      Operations for Polynomials
            GreatestCommonDivisor(f, g) : RngUPolElt, RngUPolElt -> RngUPolElt
            Example RngLoc_gcd (H49E18)
            ShiftValuation(f, n) : RngUPolElt, RngIntElt -> RngUPolElt

      Roots of Polynomials

            Hensel Lifting of Roots
                  NewtonPolygon(f) : RngUPolElt -> NwtnPgon
                  ValuationsOfRoots(f) : RngUPolElt -> SeqEnum[<FldRatElt, RngIntElt>]
                  Example RngLoc_newton-polygon (H49E19)
                  HenselLift(f, x) : RngUPolElt, RngPadElt -> RngPadElt
                  Example RngLoc_Hensel (H49E20)

            Functions returning Roots
                  Roots(f) : RngUPolElt -> [ <RngPadElt, RngIntElt> ]
                  HasRoot(f) : RngUPolElt -> BoolElt, RngPadElt
                  Example RngLoc_ramified-ext (H49E21)

      Factorization
            HenselLift(f, s) : RngUPolElt, [RngUPolElt] -> [RngUPolElt]
            Example RngLoc_Poly-Hensel (H49E22)
            IsIrreducible(f) : RngUPolElt -> BoolElt
            SquareFreeFactorization(f) : RngUPolElt -> [ < RngUPolElt, RngIntElt > ]
            Factorization(f) : RngUPolElt -> [ < RngUPolElt, RngIntElt > ]
            SuggestedPrecision(f) : RngUPolElt -> RngIntElt
            IsIsomorphic(f, g) : RngUPolElt, RngUPolElt -> BoolElt
            Distance(f, g) : RngUPolElt, RngUPolElt -> RngIntElt
            Example RngLoc_factors-precision (H49E23)
            Example RngLoc_Factors (H49E24)
            SplittingField(f) : RngUPolElt[FldPad] -> FldPad, SeqEnum
            Example RngLoc_rngloc-splittingfield (H49E25)

 
Automorphisms of Local Rings and Fields
      Automorphisms(L) : RngPad -> [Map]
      Automorphisms(K, k) : FldPad, FldPad -> [Map]
      AutomorphismGroup(L) : RngPad -> GrpPerm, Map
      AutomorphismGroup(K, k) : RngPad, RngPad -> GrpPerm, Map
      IsNormal(K) : RngPad -> BoolElt
      IsNormal(K, k) : RngPad, RngPad -> BoolElt
      IsAbelian(K, k) : FldPad, FldPad -> BoolElt
      Continuations(m, L) : Map, RngPad -> [Map]
      IsIsomorphic(E, K) : RngPad, RngPad -> BooElt
      Example RngLoc_units-autos (H49E26)
      GaloisGroup(f) : RngUPolElt[FldPad] -> GrpPerm, SeqEnum, UserProgram
      Example RngLoc_rngloc-galoisgroup (H49E27)

 
Completions
      Completion(O, P) : RngOrd, RngOrdIdl -> RngPad, Map
      LocalRing(P, k) : RngOrdIdl, RngIntElt -> RngPad, Map
      Example RngLoc_completion (H49E28)

 
Class Field Theory

      Unit Group
            PrincipalUnitGroupGenerators(R) : RngPad -> SeqEnum
            PrincipalUnitGroup(R) : RngPad -> GrpAb, Map
            UnitGroup(R) : RngPad -> GrpAb, Map
            UnitGroup(F) : FldPad -> GrpAb, Map
            UnitGroupGenerators(R) : RngPad -> SeqEnum
            UnitGroupGenerators(F) : FldPad -> SeqEnum
            pSelmerGroup(p,F) : RngIntElt, FldPad -> GrpAb, Map

      Norm Group
            NormGroup(R, m) : FldPad, Map -> GrpAb, Map
            NormEquation(R, m, b) : FldPad, Map, RngElt -> BoolElt, RngElt
            NormEquation(m1, m2, G) : Map, Map, GrpAb -> GrpAb, Map
            Norm(m1, m2, G) : Map, Map, GrpAb -> GrpAb
            NormKernel(m1, m2) : Map, Map -> GrpAb

      Class Fields
            ClassField(m, G) : Map, GrpAb -> FldAb
            NormGroupDiscriminant(m, G) : Map, GrpAb -> RngIntElt

 
Extensions
      AllExtensions(R, n) : RngPad, RngIntElt -> [RngPad]
      NumberOfExtensions(R, n) : RngPad, RngIntElt -> RngIntElt
      OreConditions(R, n, j) : RngPad, RngIntElt, RngIntElt -> BoolElt
      Example RngLoc_all-extensions (H49E29)

 
Exact p-Adic Rings

      Introduction
            IsExactpAdic(x) : Any -> BoolElt

      Exact p-adic Rings and Fields

            Construction of Exact p-adic Rings and Fields
                  pAdicField(p : parameters) : RngIntElt -> FldXPad
                  pAdicRing(p : parameters) : RngIntElt -> FldXPad
                  ext<K | f> : FldXPad, RngUPolElt -> RngXPad
                  Example RngLoc_constr_ex (H49E30)

            Related Structures
                  RingOfIntegers(L) : FldXPad -> RngXPad
                  FieldOfFractions(L) : FldXPad -> FldXPad
                  BaseField(F) : FldXPad -> FldXPad
                  BaseRing(R) : RngXPad -> RngXPad
                  ResidueClassField(L) : FldXPad -> FldFin, Map
                  pAdicQuotientRing(L, k) : FldXPad, RngIntElt -> RngPadRes, Map
                  InfinitePrecisionApproximation(K) : FldXPad -> FldPad
                  R eq T : RngXPad, RngXPad -> BoolElt
                  Example RngLoc_related-ex (H49E31)

            Generating Elements
                  R . i : FldXPad, RngIntElt -> FldXPadElt
                  AssignNames(~R, S) : RngXPad, SeqEnum[MonStgElt] ->
                  Generator(R) : FldXPad -> FldXPadElt
                  UniformizingElement(R) : FldXPad -> FldXPadElt
                  ResidueGenerator(R) : FldXPad -> FldXPadElt
                  AbsoluteGenerator(R) : FldXPad -> FldXPadElt
                  Example RngLoc_gen-ex (H49E32)

            Invariants
                  Prime(L) : FldXPad -> RngIntElt
                  Degree(L, K) : FldXPad, FldXPad -> RngIntElt
                  InertiaDegree(L, K) : FldXPad, FldXPad -> RngIntElt
                  RamificationDegree(L, K) : FldXPad, FldXPad -> RngIntElt
                  DefiningPolynomial(R) : RngXPad -> RngUPolElt
                  AbsoluteDegree(F) : FldXPad -> RngIntElt
                  DiscriminantValuation(L) : FldXPad -> RngIntElt
                  RamificationPolygon(L) : FldXPad -> NwtnPgon
                  Example RngLoc_invar-ex (H49E33)

      Exact p-adic Elements
            GetExactpAdicsPrintPrecision() : -> RngIntElt
            SetExactpAdicsPrintPrecision(k) : Infty ->
            K ! x : FldXPad, Any -> FldXPadElt
            AbsolutePrecision(x) : FldXPadElt -> RngIntElt
            RelativePrecision(x) : FldXPadElt -> RngIntElt
            Valuation(x) : FldXPadElt -> RngIntElt
            WeakValuation(x) : RngXPadElt -> RngIntElt
            ShiftValuation(x, n) : FldXPadElt, RngIntElt -> FldXPadElt
            ValuationEq(x, n) : FldXPadElt, RngIntElt -> BoolElt
            IsUnit(x) : RngXPadElt -> BoolElt
            IsIntegral(x) : RngXPadElt -> BoolElt
            IsWeaklyZero(x) : StrAnyXPadElt -> BoolElt
            IsDefinitelyZero(x) : StrAnyXPadElt -> BoolElt
            CoerceAndLift(S, x) : StrAnyXPad, Any -> StrAnyXPadElt

            Arithmetic with Elements
                  GCD(x, y) : FldXPadElt, FldXPadElt -> FldXPadElt
                  ExtendedGreatestCommonDivisor(x, y) : FldXPadElt, FldXPadElt -> FldXPadElt, FldXPadElt, FldXPadElt
                  Example RngLoc_elts-ex (H49E34)

      Polynomials over Exact p-adic Rings and Fields

            Exact Polynomial Rings
                  PolynomialRing(R : parameters) : Rng -> RngUPol
                  R eq T : RngUPolXPad, RngUPolXPad -> BoolElt
                  BaseRing(R) : RngUPolXPad -> Rng
                  R . i : RngUPolXPad, RngIntElt -> RngXPadElt
                  AssignNames(~R, S) : RngUPolXPad, SeqEnum[MonStgElt] ->
                  Example RngLoc_poly-ring-ex (H49E35)

            Polynomials
                  R ! f : RngUPolXPad, Any -> RngUPolXPadElt
                  BaseRing(f) : RngUPolXPadElt -> Rng
                  CanChangeRing(f, R) : RngUPolXPadElt, Rng -> BoolElt, RngUPolXPadElt
                  Degree(f) : RngUPolXPadElt -> RngIntElt
                  WeakDegree(f) : RngUPolXPadElt -> RngIntElt
                  Coefficient(f, i) : RngUPolXPadElt, RngIntElt -> RngElt
                  ExactPolynomial(f) : RngUPolXPadElt -> RngUPolXPadElt
                  Evaluate(f, x) : RngUPolXPadElt, Any -> RngAnyXPadElt
                  Derivative(f, m) : RngUPolXPadElt, RngIntElt -> RngUPolXPadElt
                  Discriminant(f) : RngUPolXPadElt -> RngAnyXPadElt
                  Resultant(f, g) : RngUPolXPadElt, RngUPolXPadElt -> RngAnyXPadElt
                  IsInertial(f) : RngUPolXPadElt -> BoolElt
                  IsWeaklyZero(f) : StrAnyXPadElt -> BoolElt
                  IsDefinitelyZero(f) : StrAnyXPadElt -> BoolElt
                  CoerceAndLift(S, x) : StrAnyXPad, Any -> StrAnyXPadElt

            Arithmetic
                  Example RngLoc_poly-ex (H49E36)

            Factorization and Roots
                  NewtonPolygon(f) : RngUPolXPadElt[RngXPad] -> NwtnPgon
                  Roots(f, R) : RngUPolElt, FldXPad -> SeqEnum
                  HasRoot(f) : RngUPolXPadElt[RngXPad] -> BoolElt, RngXPadElt
                  Factorization(f, R) : RngUPolXPadElt, FldXPad -> SeqEnum, RngXPadElt, SeqEnum
                  IsIrreducible(f) : RngUPolXPadElt[RngXPad] -> BoolElt, Rec
                  IsHenselLiftable(f, x) : RngUPolElt, FldXPadElt -> BoolElt, FldXPadElt
                  RamificationResidualPolynomial(f, face) : RngUPolElt[FldXPad], NwtnPgonFace -> RngUPolElt
                  RamificationResidualPolynomials(f) : RngUPolElt[FldXPad] -> SeqEnum, NwtnPgon
                  Example RngLoc_fact-ex (H49E37)

 
Bibliography

[Next][Prev] [Right] [____] [Up] [Index] [Root]


Version: V2.29 of Fri Nov 28 15:14:01 AEDT 2025