# $p$-Adic Rings and Their Extensions

- [Introduction](introduction.md)

- [Background](background.md)

- [Overview of the $p$-adics in Magma](overview.md)

  - [$p$-adic Rings](overview.md#p-adic-rings)

  - [$p$-adic Fields](overview.md#p-adic-fields)

  - [Free Precision Rings and Fields](overview.md#free-precision-rings-and-fields)

  - [Precision of Extensions](overview.md#precision-of-extensions)

- [Creation of Local Rings and Fields](creation.md)

  - [Creation Functions for the $p$-adics](creation.md#creation-functions-for-the-p-adics)

    - [`pAdicRing(p, k): RngIntElt, RngIntElt → RngPad`](creation.md#function-padicring-rngintelt-rngintelt)

    - [`pAdicField(p, k): RngIntElt, RngIntElt → FldPad`](creation.md#function-padicfield-rngintelt-rngintelt)

    - [`pAdicRing(p): RngIntElt → RngPad`](creation.md#function-padicring-rngintelt)

    - [`pAdicField(p): RngIntElt → FldPad`](creation.md#function-padicfield-rngintelt)

    - [`pAdicQuotientRing(p, k): RngIntElt, RngIntElt → RngPadRes`](creation.md#function-padicquotientring-rngintelt-rngintelt)

    - [`quo<L | x>: RngPad, RngPadElt → .`](creation.md#constructor-constructor-quo-rngpad-rngpadelt)

    - [`Example: El Creation Padic`](creation.md#example-ex-65d82a)

  - [Creation of Unramified Extensions](creation.md#creation-of-unramified-extensions)

    - [`UnramifiedExtension(L, n): RngPad, RngIntElt → RngPad`](creation.md#function-unramifiedextension-rngpad-rngintelt)

    - [`UnramifiedExtension(L, n): FldPad, RngIntElt → FldPad`](creation.md#function-unramifiedextension-fldpad-rngintelt)

    - [`UnramifiedExtension(L, n): RngPadRes, RngIntElt → RngPadResExt`](creation.md#function-unramifiedextension-rngpadres-rngintelt)

    - [`UnramifiedExtension(L, n): RngPadResExt, RngIntElt → RngPadResExt`](creation.md#function-unramifiedextension-rngpadresext-rngintelt)

    - [`ext<L | n>: RngPad, RngIntElt → RngPad`](creation.md#constructor-constructor-ext-rngpad-rngintelt-rngpad)

    - [`ext<L | n>: FldPad, RngIntElt → FldPad`](creation.md#constructor-constructor-ext-fldpad-rngintelt-fldpad)

    - [`ext<L | n>: RngPadRes, RngIntElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadres-rngintelt-rngpadresext)

    - [`ext<L | n>: RngPadResExt, RngIntElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadresext-rngintelt-rngpadresext)

    - [`UnramifiedQuotientRing(K, k): FldFin, RngIntElt → Rng`](creation.md#function-unramifiedquotientring-fldfin-rngintelt)

    - [`UnramifiedExtension(L, f): RngPad, RngUPolElt → RngPad`](creation.md#function-unramifiedextension-rngpad-rngupolelt)

    - [`UnramifiedExtension(L, f): FldPad, RngUPolElt → FldPad`](creation.md#function-unramifiedextension-fldpad-rngupolelt)

    - [`UnramifiedExtension(L, f): RngPadRes, RngUPolElt → RngPadResExt`](creation.md#function-unramifiedextension-rngpadres-rngupolelt)

    - [`UnramifiedExtension(L, f): RngPadResExt, RngUPolElt → RngPadResExt`](creation.md#function-unramifiedextension-rngpadresext-rngupolelt)

    - [`ext<L | f>: RngPad, RngUPolElt → RngPad`](creation.md#constructor-constructor-ext-rngpad-rngupolelt-rngpad)

    - [`ext<L | f>: FldPad, RngUPolElt → FldPad`](creation.md#constructor-constructor-ext-fldpad-rngupolelt-fldpad)

    - [`ext<L | f>: RngPadRes, RngUPolElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadres-rngupolelt-rngpadresext)

    - [`ext<L | f>: RngPadResExt, RngUPolElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadresext-rngupolelt-rngpadresext)

    - [`IsInertial(f): RngUPolElt → BoolElt`](creation.md#function-isinertial-rngupolelt)

    - [`HasGNB(R, n, t): RngPad, RngIntElt, RngIntElt → BoolElt`](creation.md#function-has-gnb-func)

    - [`HasGNB(L, n, t): FldPad, RngIntElt, RngIntElt → BoolElt`](creation.md#function-hasgnb-fldpad-rngintelt-rngintelt)

    - [`HasGNB(R, n, t): RngPadRes, RngIntElt, RngIntElt → BoolElt`](creation.md#function-hasgnb-rngpadres-rngintelt-rngintelt)

    - [`HasGNB(R, n, t): RngPadResExt, RngIntElt, RngIntElt → BoolElt`](creation.md#function-hasgnb-rngpadresext-rngintelt-rngintelt)

    - [`CyclotomicUnramifiedExtension(R, f): FldPad, RngIntElt → FldPad`](creation.md#function-cyclotomicunramifiedextension-fldpad-rngintelt)

    - [`CyclotomicUnramifiedExtension(R, f): RngPad, RngIntElt → RngPad`](creation.md#function-cyclotomicunramifiedextension-rngpad-rngintelt)

    - [`CyclotomicUnramifiedExtension(R, f): RngPadRes, RngIntElt → RngPadRes`](creation.md#function-cyclotomicunramifiedextension-rngpadres-rngintelt)

    - [`CyclotomicUnramifiedExtension(R, f): RngPadResExt, RngIntElt → RngPadResExt`](creation.md#function-cyclotomicunramifiedextension-rngpadresext-rngintelt)

    - [`Example: El Creation Unram`](creation.md#example-ex-f8037d)

  - [Creation of Totally Ramified Extensions](creation.md#creation-of-totally-ramified-extensions)

    - [`TotallyRamifiedExtension(L, f): RngPad, RngUPolElt → RngPad`](creation.md#function-totallyramifiedextension-rngpad-rngupolelt)

    - [`TotallyRamifiedExtension(L, f): FldPad, RngUPolElt → FldPad`](creation.md#function-totallyramifiedextension-fldpad-rngupolelt)

    - [`TotallyRamifiedExtension(L, f): RngPadRes, RngUPolElt → RngPadResExt`](creation.md#function-totallyramifiedextension-rngpadres-rngupolelt)

    - [`TotallyRamifiedExtension(L, f): RngPadResExt, RngUPolElt → RngPadResExt`](creation.md#function-totallyramifiedextension-rngpadresext-rngupolelt)

    - [`ext<L | f>: RngPad, RngUPolElt → RngPad`](creation.md#constructor-constructor-ext-rngpad-rngupolelt-rngpad-2)

    - [`ext<L | f>: FldPad, RngUPolElt → FldPad`](creation.md#constructor-constructor-ext-fldpad-rngupolelt-fldpad-2)

    - [`ext<L | f>: RngPadRes, RngUPolElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadres-rngupolelt-rngpadresext-2)

    - [`ext<L | f>: RngPadResExt, RngUPolElt → RngPadResExt`](creation.md#constructor-constructor-ext-rngpadresext-rngupolelt-rngpadresext-2)

    - [`IsEisenstein(f): RngUPolElt → BoolElt`](creation.md#function-iseisenstein-rngupolelt)

    - [`Example: El Creation Ram`](creation.md#example-ex-11c692)

  - [Creation of Unbounded Precision Extensions](creation.md#creation-of-unbounded-precision-extensions)

    - [`ext<L | m>: RngPad, Map → RngPad`](creation.md#constructor-constructor-ext-rngpad-map-rngpad)

    - [`ext<L | m>: FldPad, Map → RngPad`](creation.md#constructor-constructor-ext-fldpad-map-rngpad)

    - [`Example: El Creation Map`](creation.md#example-ex-2d52e1)

  - [Creation of Related Rings](creation.md#creation-of-related-rings)

    - [`IntegerRing(F): FldPad → RngPad`](creation.md#function-integerring-fldpad)

    - [`Integers(F): FldPad → RngPad`](creation.md#function-integers-fldpad)

    - [`RingOfIntegers(F): FldPad → RngPad`](creation.md#function-ringofintegers-fldpad)

    - [`RingOfIntegers(R): RngPad → RngPad`](creation.md#function-ringofintegers-rngpad)

    - [`FieldOfFractions(R): RngPad → FldPad`](creation.md#function-fieldoffractions-rngpad)

    - [`SplittingField(f, R): RngUPolElt[RngInt], RngPad → RngPad`](creation.md#function-splittingfield-rngupolelt-rngint-rngpad)

    - [`AbsoluteTotallyRamifiedExtension(R): RngPad → RngPad, Map`](creation.md#function-absolutetotallyramifiedextension-rngpad)

  - [Other Elementary Constructions](creation.md#other-elementary-constructions)

    - [`Composite(R, S): RngPad, RngPad → RngPad`](creation.md#function-composite-rngpad-rngpad)

  - [Attributes of Local Rings and Fields](creation.md#attributes-of-local-rings-and-fields)

    - [`L`DefaultPrecision: RngPad → RngIntElt`](creation.md#attribute-attribute-l-defaultprecision-rngpad-rngintelt)

    - [`L`SeriesPrinting: RngPad → BoolElt`](creation.md#attribute-attribute-l-seriesprinting-rngpad-boolelt)

    - [`L`SeriesPrinting: FldPad → BoolElt`](creation.md#attribute-attribute-l-seriesprinting-fldpad-boolelt)

    - [`L`SeriesPrinting: RngPadRes → BoolElt`](creation.md#attribute-attribute-l-seriesprinting-rngpadres-boolelt)

    - [`L`SeriesPrinting: RngPadResExt → BoolElt`](creation.md#attribute-attribute-l-seriesprinting-rngpadresext-boolelt)

    - [`Example: Series Printing`](creation.md#example-ex-29e3f4)

- [Elementary Invariants](invariants.md)

  - [`Prime(L): RngPad → RngIntElt`](invariants.md#function-prime-rngpad)

  - [`Prime(L): FldPad → RngIntElt`](invariants.md#function-prime-fldpad)

  - [`Prime(L): RngPadRes → RngIntElt`](invariants.md#function-prime-rngpadres)

  - [`Prime(L): RngPadResExt → RngIntElt`](invariants.md#function-prime-rngpadresext)

  - [`InertiaDegree(L): RngPad → RngIntElt`](invariants.md#function-inertiadegree-rngpad)

  - [`InertiaDegree(L): FldPad → RngIntElt`](invariants.md#function-inertiadegree-fldpad)

  - [`InertiaDegree(L): RngPadRes → RngIntElt`](invariants.md#function-inertiadegree-rngpadres)

  - [`InertiaDegree(L): RngPadResExt → RngIntElt`](invariants.md#function-inertiadegree-rngpadresext)

  - [`InertiaDegree(K, L): RngPad, RngPad → RngIntElt`](invariants.md#function-inertiadegree-rngpad-rngpad)

  - [`InertiaDegree(K, L): FldPad, FldPad → RngIntElt`](invariants.md#function-inertiadegree-fldpad-fldpad)

  - [`InertiaDegree(K, L): RngPadRes, RngPadRes → RngIntElt`](invariants.md#function-inertiadegree-rngpadres-rngpadres)

  - [`InertiaDegree(K, L): RngPadResExt, RngPadResExt → RngIntElt`](invariants.md#function-inertiadegree-rngpadresext-rngpadresext)

  - [`AbsoluteInertiaDegree(L): RngPad → RngIntElt`](invariants.md#function-absoluteinertiadegree-rngpad)

  - [`AbsoluteInertiaDegree(L): FldPad → RngIntElt`](invariants.md#function-absoluteinertiadegree-fldpad)

  - [`AbsoluteInertiaDegree(L): RngPadRes → RngIntElt`](invariants.md#function-absoluteinertiadegree-rngpadres)

  - [`AbsoluteInertiaDegree(L): RngPadResExt → RngIntElt`](invariants.md#function-absoluteinertiadegree-rngpadresext)

  - [`AbsoluteInertiaIndex(L): RngPad → RngIntElt`](invariants.md#function-absoluteinertiaindex-rngpad)

  - [`AbsoluteInertiaIndex(L): FldPad → RngIntElt`](invariants.md#function-absoluteinertiaindex-fldpad)

  - [`AbsoluteInertiaIndex(L): RngPadRes → RngIntElt`](invariants.md#function-absoluteinertiaindex-rngpadres)

  - [`AbsoluteInertiaIndex(L): RngPadResExt → RngIntElt`](invariants.md#function-absoluteinertiaindex-rngpadresext)

  - [`RamificationDegree(L): RngPad → RngIntElt`](invariants.md#function-ramificationdegree-rngpad)

  - [`RamificationDegree(L): FldPad → RngIntElt`](invariants.md#function-ramificationdegree-fldpad)

  - [`RamificationDegree(L): RngPadRes → RngIntElt`](invariants.md#function-ramificationdegree-rngpadres)

  - [`RamificationDegree(L): RngPadResExt → RngIntElt`](invariants.md#function-ramificationdegree-rngpadresext)

  - [`RamificationIndex(L): RngPad → RngIntElt`](invariants.md#function-ramificationindex-rngpad)

  - [`RamificationIndex(L): FldPad → RngIntElt`](invariants.md#function-ramificationindex-fldpad)

  - [`RamificationIndex(L): RngPadRes → RngIntElt`](invariants.md#function-ramificationindex-rngpadres)

  - [`RamificationIndex(L): RngPadResExt → RngIntElt`](invariants.md#function-ramificationindex-rngpadresext)

  - [`RamificationDegree(K, L): RngPad, RngPad → RngIntElt`](invariants.md#function-ramificationdegree-rngpad-rngpad)

  - [`RamificationDegree(K, L): FldPad, FldPad → RngIntElt`](invariants.md#function-ramificationdegree-fldpad-fldpad)

  - [`RamificationDegree(K, L): RngPadRes, RngPadRes → RngIntElt`](invariants.md#function-ramificationdegree-rngpadres-rngpadres)

  - [`RamificationDegree(K, L): RngPadResExt, RngPadResExt → RngIntElt`](invariants.md#function-ramificationdegree-rngpadresext-rngpadresext)

  - [`RamificationIndex(K, L): RngPad, RngPad → RngIntElt`](invariants.md#function-ramificationindex-rngpad-rngpad)

  - [`RamificationIndex(K, L): FldPad, FldPad → RngIntElt`](invariants.md#function-ramificationindex-fldpad-fldpad)

  - [`RamificationIndex(K, L): RngPadRes, RngPadRes → RngIntElt`](invariants.md#function-ramificationindex-rngpadres-rngpadres)

  - [`RamificationIndex(K, L): RngPadResExt, RngPadResExt → RngIntElt`](invariants.md#function-ramificationindex-rngpadresext-rngpadresext)

  - [`AbsoluteRamificationDegree(L): RngPad → RngIntElt`](invariants.md#function-absoluteramificationdegree-rngpad)

  - [`AbsoluteRamificationDegree(L): FldPad → RngIntElt`](invariants.md#function-absoluteramificationdegree-fldpad)

  - [`AbsoluteRamificationDegree(L): RngPadRes → RngIntElt`](invariants.md#function-absoluteramificationdegree-rngpadres)

  - [`AbsoluteRamificationDegree(L): RngPadResExt → RngIntElt`](invariants.md#function-absoluteramificationdegree-rngpadresext)

  - [`AbsoluteRamificationIndex(L): RngPad → RngIntElt`](invariants.md#function-absoluteramificationindex-rngpad)

  - [`AbsoluteRamificationIndex(L): FldPad → RngIntElt`](invariants.md#function-absoluteramificationindex-fldpad)

  - [`AbsoluteRamificationIndex(L): RngPadRes → RngIntElt`](invariants.md#function-absoluteramificationindex-rngpadres)

  - [`AbsoluteRamificationIndex(L): RngPadResExt → RngIntElt`](invariants.md#function-absoluteramificationindex-rngpadresext)

  - [`AbsoluteDegree(L): RngPad → RngIntElt`](invariants.md#function-absolutedegree-rngpad)

  - [`Degree(L): RngPad → RngIntElt`](invariants.md#function-degree-rngpad)

  - [`Degree(L): FldPad → RngIntElt`](invariants.md#function-degree-fldpad)

  - [`Degree(L): RngPadRes → RngIntElt`](invariants.md#function-degree-rngpadres)

  - [`Degree(L): RngPadResExt → RngIntElt`](invariants.md#function-degree-rngpadresext)

  - [`Degree(K, L): RngPad, RngPad → RngIntElt`](invariants.md#function-degree-rngpad-rngpad)

  - [`Degree(K, L): FldPad, FldPad → RngIntElt`](invariants.md#function-degree-fldpad-fldpad)

  - [`Degree(K, L): RngPadRes, RngPadRes → RngIntElt`](invariants.md#function-degree-rngpadres-rngpadres)

  - [`Degree(K, L): RngPadResExt, RngPadResExt → RngIntElt`](invariants.md#function-degree-rngpadresext-rngpadresext)

  - [`DefiningPolynomial(L): RngPad → RngUPolElt`](invariants.md#function-definingpolynomial-rngpad)

  - [`DefiningPolynomial(L): FldPad → RngUPolElt`](invariants.md#function-definingpolynomial-fldpad)

  - [`DefiningPolynomial(L): RngPadRes → RngUPolElt`](invariants.md#function-definingpolynomial-rngpadres)

  - [`DefiningPolynomial(L): RngPadResExt → RngUPolElt`](invariants.md#function-definingpolynomial-rngpadresext)

  - [`DefiningPolynomial(K, L): RngPad, RngPad → RngUPolElt`](invariants.md#function-definingpolynomial-rngpad-rngpad)

  - [`DefiningPolynomial(K, L): FldPad, FldPad → RngUPolElt`](invariants.md#function-definingpolynomial-fldpad-fldpad)

  - [`DefiningPolynomial(K, L): RngPadRes, RngPadRes → RngUPolElt`](invariants.md#function-definingpolynomial-rngpadres-rngpadres)

  - [`DefiningPolynomial(K, L): RngPadResExt, RngPadRes → RngUPolElt`](invariants.md#function-definingpolynomial-rngpadresext-rngpadres)

  - [`DefiningPolynomial(K, L): RngPadResExt, RngPadResExt → RngUPolElt`](invariants.md#function-definingpolynomial-rngpadresext-rngpadresext)

  - [`DefiningMap(L): RngPad → Map`](invariants.md#function-definingmap-rngpad)

  - [`DefiningMap(L): FldPad → Map`](invariants.md#function-definingmap-fldpad)

  - [`HasDefiningMap(L): RngPad → BoolElt, Map`](invariants.md#function-hasdefiningmap-rngpad)

  - [`DefiningMap(L): FldPad → BoolElt, Map`](invariants.md#function-definingmap-fldpad-2)

  - [`PrimeRing(L): RngPad → RngPad`](invariants.md#function-primering-rngpad)

  - [`PrimeRing(L): RngPadRes → RngPadRes`](invariants.md#function-primering-rngpadres)

  - [`PrimeRing(L): RngPadResExt → RngPadRes`](invariants.md#function-primering-rngpadresext)

  - [`PrimeField(L): FldPad → FldPad`](invariants.md#function-primefield-fldpad)

  - [`pAdicRing(L): RngPad → RngPad`](invariants.md#function-padicring-rngpad)

  - [`pAdicRing(L): RngPadRes → RngPadRes`](invariants.md#function-padicring-rngpadres)

  - [`pAdicRing(L): RngPadResExt → RngPadRes`](invariants.md#function-padicring-rngpadresext)

  - [`pAdicField(L): FldPad → FldPad`](invariants.md#function-padicfield-fldpad)

  - [`BaseRing(L): RngPad → RngPad`](invariants.md#function-basering-rngpad)

  - [`BaseRing(L): RngPadRes → RngPadRes`](invariants.md#function-basering-rngpadres)

  - [`BaseRing(L): RngPadResExt → Rng`](invariants.md#function-basering-rngpadresext)

  - [`CoefficientRing(L): RngPad → RngPad`](invariants.md#function-coefficientring-rngpad)

  - [`CoefficientRing(L): RngPadRes → RngPadRes`](invariants.md#function-coefficientring-rngpadres)

  - [`CoefficientRing(L): RngPadResExt → Rng`](invariants.md#function-coefficientring-rngpadresext)

  - [`BaseField(L): FldPad → FldPad`](invariants.md#function-basefield-fldpad)

  - [`CoefficientField(L): FldPad → FldPad`](invariants.md#function-coefficientfield-fldpad)

  - [`BaseRing(L): FldPad → FldPad`](invariants.md#function-basering-fldpad)

  - [`ResidueClassField(L): RngPad → FldFin, Map`](invariants.md#function-residueclassfield-rngpad)

  - [`ResidueClassField(L): RngPadRes → FldFin, Map`](invariants.md#function-residueclassfield-rngpadres)

  - [`ResidueClassField(L): RngPadResExt → FldFin, Map`](invariants.md#function-residueclassfield-rngpadresext)

  - [`ResidueSystem(R): RngPad → [RngPadElt]`](invariants.md#function-residuesystem-rngpad)

  - [`ResidueSystem(R): RngPadRes → [RngPadEltRes]`](invariants.md#function-residuesystem-rngpadres)

  - [`ResidueSystem(R): RngPadResExt → [RngPadEltResExt]`](invariants.md#function-residuesystem-rngpadresext)

  - [`ResidueSystem(R): FldPad → [FldPadElt]`](invariants.md#function-residuesystem-fldpad)

  - [`UniformizingElement(L): RngPad → RngPadElt`](invariants.md#function-uniformizingelement-rngpad)

  - [`UniformizingElement(L): RngPadRes → RngPadResElt`](invariants.md#function-uniformizingelement-rngpadres)

  - [`UniformizingElement(L): RngPadResExt → RngPadResExtElt`](invariants.md#function-uniformizingelement-rngpadresext)

  - [`UniformizingElement(L): FldPad → FldPadElt`](invariants.md#function-uniformizingelement-fldpad)

  - [`L . 1: RngPad → RngPadElt`](invariants.md#operation-operation-rngpad-rngpadelt)

  - [`L . 1: RngPadRes → RngPadResElt`](invariants.md#operation-operation-rngpadres-rngpadreselt)

  - [`L . 1: RngPadResExt → RngPadResExtElt`](invariants.md#operation-operation-rngpadresext-rngpadresextelt)

  - [`L . 1: FldPad → FldPadElt`](invariants.md#operation-operation-fldpad-fldpadelt)

  - [`Precision(L): RngPad → RngIntElt`](invariants.md#function-precision-rngpad)

  - [`Precision(L): RngPadRes → RngIntElt`](invariants.md#function-precision-rngpadres)

  - [`Precision(L): RngPadResExt → RngIntElt`](invariants.md#function-precision-rngpadresext)

  - [`Precision(L): FldPad → RngIntElt`](invariants.md#function-precision-fldpad)

  - [`HasPRoot(R): RngPad → BoolElt`](invariants.md#function-hasproot-rngpad)

  - [`HasRootOfUnity(L, n): RngPad, RngIntElt → BoolElt`](invariants.md#function-hasrootofunity-rngpad-rngintelt)

  - [`Discriminant(R): RngPad → RngPadElt`](invariants.md#function-discriminant-rngpad)

  - [`Discriminant(K, k): RngPad, RngPad → RngPadElt`](invariants.md#function-discriminant-rngpad-rngpad)

  - [`AdditiveGroup(R): RngPadRes → GrpAb, Map`](invariants.md#function-additivegroup-rngpadres)

  - [`Example: elinvar`](invariants.md#example-ex-899921)

  - [`AbsoluteRootNumber(K): FldPad → FldCycElt`](invariants.md#function-absoluterootnumber-fldpad)

  - [`RootNumber(K): FldPad → FldCycElt`](invariants.md#function-rootnumber-fldpad)

  - [`Example: Padic Rootno Ex`](invariants.md#example-ex-f6c8be)

- [Operations on Structures](structure-operations.md)

  - [`AssignNames(~L, S): RngPad, SeqEnum`](structure-operations.md#function-assignnames-rngpad-seqenum-ref)

  - [`AssignNames(~L, S): RngPadResExt, SeqEnum`](structure-operations.md#function-assignnames-rngpadresext-seqenum-ref)

  - [`AssignNames(~L, S): FldPad, SeqEnum`](structure-operations.md#function-assignnames-fldpad-seqenum-ref)

  - [`Characteristic(L): RngPad → RngIntElt`](structure-operations.md#function-characteristic-rngpad)

  - [`Characteristic(L): RngPadRes → RngIntElt`](structure-operations.md#function-characteristic-rngpadres)

  - [`Characteristic(L): RngPadResExt → RngIntElt`](structure-operations.md#function-characteristic-rngpadresext)

  - [`Characteristic(L): FldPad → RngIntElt`](structure-operations.md#function-characteristic-fldpad)

  - [`# L: RngPad → RngIntElt`](structure-operations.md#operation-operation-rngpad-rngintelt)

  - [`Name(L, k): RngPad, RngIntElt → RngPadElt`](structure-operations.md#function-name-rngpad-rngintelt)

  - [`Name(L, k): RngPadRes, RngIntElt → RngPadResElt`](structure-operations.md#function-name-rngpadres-rngintelt)

  - [`Name(L, k): RngPadResExt, RngIntElt → RngPadResExtElt`](structure-operations.md#function-name-rngpadresext-rngintelt)

  - [`Name(L, k): FldPad, RngIntElt → FldPadElt`](structure-operations.md#function-name-fldpad-rngintelt)

  - [`ChangePrecision(L, k): RngPad, Any → RngPad`](structure-operations.md#function-changeprecision-rngpad-any)

  - [`ChangePrecision(L, k): RngPad, Infty → RngPad`](structure-operations.md#function-changeprecision-rngpad-infty)

  - [`ChangePrecision(~L, k): RngPad, Infty → RngPad`](structure-operations.md#function-changeprecision-rngpad-infty-ref)

  - [`ChangePrecision(L, k): RngPad, RngIntElt → RngPad`](structure-operations.md#function-changeprecision-rngpad-rngintelt)

  - [`ChangePrecision(~L, k): RngPad, RngIntElt → RngPad`](structure-operations.md#function-changeprecision-rngpad-rngintelt-ref)

  - [`ChangePrecision(L, k): RngPadRes, RngIntElt → RngPadRes`](structure-operations.md#function-changeprecision-rngpadres-rngintelt)

  - [`ChangePrecision(~L, k): RngPadRes, RngIntElt → RngPadRes`](structure-operations.md#function-changeprecision-rngpadres-rngintelt-ref)

  - [`ChangePrecision(L, k): RngPadResExt, RngIntElt → RngPadResExt`](structure-operations.md#function-changeprecision-rngpadresext-rngintelt)

  - [`ChangePrecision(~L, k): RngPadResExt, RngIntElt → RngPadResExt`](structure-operations.md#function-changeprecision-rngpadresext-rngintelt-ref)

  - [`ChangePrecision(L, k): FldPad, RngIntElt → FldPad`](structure-operations.md#function-changeprecision-fldpad-rngintelt)

  - [`ChangePrecision(~L, k): FldPad, RngIntElt → FldPad`](structure-operations.md#function-changeprecision-fldpad-rngintelt-ref)

  - [`ChangePrecision(L, k): FldPad, Any → FldPad`](structure-operations.md#function-changeprecision-fldpad-any)

  - [`ChangePrecision(L, k): FldPad, Infty → FldPad`](structure-operations.md#function-changeprecision-fldpad-infty)

  - [`ChangePrecision(~L, k): FldPad, Infty → FldPad`](structure-operations.md#function-changeprecision-fldpad-infty-ref)

  - [`L eq K: RngPad, RngPad → BoolElt`](structure-operations.md#operation-op-eq-rngpad-rngpad)

  - [`L eq K: RngPadRes, RngPadRes → BoolElt`](structure-operations.md#operation-op-eq-rngpadres-rngpadres)

  - [`L eq K: RngPadResExt, RngPadResExt → BoolElt`](structure-operations.md#operation-op-eq-rngpadresext-rngpadresext)

  - [`L eq K: FldPad, FldPad → BoolElt`](structure-operations.md#operation-op-eq-fldpad-fldpad)

  - [`L ne K: RngPad, RngPad → BoolElt`](structure-operations.md#operation-op-ne-rngpad-rngpad)

  - [`L ne K: RngPadRes, RngPadRes → BoolElt`](structure-operations.md#operation-op-ne-rngpadres-rngpadres)

  - [`L ne K: RngPadResExt, RngPadResExt → BoolElt`](structure-operations.md#operation-op-ne-rngpadresext-rngpadresext)

  - [`L ne K: FldPad, FldPad → BoolElt`](structure-operations.md#operation-op-ne-fldpad-fldpad)

  - [`Example: strop`](structure-operations.md#example-ex-23c278)

  - [Ramification Predicates](structure-operations.md#ramification-predicates)

    - [`IsRamified(R): RngPad → BoolElt`](structure-operations.md#function-isramified-rngpad)

    - [`IsRamified(R): FldPad → BoolElt`](structure-operations.md#function-isramified-fldpad)

    - [`IsUnramified(R): RngPad → BoolElt`](structure-operations.md#function-isunramified-rngpad)

    - [`IsUnramified(R): FldPad → BoolElt`](structure-operations.md#function-isunramified-fldpad)

    - [`IsTotallyRamified(R): RngPad → BoolElt`](structure-operations.md#function-istotallyramified-rngpad)

    - [`IsTotallyRamified(R): FldPad → BoolElt`](structure-operations.md#function-istotallyramified-fldpad)

    - [`IsTamelyRamified(R): RngPad → BoolElt`](structure-operations.md#function-istamelyramified-rngpad)

    - [`IsTamelyRamified(R): FldPad → BoolElt`](structure-operations.md#function-istamelyramified-fldpad)

    - [`IsWildlyRamified(R): RngPad → BoolElt`](structure-operations.md#function-iswildlyramified-rngpad)

    - [`IsWildlyRamified(R): FldPad → BoolElt`](structure-operations.md#function-iswildlyramified-fldpad)

- [Element Constructions and Conversions](consconv-element.md)

  - [Constructions](consconv-element.md#constructions)

    - [`Zero(L): RngPad → RngPadElt`](consconv-element.md#function-zero-rngpad)

    - [`Zero(L): RngPadRes → RngPadResElt`](consconv-element.md#function-zero-rngpadres)

    - [`Zero(L): RngPadResExt → RngPadResExtElt`](consconv-element.md#function-zero-rngpadresext)

    - [`Zero(L): FldPad → FldPadElt`](consconv-element.md#function-zero-fldpad)

    - [`One(L): RngPad → RngPadElt`](consconv-element.md#function-one-rngpad)

    - [`One(L): RngPadRes → RngPadResElt`](consconv-element.md#function-one-rngpadres)

    - [`One(L): RngPadResExt → RngPadResExtElt`](consconv-element.md#function-one-rngpadresext)

    - [`One(L): FldPad → FldPadElt`](consconv-element.md#function-one-fldpad)

    - [`Random(L): RngPad → RngPadElt`](consconv-element.md#function-random-rngpad)

    - [`Random(L): RngPadRes → RngPadResElt`](consconv-element.md#function-random-rngpadres)

    - [`Random(L): RngPadResExt → RngPadResExtElt`](consconv-element.md#function-random-rngpadresext)

    - [`Representative(L): RngPad → RngPadElt`](consconv-element.md#function-representative-rngpad)

    - [`Representative(L): RngPadRes → RngPadResElt`](consconv-element.md#function-representative-rngpadres)

    - [`Representative(L): RngPadResExt → RngPadResExtElt`](consconv-element.md#function-representative-rngpadresext)

    - [`Representative(L): FldPad → FldPadElt`](consconv-element.md#function-representative-fldpad)

    - [`elt<L | u>: RngPad, RngElt → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngelt-rngpadelt)

    - [`elt<L | u>: RngPad, [RngElt] → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngelt-rngpadelt-2)

    - [`L ! u: RngPad, RngElt → RngPadElt`](consconv-element.md#operation-op-rngpad-rngelt)

    - [`L ! u: RngPad, [RngElt] → RngPadElt`](consconv-element.md#operation-op-rngpad-rngelt-2)

    - [`elt<L | u>: FldPad, RngElt → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngelt-fldpadelt)

    - [`elt<L | u>: FldPad, [RngElt] → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngelt-fldpadelt-2)

    - [`L ! u: FldPad, RngElt → FldPadElt`](consconv-element.md#operation-op-fldpad-rngelt)

    - [`L ! u: FldPad, [RngElt] → FldPadElt`](consconv-element.md#operation-op-fldpad-rngelt-2)

    - [`elt<L | u, r>: RngPad, RngElt, RngIntElt → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngelt-rngintelt-rngpadelt)

    - [`elt<L | u, r>: RngPad, [RngElt], RngIntElt → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngelt-rngintelt-rngpadelt-2)

    - [`elt<L | u, r>: FldPad, RngElt, RngIntElt → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngelt-rngintelt-fldpadelt)

    - [`elt<L | u, r>: FldPad, [RngElt], RngIntElt → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngelt-rngintelt-fldpadelt-2)

    - [`elt<L | v, u, r>: RngPad, RngIntElt, RngElt, RngIntElt → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngintelt-rngelt-rngintelt-rngpadelt)

    - [`elt<L | v, u, r>: RngPad, RngIntElt, [RngElt], RngIntElt → RngPadElt`](consconv-element.md#constructor-constructor-elt-rngpad-rngintelt-rngelt-rngintelt-rngpadelt-2)

    - [`elt<L | v, u, r>: FldPad, RngIntElt, RngElt, RngIntElt → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngintelt-rngelt-rngintelt-fldpadelt)

    - [`elt<L | v, u, r>: FldPad, RngIntElt, [RngElt], RngIntElt → FldPadElt`](consconv-element.md#constructor-constructor-elt-fldpad-rngintelt-rngelt-rngintelt-fldpadelt-2)

    - [`BigO(x): RngPadElt → RngPadElt`](consconv-element.md#function-bigo-rngpadelt)

    - [`BigO(x): FldPadElt → FldPadElt`](consconv-element.md#function-bigo-fldpadelt)

    - [`O(x): RngPadElt → RngPadElt`](consconv-element.md#function-o-rngpadelt)

    - [`O(x): FldPadElt → FldPadElt`](consconv-element.md#function-o-fldpadelt)

    - [`UniformizingElement(L): RngPad → RngPadElt`](consconv-element.md#function-uniformizingelement-rngpad-2)

    - [`UniformizingElement(L): RngPadRes → RndPadResElt`](consconv-element.md#function-uniformizingelement-rngpadres-2)

    - [`UniformizingElement(L): RngPadResExt → RndPadResExtElt`](consconv-element.md#function-uniformizingelement-rngpadresext-2)

    - [`UniformizingElement(L): FldPad → FldPadElt`](consconv-element.md#function-uniformizingelement-fldpad-2)

    - [`Example: eltcons`](consconv-element.md#example-ex-9e5bd3)

    - [`Example: Eltcons Seq Weird`](consconv-element.md#example-ex-b0924e)

  - [Element Decomposers](consconv-element.md#element-decomposers)

    - [`ElementToSequence(x): RngPadElt → [ RngElt ]`](consconv-element.md#function-elementtosequence-rngpadelt)

    - [`ElementToSequence(x): RngPadResElt → [ RngElt ]`](consconv-element.md#function-elementtosequence-rngpadreselt)

    - [`ElementToSequence(x): RngPadResExtElt → [ RngElt ]`](consconv-element.md#function-elementtosequence-rngpadresextelt)

    - [`ElementToSequence(x): FldPadElt → [ RngElt ]`](consconv-element.md#function-elementtosequence-fldpadelt)

    - [`Eltseq(x): RngPadElt → [ RngElt ]`](consconv-element.md#function-eltseq-rngpadelt)

    - [`Eltseq(x): RngPadResElt → [ RngElt ]`](consconv-element.md#function-eltseq-rngpadreselt)

    - [`Eltseq(x): RngPadResExtElt → [ RngElt ]`](consconv-element.md#function-eltseq-rngpadresextelt)

    - [`Eltseq(x): FldPadElt → [ RngElt ]`](consconv-element.md#function-eltseq-fldpadelt)

    - [`Coefficients(x): RngPadElt → [ RngElt ]`](consconv-element.md#function-coefficients-rngpadelt)

    - [`Coefficients(x): RngPadResElt → [ RngElt ]`](consconv-element.md#function-coefficients-rngpadreselt)

    - [`Coefficients(x): RngPadResExtElt → [ RngElt ]`](consconv-element.md#function-coefficients-rngpadresextelt)

    - [`Coefficients(x): FldPadElt → [ RngElt ]`](consconv-element.md#function-coefficients-fldpadelt)

    - [`Coefficient(x, i): RngPadElt, RngIntElt → RngPadElt`](consconv-element.md#function-coefficient-rngpadelt-rngintelt)

    - [`Coefficient(x, i): RngPadResElt, RngIntElt → RngPadResElt`](consconv-element.md#function-coefficient-rngpadreselt-rngintelt)

    - [`Coefficient(x, i): RngPadResExtElt, RngIntElt → RngElt`](consconv-element.md#function-coefficient-rngpadresextelt-rngintelt)

    - [`Coefficient(x, i): FldPadElt, RngIntElt → FldPadElt`](consconv-element.md#function-coefficient-fldpadelt-rngintelt)

    - [`Example: Gal Desc`](consconv-element.md#example-ex-716c79)

- [Operations on Elements](operation-element.md)

  - [Arithmetic](operation-element.md#arithmetic)

    - [`- x: RngPadElt → RngPadElt`](operation-element.md#operation-operation-rngpadelt-rngpadelt)

    - [`- x: RngPadResElt → RngPadResElt`](operation-element.md#operation-operation-rngpadreselt-rngpadreselt)

    - [`- x: RngPadResExtElt → RngPadResExtElt`](operation-element.md#operation-operation-rngpadresextelt-rngpadresextelt)

    - [`- x: FldPadElt → FldPadElt`](operation-element.md#operation-operation-fldpadelt-fldpadelt)

    - [`x + y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-op-plus-rngpadelt-rngpadelt)

    - [`x + y: RngPadResElt, RngPadResElt → RngPadResElt`](operation-element.md#operation-op-plus-rngpadreselt-rngpadreselt)

    - [`x + y: RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](operation-element.md#operation-op-plus-rngpadresextelt-rngpadresextelt)

    - [`x + y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-op-plus-fldpadelt-fldpadelt)

    - [`x - y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-op-minus-rngpadelt-rngpadelt)

    - [`x - y: RngPadResElt, RngPadResElt → RngPadResElt`](operation-element.md#operation-op-minus-rngpadreselt-rngpadreselt)

    - [`x - y: RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](operation-element.md#operation-op-minus-rngpadresextelt-rngpadresextelt)

    - [`x - y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-op-minus-fldpadelt-fldpadelt)

    - [`x * y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-op-times-rngpadelt-rngpadelt)

    - [`x * y: RngPadResElt, RngPadResElt → RngPadResElt`](operation-element.md#operation-op-times-rngpadreselt-rngpadreselt)

    - [`x * y: RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](operation-element.md#operation-op-times-rngpadresextelt-rngpadresextelt)

    - [`x * y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-op-times-fldpadelt-fldpadelt)

    - [`x ^ k: RngPadElt, RngIntElt → RngPadElt`](operation-element.md#operation-op-pow-rngpadelt-rngintelt)

    - [`x ^ k: RngPadResElt, RngIntElt → RngPadResElt`](operation-element.md#operation-op-pow-rngpadreselt-rngintelt)

    - [`x ^ k: RngPadResExtElt, RngIntElt → RngPadResExtElt`](operation-element.md#operation-op-pow-rngpadresextelt-rngintelt)

    - [`x ^ k: FldPadElt, RngIntElt → FldPadElt`](operation-element.md#operation-op-pow-fldpadelt-rngintelt)

    - [`x div y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-operation-div-rngpadelt-rngpadelt-rngpadelt)

    - [`x div y: RngPadResElt, RngPadResElt → RngPadResElt`](operation-element.md#operation-operation-div-rngpadreselt-rngpadreselt-rngpadreselt)

    - [`x div y: RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](operation-element.md#operation-operation-div-rngpadresextelt-rngpadresextelt-rngpadresextelt)

    - [`x div y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-operation-div-fldpadelt-fldpadelt-fldpadelt)

    - [`x div:= y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-operation-div-rngpadelt-rngpadelt-rngpadelt-2)

    - [`x div:= y: RngPadResElt, RngPadResElt → RngPadResElt`](operation-element.md#operation-operation-div-rngpadreselt-rngpadreselt-rngpadreselt-2)

    - [`x div:= y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-operation-div-rngpadelt-rngpadelt-rngpadelt-3)

    - [`x div:= y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-operation-div-fldpadelt-fldpadelt-fldpadelt-2)

    - [`x / y: RngPadElt, RngPadElt → RngPadElt`](operation-element.md#operation-op-div-rngpadelt-rngpadelt)

    - [`x / y: FldPadElt, FldPadElt → FldPadElt`](operation-element.md#operation-op-div-fldpadelt-fldpadelt)

    - [`IsExactlyDivisible(x, y): RngPadElt, RngPadElt → BoolElt, RngPadElt`](operation-element.md#function-isexactlydivisible-rngpadelt-rngpadelt)

    - [`IsExactlyDivisible(x, y): RngPadResElt, RngPadResElt → BoolElt, RngPadResElt`](operation-element.md#function-isexactlydivisible-rngpadreselt-rngpadreselt)

    - [`IsExactlyDivisible(x, y): RngPadResExtElt, RngPadResExtElt → BoolElt, RngPadResExtElt`](operation-element.md#function-isexactlydivisible-rngpadresextelt-rngpadresextelt)

    - [`IsExactlyDivisible(x, y): FldPadElt, FldPadElt → BoolElt, FldPadElt`](operation-element.md#function-isexactlydivisible-fldpadelt-fldpadelt)

    - [`Example: Division`](operation-element.md#example-ex-915090)

  - [Equality and Membership](operation-element.md#equality-and-membership)

    - [`x eq y: RngPadResElt, RngPadResElt → BoolElt`](operation-element.md#operation-op-eq-rngpadreselt-rngpadreselt)

    - [`x eq y: RngPadResExtElt, RngPadResExtElt → BoolElt`](operation-element.md#operation-op-eq-rngpadresextelt-rngpadresextelt)

    - [`x eq y: RngPadElt, RngPadElt → BoolElt`](operation-element.md#operation-op-eq-rngpadelt-rngpadelt)

    - [`x eq y: FldPadElt, FldPadElt → BoolElt`](operation-element.md#operation-op-eq-fldpadelt-fldpadelt)

    - [`x ne y: RngPadResElt, RngPadResElt → BoolElt`](operation-element.md#operation-op-ne-rngpadreselt-rngpadreselt)

    - [`x ne y: RngPadResExtElt, RngPadResExtElt → BoolElt`](operation-element.md#operation-op-ne-rngpadresextelt-rngpadresextelt)

    - [`x ne y: RngPadElt, RngPadElt → BoolElt`](operation-element.md#operation-op-ne-rngpadelt-rngpadelt)

    - [`x ne y: FldPadElt, FldPadElt → BoolElt`](operation-element.md#operation-op-ne-fldpadelt-fldpadelt)

    - [`x in L: ., RngPad → BoolElt`](operation-element.md#operation-op-in-rngpad)

    - [`x in L: ., FldPad → BoolElt`](operation-element.md#operation-op-in-fldpad)

    - [`x notin L: ., RngPad → BoolElt`](operation-element.md#operation-op-notin-rngpad)

    - [`x notin L: ., FldPad → BoolElt`](operation-element.md#operation-op-notin-fldpad)

    - [`Example: Unram Ext`](operation-element.md#example-ex-44ed45)

  - [Properties](operation-element.md#properties)

    - [`IsZero(x): RngPadElt → BoolElt`](operation-element.md#function-iszero-rngpadelt)

    - [`IsZero(x): RngPadResElt → BoolElt`](operation-element.md#function-iszero-rngpadreselt)

    - [`IsZero(x): RngPadResExtElt → BoolElt`](operation-element.md#function-iszero-rngpadresextelt)

    - [`IsZero(x): FldPadElt → BoolElt`](operation-element.md#function-iszero-fldpadelt)

    - [`IsOne(x): RngPadElt → BoolElt`](operation-element.md#function-isone-rngpadelt)

    - [`IsOne(x): RngPadResElt → BoolElt`](operation-element.md#function-isone-rngpadreselt)

    - [`IsOne(x): RngPadResExtElt → BoolElt`](operation-element.md#function-isone-rngpadresextelt)

    - [`IsOne(x): FldPadElt → BoolElt`](operation-element.md#function-isone-fldpadelt)

    - [`IsMinusOne(x): RngPadElt → BoolElt`](operation-element.md#function-isminusone-rngpadelt)

    - [`IsMinusOne(x): RngPadResElt → BoolElt`](operation-element.md#function-isminusone-rngpadreselt)

    - [`IsMinusOne(x): RngPadResExtElt → BoolElt`](operation-element.md#function-isminusone-rngpadresextelt)

    - [`IsMinusOne(x): FldPadElt → BoolElt`](operation-element.md#function-isminusone-fldpadelt)

    - [`IsUnit(x): RngPadElt → BoolElt`](operation-element.md#function-isunit-rngpadelt)

    - [`IsUnit(x): RngPadResElt → BoolElt`](operation-element.md#function-isunit-rngpadreselt)

    - [`IsUnit(x): RngPadResExtElt → BoolElt`](operation-element.md#function-isunit-rngpadresextelt)

    - [`IsUnit(x): FldPadElt → BoolElt`](operation-element.md#function-isunit-fldpadelt)

    - [`IsIntegral(x): RngPadElt → BoolElt`](operation-element.md#function-isintegral-rngpadelt)

    - [`IsIntegral(x): RngPadResElt → BoolElt`](operation-element.md#function-isintegral-rngpadreselt)

    - [`IsIntegral(x): RngPadResExtElt → BoolElt`](operation-element.md#function-isintegral-rngpadresextelt)

    - [`IsIntegral(x): FldPadElt → BoolElt`](operation-element.md#function-isintegral-fldpadelt)

  - [Precision and Valuation](operation-element.md#precision-and-valuation)

    - [`Parent(x): RngPadElt → RngPad`](operation-element.md#function-parent-rngpadelt)

    - [`Parent(x): RngPadResElt → RngPadRes`](operation-element.md#function-parent-rngpadreselt)

    - [`Parent(x): RngPadResExtElt → RngPadResExt`](operation-element.md#function-parent-rngpadresextelt)

    - [`Parent(x): FldPadElt → FldPad`](operation-element.md#function-parent-fldpadelt)

    - [`Precision(x): RngPadElt → RngIntElt`](operation-element.md#function-precision-rngpadelt)

    - [`Precision(x): RngPadResElt → RngIntElt`](operation-element.md#function-precision-rngpadreselt)

    - [`Precision(x): RngPadResExtElt → RngIntElt`](operation-element.md#function-precision-rngpadresextelt)

    - [`Precision(x): FldPadElt → RngIntElt`](operation-element.md#function-precision-fldpadelt)

    - [`AbsolutePrecision(x): RngPadElt → RngIntElt`](operation-element.md#function-absoluteprecision-rngpadelt)

    - [`AbsolutePrecision(x): RngPadResElt → RngIntElt`](operation-element.md#function-absoluteprecision-rngpadreselt)

    - [`AbsolutePrecision(x): RngPadResExtElt → RngIntElt`](operation-element.md#function-absoluteprecision-rngpadresextelt)

    - [`AbsolutePrecision(x): FldPadElt → RngIntElt`](operation-element.md#function-absoluteprecision-fldpadelt)

    - [`RelativePrecision(x): RngPadElt → RngIntElt`](operation-element.md#function-relativeprecision-rngpadelt)

    - [`RelativePrecision(x): RngPadResElt → RngIntElt`](operation-element.md#function-relativeprecision-rngpadreselt)

    - [`RelativePrecision(x): RngPadResExtElt → RngIntElt`](operation-element.md#function-relativeprecision-rngpadresextelt)

    - [`RelativePrecision(x): FldPadElt → RngIntElt`](operation-element.md#function-relativeprecision-fldpadelt)

    - [`ChangePrecision(x, k): RngUPolElt, RngIntElt → RngPadElt`](operation-element.md#function-changeprecision-rngupolelt-rngintelt)

    - [`ChangePrecision(~x, k): RngUPolElt, RngIntElt → RngPadElt`](operation-element.md#function-changeprecision-rngupolelt-rngintelt-ref)

    - [`ChangePrecision(x, k): RngPadElt, RngIntElt → RngPadElt`](operation-element.md#function-changeprecision-rngpadelt-rngintelt)

    - [`ChangePrecision(~x, k): RngPadElt, RngIntElt → RngPadElt`](operation-element.md#function-changeprecision-rngpadelt-rngintelt-ref)

    - [`ChangePrecision(x, k): FldPadElt, RngIntElt → FldPadElt`](operation-element.md#function-changeprecision-fldpadelt-rngintelt)

    - [`ChangePrecision(~x, k): FldPadElt, RngIntElt → FldPadElt`](operation-element.md#function-changeprecision-fldpadelt-rngintelt-ref)

    - [`Expand(x): RngPadElt → RngPadElt`](operation-element.md#function-expand-rngpadelt)

    - [`Expand(x): FldPadElt → FldPadElt`](operation-element.md#function-expand-fldpadelt)

    - [`Valuation(x): RngPadElt → RngIntElt`](operation-element.md#function-valuation-rngpadelt)

    - [`Valuation(x): RngPadResElt → RngIntElt`](operation-element.md#function-valuation-rngpadreselt)

    - [`Valuation(x): RngPadResExtElt → RngIntElt`](operation-element.md#function-valuation-rngpadresextelt)

    - [`Valuation(x): FldPadElt → RngIntElt`](operation-element.md#function-valuation-fldpadelt)

    - [`Example: ofe`](operation-element.md#example-ex-c75a3c)

    - [`Example: Padic Precision Woes`](operation-element.md#example-ex-a2d0b8)

  - [Logarithms and Exponentials](operation-element.md#logarithms-and-exponentials)

    - [`Log(x): RngPadElt → RngPadElt`](operation-element.md#function-log-rngpadelt)

    - [`Log(x): RngPadResElt → RngPadResElt`](operation-element.md#function-log-rngpadreselt)

    - [`Log(x): RngPadResExtElt → RngPadResExtElt`](operation-element.md#function-log-rngpadresextelt)

    - [`Log(x): FldPadElt → FldPadElt`](operation-element.md#function-log-fldpadelt)

    - [`Exp(x): RngPadElt → RngPadElt`](operation-element.md#function-exp-rngpadelt)

    - [`Exp(x): RngPadResElt → RngPadResElt`](operation-element.md#function-exp-rngpadreselt)

    - [`Exp(x): RngPadResExtElt → RngPadResExtElt`](operation-element.md#function-exp-rngpadresextelt)

    - [`Exp(x): FldPadElt → FldPadElt`](operation-element.md#function-exp-fldpadelt)

    - [`Example: log`](operation-element.md#example-ex-bfa7a7)

  - [Norm and Trace](operation-element.md#norm-and-trace)

    - [`Norm(x): RngPadElt → RngPadElt`](operation-element.md#function-norm-rngpadelt)

    - [`Norm(x): RngPadResElt → RngPadResElt`](operation-element.md#function-norm-rngpadreselt)

    - [`Norm(x): RngPadResExtElt → RngElt`](operation-element.md#function-norm-rngpadresextelt)

    - [`Norm(x): FldPadElt → FldPadElt`](operation-element.md#function-norm-fldpadelt)

    - [`Norm(x, R): RngPadElt, RngPad → RngPadElt`](operation-element.md#function-norm-rngpadelt-rngpad)

    - [`Norm(x, R): RngPadResElt, RngPadRes → RngPadResElt`](operation-element.md#function-norm-rngpadreselt-rngpadres)

    - [`Norm(x, R): RngPadResExtElt, Rng → RngElt`](operation-element.md#function-norm-rngpadresextelt-rng)

    - [`Norm(x, R): FldPadElt, FldPad → FldPadElt`](operation-element.md#function-norm-fldpadelt-fldpad)

    - [`Trace(x): RngPadElt → RngPadElt`](operation-element.md#function-trace-rngpadelt)

    - [`Trace(x): RngPadResElt → RngPadResElt`](operation-element.md#function-trace-rngpadreselt)

    - [`Trace(x): RngPadResExtElt → RngElt`](operation-element.md#function-trace-rngpadresextelt)

    - [`Trace(x): FldPadElt → FldPadElt`](operation-element.md#function-trace-fldpadelt)

    - [`Trace(x, R): RngPadElt, RngPad → RngPadElt`](operation-element.md#function-trace-rngpadelt-rngpad)

    - [`Trace(x, R): RngPadResElt, RngPadRes → RngPadResElt`](operation-element.md#function-trace-rngpadreselt-rngpadres)

    - [`Trace(x, R): RngPadResExtElt, Rng → RngElt`](operation-element.md#function-trace-rngpadresextelt-rng)

    - [`Trace(x, R): FldPadElt, FldPad → FldPadElt`](operation-element.md#function-trace-fldpadelt-fldpad)

    - [`MinimalPolynomial(x): RngPadElt → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadelt)

    - [`MinimalPolynomial(x): RngPadResElt → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadreselt)

    - [`MinimalPolynomial(x): RngPadResExtElt → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadresextelt)

    - [`MinimalPolynomial(x): FldPadElt → RngUPolElt`](operation-element.md#function-minimalpolynomial-fldpadelt)

    - [`MinimalPolynomial(x, R): RngPadElt, RngPad → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadelt-rngpad)

    - [`MinimalPolynomial(x, R): RngPadResElt, RngPadRes → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadreselt-rngpadres)

    - [`MinimalPolynomial(x, R): RngPadResExtElt, Rng → RngUPolElt`](operation-element.md#function-minimalpolynomial-rngpadresextelt-rng)

    - [`MinimalPolynomial(x, R): FldPadElt, FldPad → RngUPolElt`](operation-element.md#function-minimalpolynomial-fldpadelt-fldpad)

    - [`CharacteristicPolynomial(x): RngPadElt → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadelt)

    - [`CharacteristicPolynomial(x): RngPadResElt → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadreselt)

    - [`CharacteristicPolynomial(x): RngPadResExtElt → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadresextelt)

    - [`CharacteristicPolynomial(x, R): RngPadElt, RngPad → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadelt-rngpad)

    - [`CharacteristicPolynomial(x, R): RngPadResElt, RngPadRes → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadreselt-rngpadres)

    - [`CharacteristicPolynomial(x, R): RngPadResExtElt, RngPadRes → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadresextelt-rngpadres)

    - [`CharacteristicPolynomial(x, R): RngPadResExtElt, RngPadResExt → RngUPolElt`](operation-element.md#function-characteristicpolynomial-rngpadresextelt-rngpadresext)

    - [`GaloisImage(x, i): RngPadElt, RngIntElt → RngPadElt`](operation-element.md#function-galoisimage-rngpadelt-rngintelt)

    - [`GaloisImage(x, i): RngPadResElt, RngIntElt → RngPadResElt`](operation-element.md#function-galoisimage-rngpadreselt-rngintelt)

    - [`GaloisImage(x, i): RngPadResExtElt, RngIntElt → RngPadResExtElt`](operation-element.md#function-galoisimage-rngpadresextelt-rngintelt)

    - [`GaloisImage(x, i): FldPadElt, RngIntElt → FldPadElt`](operation-element.md#function-galoisimage-fldpadelt-rngintelt)

    - [`Example: agm`](operation-element.md#example-ex-1dd0a7)

    - [`EuclideanNorm(x): RngPadResElt → RngIntElt`](operation-element.md#function-euclideannorm-rngpadreselt)

    - [`EuclideanNorm(x): RngRadResExtElt → RngIntElt`](operation-element.md#function-euclideannorm-rngradresextelt)

  - [Power Relation (Algebraic Dependency)](operation-element.md#power-relation-algebraic-dependency)

    - [`PowerRelation(x,n): FldPadElt, RngIntElt → RngUPolElt`](operation-element.md#function-powerrelation-fldpadelt-rngintelt)

  - [Teichmüller Lifts](operation-element.md#teichmuller-lifts)

    - [`TeichmuellerLift(u, R): FldFinElt, RngPadResExt → RngPadResExtElt`](operation-element.md#function-teichmuellerlift-fldfinelt-rngpadresext)

    - [`TeichmuellerLift(u, R): FldFinElt, RngPadRes → RngPadResElt`](operation-element.md#function-teichmuellerlift-fldfinelt-rngpadres)

- [Linear Algebra](lin-alg.md)

- [Roots of Elements](elt-roots.md)

  - [`SquareRoot(x): RngPadElt → RngPadElt`](elt-roots.md#function-squareroot-rngpadelt)

  - [`SquareRoot(x): RngPadResElt → RngPadResElt`](elt-roots.md#function-squareroot-rngpadreselt)

  - [`SquareRoot(x): RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-squareroot-rngpadresextelt)

  - [`SquareRoot(x): FldPadElt → FldPadElt`](elt-roots.md#function-squareroot-fldpadelt)

  - [`Sqrt(x): RngPadElt → RngPadElt`](elt-roots.md#function-sqrt-rngpadelt)

  - [`Sqrt(x): RngPadResElt → RngPadResElt`](elt-roots.md#function-sqrt-rngpadreselt)

  - [`Sqrt(x): RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-sqrt-rngpadresextelt)

  - [`Sqrt(x): FldPadElt → FldPadElt`](elt-roots.md#function-sqrt-fldpadelt)

  - [`IsSquare(x): RngPadElt → BoolElt, RngPadElt`](elt-roots.md#function-issquare-rngpadelt)

  - [`IsSquare(x): RngPadResElt → BoolElt, RngPadResElt`](elt-roots.md#function-issquare-rngpadreselt)

  - [`IsSquare(x): RngPadResExtElt → BoolElt, RngPadResExtElt`](elt-roots.md#function-issquare-rngpadresextelt)

  - [`IsSquare(x): FldPadElt → BoolElt, FldPadElt`](elt-roots.md#function-issquare-fldpadelt)

  - [`InverseSquareRoot(x): RngPadElt → RngPadElt`](elt-roots.md#function-inversesquareroot-rngpadelt)

  - [`InverseSquareRoot(x): RngPadResElt → RngPadResElt`](elt-roots.md#function-inversesquareroot-rngpadreselt)

  - [`InverseSquareRoot(x): RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-inversesquareroot-rngpadresextelt)

  - [`InverseSquareRoot(x): FldPadElt → FldPadElt`](elt-roots.md#function-inversesquareroot-fldpadelt)

  - [`InverseSqrt(x): RngPadElt → RngPadElt`](elt-roots.md#function-inversesqrt-rngpadelt)

  - [`InverseSqrt(x): RngPadResElt → RngPadResElt`](elt-roots.md#function-inversesqrt-rngpadreselt)

  - [`InverseSqrt(x): RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-inversesqrt-rngpadresextelt)

  - [`InverseSqrt(x): FldPadElt → FldPadElt`](elt-roots.md#function-inversesqrt-fldpadelt)

  - [`InverseSquareRoot(x, y): RngPadElt, RngPadElt → RngPadElt`](elt-roots.md#function-inversesquareroot-rngpadelt-rngpadelt)

  - [`InverseSquareRoot(x, y): RngPadResElt, RngPadResElt → RngPadResElt`](elt-roots.md#function-inversesquareroot-rngpadreselt-rngpadreselt)

  - [`InverseSquareRoot(x, y): RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-inversesquareroot-rngpadresextelt-rngpadresextelt)

  - [`InverseSquareRoot(x, y): FldPadElt, FldPadElt → FldPadElt`](elt-roots.md#function-inversesquareroot-fldpadelt-fldpadelt)

  - [`InverseSqrt(x, y): RngPadElt, RngPadElt → RngPadElt`](elt-roots.md#function-inversesqrt-rngpadelt-rngpadelt)

  - [`InverseSqrt(x, y): RngPadResElt, RngPadResElt → RngPadResElt`](elt-roots.md#function-inversesqrt-rngpadreselt-rngpadreselt)

  - [`InverseSqrt(x, y): RngPadResExtElt, RngPadResExtElt → RngPadResExtElt`](elt-roots.md#function-inversesqrt-rngpadresextelt-rngpadresextelt)

  - [`InverseSqrt(x, y): FldPadElt, FldPadElt → FldPadElt`](elt-roots.md#function-inversesqrt-fldpadelt-fldpadelt)

  - [`Root(x, n): RngPadElt, RngIntElt → RngPadElt`](elt-roots.md#function-root-rngpadelt-rngintelt)

  - [`Root(x, n): RngPadResElt, RngIntElt → RngPadResElt`](elt-roots.md#function-root-rngpadreselt-rngintelt)

  - [`Root(x, n): RngPadResExtElt, RngIntElt → RngPadResExtElt`](elt-roots.md#function-root-rngpadresextelt-rngintelt)

  - [`Root(x, n): FldPadElt, RngIntElt → FldPadElt`](elt-roots.md#function-root-fldpadelt-rngintelt)

  - [`IsPower(x, n): RngPadElt, RngIntElt → BoolElt, RngPadElt`](elt-roots.md#function-ispower-rngpadelt-rngintelt)

  - [`IsPower(x, n): RngPadResElt, RngIntElt → BoolElt, RngPadResElt`](elt-roots.md#function-ispower-rngpadreselt-rngintelt)

  - [`IsPower(x, n): RngPadResExtElt, RngIntElt → BoolElt, RngPadResExtElt`](elt-roots.md#function-ispower-rngpadresextelt-rngintelt)

  - [`IsPower(x, n): FldPadElt, RngIntElt → BoolElt, FldPadElt`](elt-roots.md#function-ispower-fldpadelt-rngintelt)

  - [`InverseRoot(x, n): RngPadElt, RngIntElt → RngPadElt`](elt-roots.md#function-inverseroot-rngpadelt-rngintelt)

  - [`InverseRoot(x, n): RngPadResElt, RngIntElt → RngPadResElt`](elt-roots.md#function-inverseroot-rngpadreselt-rngintelt)

  - [`InverseRoot(x, n): RngPadResExtElt, RngIntElt → RngPadResExtElt`](elt-roots.md#function-inverseroot-rngpadresextelt-rngintelt)

  - [`InverseRoot(x, n): FldPadElt, RngIntElt → FldPadElt`](elt-roots.md#function-inverseroot-fldpadelt-rngintelt)

  - [`InverseRoot(x, y, n): RngPadElt, RngPadElt, RngIntElt → RngPadElt`](elt-roots.md#function-inverseroot-rngpadelt-rngpadelt-rngintelt)

  - [`InverseRoot(x, y, n): RngPadResElt, RngPadResElt, RngIntElt → RngPadResElt`](elt-roots.md#function-inverseroot-rngpadreselt-rngpadreselt-rngintelt)

  - [`InverseRoot(x, y, n): RngPadResExtElt, RngPadResExtElt, RngIntElt → RngPadResExtElt`](elt-roots.md#function-inverseroot-rngpadresextelt-rngpadresextelt-rngintelt)

  - [`InverseRoot(x, y, n): FldPadElt, FldPadElt, RngIntElt → FldPadElt`](elt-roots.md#function-inverseroot-fldpadelt-fldpadelt-rngintelt)

- [Polynomials](polynomials.md)

  - [Operations for Polynomials](polynomials.md#operations-for-polynomials)

    - [`GreatestCommonDivisor(f, g): RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#function-greatestcommondivisor-rngupolelt-rngupolelt)

    - [`Gcd(f, g): RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#function-gcd-rngupolelt-rngupolelt)

    - [`GCD(f, g): RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#function-gcd-rngupolelt-rngupolelt-2)

    - [`f div g: RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#operation-operation-div-rngupolelt-rngupolelt-rngupolelt)

    - [`f mod g: RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#operation-operation-mod-rngupolelt-rngupolelt-rngupolelt)

    - [`LeastCommonMultiple(f, g): RngUPolElt, RngUPolElt → RngUPolElt`](polynomials.md#function-leastcommonmultiple-rngupolelt-rngupolelt)

    - [`Coefficient(f, i): RngUPolElt, RngIntElt → RngElt`](polynomials.md#function-coefficient-rngupolelt-rngintelt)

    - [`LeadingCoefficient(f): RngUPolElt → RngElt`](polynomials.md#function-leadingcoefficient-rngupolelt)

    - [`Derivative(f): RngUPolElt → RngUPolElt`](polynomials.md#function-derivative-rngupolelt)

    - [`Evaluate(f, x): RngUPolElt, RngElt → RngElt`](polynomials.md#function-evaluate-rngupolelt-rngelt)

    - [`Example: gcd`](polynomials.md#example-ex-8d80f7)

    - [`ShiftValuation(f, n): RngUPolElt, RngIntElt → RngUPolElt`](polynomials.md#function-shiftvaluation-rngupolelt-rngintelt)

  - [Roots of Polynomials](polynomials.md#roots-of-polynomials)

    - [Hensel Lifting of Roots](polynomials.md#hensel-lifting-of-roots)

      - [`NewtonPolygon(f): RngUPolElt → NwtnPgon`](polynomials.md#function-newtonpolygon-rngupolelt)

      - [`ValuationsOfRoots(f): RngUPolElt → SeqEnum[<FldRatElt, RngIntElt>]`](polynomials.md#function-valuationsofroots-rngupolelt)

      - [`Example: Newton Polygon`](polynomials.md#example-ex-8d9abc)

      - [`HenselLift(f, x): RngUPolElt, RngPadElt → RngPadElt`](polynomials.md#function-hensellift-rngupolelt-rngpadelt)

      - [`HenselLift(f, x): RngUPolElt, RngPadResElt → RngPadResElt`](polynomials.md#function-hensellift-rngupolelt-rngpadreselt)

      - [`HenselLift(f, x): RngUPolElt, RngPadResExtElt → RngPadResExtElt`](polynomials.md#function-hensellift-rngupolelt-rngpadresextelt)

      - [`HenselLift(f, x): RngUPolElt, FldPadElt → FldPadElt`](polynomials.md#function-hensellift-rngupolelt-fldpadelt)

      - [`HenselLift(f, x, k): RngUPolElt, RngPadElt, RngIntElt → RngPadElt`](polynomials.md#function-hensellift-rngupolelt-rngpadelt-rngintelt)

      - [`HenselLift(f, x, k): RngUPolElt, RngPadResElt, RngIntElt → RngPadResElt`](polynomials.md#function-hensellift-rngupolelt-rngpadreselt-rngintelt)

      - [`HenselLift(f, x, k): RngUPolElt, RngPadResExtElt, RngIntElt → RngPadResExtElt`](polynomials.md#function-hensellift-rngupolelt-rngpadresextelt-rngintelt)

      - [`HenselLift(f, x, k): RngUPolElt, FldPadElt, RngIntElt → FldPadElt`](polynomials.md#function-hensellift-rngupolelt-fldpadelt-rngintelt)

      - [`Example: Hensel`](polynomials.md#example-ex-88d396)

    - [Functions returning Roots](polynomials.md#functions-returning-roots)

      - [`Roots(f): RngUPolElt → [ <RngPadElt, RngIntElt> ]`](polynomials.md#function-roots-rngupolelt)

      - [`Roots(f, R): RngUPolElt, RngPad → [ <RngPadElt, RngIntElt> ]`](polynomials.md#function-roots-rngupolelt-rngpad)

      - [`HasRoot(f): RngUPolElt → BoolElt, RngPadElt`](polynomials.md#function-hasroot-rngupolelt)

      - [`Example: Ramified Ext`](polynomials.md#example-ex-87cd32)

  - [Factorization](polynomials.md#factorization)

    - [`HenselLift(f, s): RngUPolElt, [RngUPolElt] → [RngUPolElt]`](polynomials.md#function-hensellift-rngupolelt-rngupolelt)

    - [`Example: Poly Hensel`](polynomials.md#example-ex-aacddc)

    - [`IsIrreducible(f): RngUPolElt → BoolElt`](polynomials.md#function-isirreducible-rngupolelt)

    - [`SquareFreeFactorization(f): RngUPolElt → [ < RngUPolElt, RngIntElt > ]`](polynomials.md#function-squarefreefactorization-rngupolelt)

    - [`Factorization(f): RngUPolElt → [ < RngUPolElt, RngIntElt > ]`](polynomials.md#function-factorization-rngupolelt)

    - [`LocalFactorization(f): RngUPolElt → [ < RngUPolElt, RngIntElt >]`](polynomials.md#function-localfactorization-rngupolelt)

    - [`SuggestedPrecision(f): RngUPolElt → RngIntElt`](polynomials.md#function-suggestedprecision-rngupolelt)

    - [`IsIsomorphic(f, g): RngUPolElt, RngUPolElt → BoolElt`](polynomials.md#function-isisomorphic-rngupolelt-rngupolelt)

    - [`Distance(f, g): RngUPolElt, RngUPolElt → RngIntElt`](polynomials.md#function-distance-rngupolelt-rngupolelt)

    - [`Example: Factors Precision`](polynomials.md#example-ex-f1ae2a)

    - [`Example: Factors`](polynomials.md#example-ex-836762)

    - [`SplittingField(f): RngUPolElt[FldPad] → FldPad, SeqEnum`](polynomials.md#function-splittingfield-rngupolelt-fldpad)

    - [`SplittingField(f): RngUPolElt[RngPad] → FldPad, SeqEnum`](polynomials.md#function-splittingfield-rngupolelt-rngpad)

    - [`Example: Rngloc Splittingfield`](polynomials.md#example-ex-f42dd9)

- [Automorphisms of Local Rings and Fields](autos.md)

  - [`Automorphisms(L): RngPad → [Map]`](autos.md#function-automorphisms-rngpad)

  - [`Automorphisms(L): FldPad → [Map]`](autos.md#function-automorphisms-fldpad)

  - [`Automorphisms(K, k): FldPad, FldPad → [Map]`](autos.md#function-automorphisms-fldpad-fldpad)

  - [`Automorphisms(K, k): RngPad, RngPad → [Map]`](autos.md#function-automorphisms-rngpad-rngpad)

  - [`AutomorphismGroup(L): RngPad → GrpPerm, Map`](autos.md#function-automorphismgroup-rngpad)

  - [`AutomorphismGroup(L): FldPad → GrpPerm, Map`](autos.md#function-automorphismgroup-fldpad)

  - [`AutomorphismGroup(K, k): RngPad, RngPad → GrpPerm, Map`](autos.md#function-automorphismgroup-rngpad-rngpad)

  - [`AutomorphismGroup(K, k): FldPad, FldPad → GrpPerm, Map`](autos.md#function-automorphismgroup-fldpad-fldpad)

  - [`IsNormal(K): RngPad → BoolElt`](autos.md#function-isnormal-rngpad)

  - [`IsNormal(K): FldPad → BoolElt`](autos.md#function-isnormal-fldpad)

  - [`IsNormal(K, k): RngPad, RngPad → BoolElt`](autos.md#function-isnormal-rngpad-rngpad)

  - [`IsNormal(K, k): FldPad, FldPad → BoolElt`](autos.md#function-isnormal-fldpad-fldpad)

  - [`IsAbelian(K, k): FldPad, FldPad → BoolElt`](autos.md#function-isabelian-fldpad-fldpad)

  - [`Continuations(m, L): Map, RngPad → [Map]`](autos.md#function-continuations-map-rngpad)

  - [`IsIsomorphic(E, K): RngPad, RngPad → BooElt`](autos.md#function-isisomorphic-rngpad-rngpad)

  - [`IsIsomorphic(E, K): FldPad, FldPad → BooElt`](autos.md#function-isisomorphic-fldpad-fldpad)

  - [`Example: Units Autos`](autos.md#example-ex-b62260)

  - [`GaloisGroup(f): RngUPolElt[FldPad] → GrpPerm, SeqEnum, UserProgram`](autos.md#function-galoisgroup-rngupolelt-fldpad)

  - [`GaloisGroup(f): RngUPolElt[RngPad] → GrpPerm, SeqEnum, UserProgram`](autos.md#function-galoisgroup-rngupolelt-rngpad)

  - [`Example: Rngloc Galoisgroup`](autos.md#example-ex-286b99)

- [Completions](completion.md)

  - [`Completion(O, P): RngOrd, RngOrdIdl → RngPad, Map`](completion.md#function-completion-rngord-rngordidl)

  - [`Completion(K, P): FldNum, RngOrdIdl → FldPad, Map`](completion.md#function-completion-fldnum-rngordidl)

  - [`LocalRing(P, k): RngOrdIdl, RngIntElt → RngPad, Map`](completion.md#function-localring-rngordidl-rngintelt)

  - [`Example: completion`](completion.md#example-ex-2bb9ae)

- [Class Field Theory](class-fields.md)

  - [Unit Group](class-fields.md#unit-group)

    - [`PrincipalUnitGroupGenerators(R): RngPad → SeqEnum`](class-fields.md#function-principalunitgroupgenerators-rngpad)

    - [`PrincipalUnitGroupGenerators(R): FldPad → SeqEnum`](class-fields.md#function-principalunitgroupgenerators-fldpad)

    - [`PrincipalUnitGroup(R): RngPad → GrpAb, Map`](class-fields.md#function-principalunitgroup-rngpad)

    - [`PrincipalUnitGroup(R): RngPadResExt → GrpAb, Map`](class-fields.md#function-principalunitgroup-rngpadresext)

    - [`PrincipalUnitGroup(R): RngPadRes → GrpAb, Map`](class-fields.md#function-principalunitgroup-rngpadres)

    - [`UnitGroup(R): RngPad → GrpAb, Map`](class-fields.md#function-unitgroup-rngpad)

    - [`UnitGroup(F): FldPad → GrpAb, Map`](class-fields.md#function-unitgroup-fldpad)

    - [`UnitGroupGenerators(R): RngPad → SeqEnum`](class-fields.md#function-unitgroupgenerators-rngpad)

    - [`UnitGroupGenerators(R): RngPadRes → SeqEnum`](class-fields.md#function-unitgroupgenerators-rngpadres)

    - [`UnitGroupGenerators(F): FldPad → SeqEnum`](class-fields.md#function-unitgroupgenerators-fldpad)

    - [`pSelmerGroup(p,F): RngIntElt, FldPad → GrpAb, Map`](class-fields.md#function-pselmergroup-rngintelt-fldpad)

  - [Norm Group](class-fields.md#norm-group)

    - [`NormGroup(R, m): FldPad, Map → GrpAb, Map`](class-fields.md#function-normgroup-fldpad-map)

    - [`NormGroup(R, m): RngPad, Map → GrpAb, Map`](class-fields.md#function-normgroup-rngpad-map)

    - [`NormEquation(R, m, b): FldPad, Map, RngElt → BoolElt, RngElt`](class-fields.md#function-normequation-fldpad-map-rngelt)

    - [`NormEquation(R, m, b): RngPad, Map, RngElt → BoolElt, RngElt`](class-fields.md#function-normequation-rngpad-map-rngelt)

    - [`NormEquation(m1, m2, G): Map, Map, GrpAb → GrpAb, Map`](class-fields.md#function-normequation-map-map-grpab)

    - [`Norm(m1, m2, G): Map, Map, GrpAb → GrpAb`](class-fields.md#function-norm-map-map-grpab)

    - [`NormKernel(m1, m2): Map, Map → GrpAb`](class-fields.md#function-normkernel-map-map)

  - [Class Fields](class-fields.md#id2)

    - [`ClassField(m, G): Map, GrpAb → FldAb`](class-fields.md#function-classfield-map-grpab)

    - [`NormGroupDiscriminant(m, G): Map, GrpAb → RngIntElt`](class-fields.md#function-normgroupdiscriminant-map-grpab)

- [Extensions](extensions.md)

  - [`AllExtensions(R, n): RngPad, RngIntElt → [RngPad]`](extensions.md#function-allextensions-rngpad-rngintelt)

  - [`AllExtensions(R, n): FldPad, RngIntElt → [RngPad]`](extensions.md#function-allextensions-fldpad-rngintelt)

  - [`NumberOfExtensions(R, n): RngPad, RngIntElt → RngIntElt`](extensions.md#function-numberofextensions-rngpad-rngintelt)

  - [`OreConditions(R, n, j): RngPad, RngIntElt, RngIntElt → BoolElt`](extensions.md#function-oreconditions-rngpad-rngintelt-rngintelt)

  - [`OreConditions(R, n, j): FldPad, RngIntElt, RngIntElt → BoolElt`](extensions.md#function-oreconditions-fldpad-rngintelt-rngintelt)

  - [`Example: All Extensions`](extensions.md#example-ex-ea2536)

- [Exact $p$-Adic Rings](xpadic.md)

  - [Introduction](xpadic.md#introduction)

    - [`IsExactpAdic(x): Any → BoolElt`](xpadic.md#function-isexactpadic-any)

  - [Exact $p$-adic Rings and Fields](xpadic.md#exact-p-adic-rings-and-fields)

    - [Construction of Exact $p$-adic Rings and Fields](xpadic.md#construction-of-exact-p-adic-rings-and-fields)

      - [`pAdicField(p : parameters): RngIntElt → FldXPad`](xpadic.md#function-padicfield-rngintelt-2)

      - [`pAdicRing(p : parameters): RngIntElt → FldXPad`](xpadic.md#function-padicring-rngintelt-2)

      - [`ext<K | f>: FldXPad, RngUPolElt → RngXPad`](xpadic.md#constructor-constructor-ext-fldxpad-rngupolelt-rngxpad)

      - [`ext<K | f>: FldXPad, RngUPolXPadElt → RngXPad`](xpadic.md#constructor-constructor-ext-fldxpad-rngupolxpadelt-rngxpad)

      - [`ext<K | f>: FldXPad, [RngXPadElt] → RngXPad`](xpadic.md#constructor-constructor-ext-fldxpad-rngxpadelt-rngxpad)

      - [`ext<K | d>: FldXPad, RngIntElt → RngXPad`](xpadic.md#constructor-constructor-ext-fldxpad-rngintelt-rngxpad)

      - [`ext<K | f>: RngXPad, RngUPolElt → RngXPad`](xpadic.md#constructor-constructor-ext-rngxpad-rngupolelt-rngxpad)

      - [`ext<K | f>: RngXPad, RngUPolXPadElt → RngXPad`](xpadic.md#constructor-constructor-ext-rngxpad-rngupolxpadelt-rngxpad)

      - [`ext<K | f>: RngXPad, [RngXPadElt] → RngXPad`](xpadic.md#constructor-constructor-ext-rngxpad-rngxpadelt-rngxpad)

      - [`ext<K | d>: RngXPad, RngIntElt → RngXPad`](xpadic.md#constructor-constructor-ext-rngxpad-rngintelt-rngxpad)

      - [`Example: Constr Ex`](xpadic.md#example-ex-72b734)

    - [Related Structures](xpadic.md#related-structures)

      - [`RingOfIntegers(L): FldXPad → RngXPad`](xpadic.md#function-ringofintegers-fldxpad)

      - [`RingOfIntegers(L): RngXPad → RngXPad`](xpadic.md#function-ringofintegers-rngxpad)

      - [`IntegerRing(L): FldXPad → RngXPad`](xpadic.md#function-integerring-fldxpad)

      - [`Integers(L): FldXPad → RngXPad`](xpadic.md#function-integers-fldxpad)

      - [`IntegerRing(L): RngXPad → RngXPad`](xpadic.md#function-integerring-rngxpad)

      - [`Integers(L): RngXPad → RngXPad`](xpadic.md#function-integers-rngxpad)

      - [`FieldOfFractions(L): FldXPad → FldXPad`](xpadic.md#function-fieldoffractions-fldxpad)

      - [`FieldOfFractions(L): RngXPad → FldXPad`](xpadic.md#function-fieldoffractions-rngxpad)

      - [`BaseField(F): FldXPad → FldXPad`](xpadic.md#function-basefield-fldxpad)

      - [`CoefficientField(F): FldXPad → FldXPad`](xpadic.md#function-coefficientfield-fldxpad)

      - [`BaseRing(R): RngXPad → RngXPad`](xpadic.md#function-basering-rngxpad)

      - [`CoefficientRing(R): RngXPad → RngXPad`](xpadic.md#function-coefficientring-rngxpad)

      - [`ResidueClassField(L): FldXPad → FldFin, Map`](xpadic.md#function-residueclassfield-fldxpad)

      - [`ResidueClassField(L): RngXPad → FldFin, Map`](xpadic.md#function-residueclassfield-rngxpad)

      - [`pAdicQuotientRing(L, k): FldXPad, RngIntElt → RngPadRes, Map`](xpadic.md#function-padicquotientring-fldxpad-rngintelt)

      - [`pAdicQuotientRing(L, k): RngXPad, RngIntElt → RngPadRes, Map`](xpadic.md#function-padicquotientring-rngxpad-rngintelt)

      - [`quo<L | x>: RngXPad, Any → RngPadRes, Map`](xpadic.md#constructor-constructor-quo-rngxpad-any-rngpadres-map)

      - [`quo<L | x>: FldXPad, Any → RngPadRes, Map`](xpadic.md#constructor-constructor-quo-fldxpad-any-rngpadres-map)

      - [`InfinitePrecisionApproximation(K): FldXPad → FldPad`](xpadic.md#function-infiniteprecisionapproximation-fldxpad)

      - [`InfinitePrecisionApproximation(K): RngXPad → RngPad`](xpadic.md#function-infiniteprecisionapproximation-rngxpad)

      - [`R eq T: RngXPad, RngXPad → BoolElt`](xpadic.md#operation-op-eq-rngxpad-rngxpad)

      - [`R eq T: FldXPad, FldXPad → BoolElt`](xpadic.md#operation-op-eq-fldxpad-fldxpad)

      - [`Example: Related Ex`](xpadic.md#example-ex-34e873)

    - [Generating Elements](xpadic.md#generating-elements)

      - [`R . i: FldXPad, RngIntElt → FldXPadElt`](xpadic.md#operation-operation-fldxpad-rngintelt-fldxpadelt)

      - [`R . i: RngXPad, RngIntElt → RngXPadElt`](xpadic.md#operation-operation-rngxpad-rngintelt-rngxpadelt)

      - [`Name(R, i): RngXPad, RngIntElt → RngXPadElt`](xpadic.md#function-name-rngxpad-rngintelt)

      - [`Name(R, i): FldXPad, RngIntElt → FldXPadElt`](xpadic.md#function-name-fldxpad-rngintelt)

      - [`AssignNames(~R, S): RngXPad, SeqEnum[MonStgElt]`](xpadic.md#function-assignnames-rngxpad-seqenum-monstgelt-ref)

      - [`AssignNames(~R, S): FldXPad, SeqEnum[MonStgElt]`](xpadic.md#function-assignnames-fldxpad-seqenum-monstgelt-ref)

      - [`Generator(R): FldXPad → FldXPadElt`](xpadic.md#function-generator-fldxpad)

      - [`Generator(R): RngXPad → RngXPadElt`](xpadic.md#function-generator-rngxpad)

      - [`UniformizingElement(R): FldXPad → FldXPadElt`](xpadic.md#function-uniformizingelement-fldxpad)

      - [`UniformizingElement(R): RngXPad → RngXPadElt`](xpadic.md#function-uniformizingelement-rngxpad)

      - [`ResidueGenerator(R): FldXPad → FldXPadElt`](xpadic.md#function-residuegenerator-fldxpad)

      - [`ResidueGenerator(R): RngXPad → RngXPadElt`](xpadic.md#function-residuegenerator-rngxpad)

      - [`AbsoluteGenerator(R): FldXPad → FldXPadElt`](xpadic.md#function-absolutegenerator-fldxpad)

      - [`AbsoluteGenerator(R): RngXPad → RngXPadElt`](xpadic.md#function-absolutegenerator-rngxpad)

      - [`Example: Gen Ex`](xpadic.md#example-ex-1abc7d)

    - [Invariants](xpadic.md#invariants)

      - [`Prime(L): FldXPad → RngIntElt`](xpadic.md#function-prime-fldxpad)

      - [`Prime(L): RngXPad → RngIntElt`](xpadic.md#function-prime-rngxpad)

      - [`Degree(L, K): FldXPad, FldXPad → RngIntElt`](xpadic.md#function-degree-fldxpad-fldxpad)

      - [`Degree(L): FldXPad → RngIntElt`](xpadic.md#function-degree-fldxpad)

      - [`Degree(L): RngXPad → RngIntElt`](xpadic.md#function-degree-rngxpad)

      - [`Degree(L, K): RngXPad, RngXPad → RngIntElt`](xpadic.md#function-degree-rngxpad-rngxpad)

      - [`InertiaDegree(L, K): FldXPad, FldXPad → RngIntElt`](xpadic.md#function-inertiadegree-fldxpad-fldxpad)

      - [`InertiaDegree(L): FldXPad → RngIntElt`](xpadic.md#function-inertiadegree-fldxpad)

      - [`InertiaDegree(L, K): RngXPad, RngXPad → RngIntElt`](xpadic.md#function-inertiadegree-rngxpad-rngxpad)

      - [`InertiaDegree(L): RngXPad → RngIntElt`](xpadic.md#function-inertiadegree-rngxpad)

      - [`RamificationDegree(L, K): FldXPad, FldXPad → RngIntElt`](xpadic.md#function-ramificationdegree-fldxpad-fldxpad)

      - [`RamificationDegree(L): FldXPad → RngIntElt`](xpadic.md#function-ramificationdegree-fldxpad)

      - [`RamificationIndex(L): FldXPad → RngIntElt`](xpadic.md#function-ramificationindex-fldxpad)

      - [`RamificationIndex(L, K): FldXPad, FldXPad → RngIntElt`](xpadic.md#function-ramificationindex-fldxpad-fldxpad)

      - [`RamificationDegree(L): RngXPad → RngIntElt`](xpadic.md#function-ramificationdegree-rngxpad)

      - [`RamificationDegree(L, K): RngXPad, RngXPad → RngIntElt`](xpadic.md#function-ramificationdegree-rngxpad-rngxpad)

      - [`RamificationIndex(L): RngXPad → RngIntElt`](xpadic.md#function-ramificationindex-rngxpad)

      - [`RamificationIndex(L, K): RngXPad, RngXPad → RngIntElt`](xpadic.md#function-ramificationindex-rngxpad-rngxpad)

      - [`DefiningPolynomial(R): RngXPad → RngUPolElt`](xpadic.md#function-definingpolynomial-rngxpad)

      - [`DefiningPolynomial(R): FldXPad → RngUPolElt`](xpadic.md#function-definingpolynomial-fldxpad)

      - [`AbsoluteDegree(F): FldXPad → RngIntElt`](xpadic.md#function-absolutedegree-fldxpad)

      - [`AbsoluteInertiaDegree(L): FldXPad → RngIntElt`](xpadic.md#function-absoluteinertiadegree-fldxpad)

      - [`AbsoluteInertiaIndex(L): FldXPad → RngIntElt`](xpadic.md#function-absoluteinertiaindex-fldxpad)

      - [`AbsoluteRamificationDegree(L): FldXPad → RngIntElt`](xpadic.md#function-absoluteramificationdegree-fldxpad)

      - [`AbsoluteRamificationIndex(L): FldXPad → RngIntElt`](xpadic.md#function-absoluteramificationindex-fldxpad)

      - [`AbsoluteDegree(F): RngXPad → RngIntElt`](xpadic.md#function-absolutedegree-rngxpad)

      - [`AbsoluteInertiaDegree(L): RngXPad → RngIntElt`](xpadic.md#function-absoluteinertiadegree-rngxpad)

      - [`AbsoluteInertiaIndex(L): RngXPad → RngIntElt`](xpadic.md#function-absoluteinertiaindex-rngxpad)

      - [`AbsoluteRamificationDegree(L): RngXPad → RngIntElt`](xpadic.md#function-absoluteramificationdegree-rngxpad)

      - [`AbsoluteRamificationIndex(L): RngXPad → RngIntElt`](xpadic.md#function-absoluteramificationindex-rngxpad)

      - [`DiscriminantValuation(L): FldXPad → RngIntElt`](xpadic.md#function-discriminantvaluation-fldxpad)

      - [`DiscriminantValuation(L, K): FldXPad, FldXPad → RngIntElt`](xpadic.md#function-discriminantvaluation-fldxpad-fldxpad)

      - [`DiscriminantValuation(L, K): RngXPad, RngXPad → RngIntElt`](xpadic.md#function-discriminantvaluation-rngxpad-rngxpad)

      - [`DiscriminantValuation(L): RngXPad → RngIntElt`](xpadic.md#function-discriminantvaluation-rngxpad)

      - [`RamificationPolygon(L): FldXPad → NwtnPgon`](xpadic.md#function-ramificationpolygon-fldxpad)

      - [`RamificationPolygon(L, K): FldXPad, FldXPad → NwtnPgon`](xpadic.md#function-ramificationpolygon-fldxpad-fldxpad)

      - [`RamificationPolygon(L, K): RngXPad, RngXPad → NwtnPgon`](xpadic.md#function-ramificationpolygon-rngxpad-rngxpad)

      - [`RamificationPolygon(L): RngXPad → NwtnPgon`](xpadic.md#function-ramificationpolygon-rngxpad)

      - [`RamificationPolygon(f): RngUPolXPadElt[FldXPad] → NwtnPgon`](xpadic.md#function-ramificationpolygon-rngupolxpadelt-fldxpad)

      - [`RamificationPolygon(f): RngUPolXPadElt[RngXPad] → NwtnPgon`](xpadic.md#function-ramificationpolygon-rngupolxpadelt-rngxpad)

      - [`Example: Invar Ex`](xpadic.md#example-ex-5789a2)

  - [Exact $p$-adic Elements](xpadic.md#exact-p-adic-elements)

    - [`GetExactpAdicsPrintPrecision() → RngIntElt`](xpadic.md#function-getexactpadicsprintprecision)

    - [`SetExactpAdicsPrintPrecision(k): Infty`](xpadic.md#function-setexactpadicsprintprecision-infty)

    - [`SetExactpAdicsPrintPrecision(k): RngIntElt`](xpadic.md#function-setexactpadicsprintprecision-rngintelt)

    - [`K ! x: FldXPad, Any → FldXPadElt`](xpadic.md#operation-op-fldxpad-any)

    - [`R ! x: RngXPad, Any → RngXPadElt`](xpadic.md#operation-op-rngxpad-any)

    - [`elt<K | x>: FldXPad, Any → FldXPadElt`](xpadic.md#constructor-constructor-elt-fldxpad-any-fldxpadelt)

    - [`elt<R | x>: RngXPad, Any → RngXPadElt`](xpadic.md#constructor-constructor-elt-rngxpad-any-rngxpadelt)

    - [`AbsolutePrecision(x): FldXPadElt → RngIntElt`](xpadic.md#function-absoluteprecision-fldxpadelt)

    - [`AbsolutePrecision(x): RngXPadElt → RngIntElt`](xpadic.md#function-absoluteprecision-rngxpadelt)

    - [`RelativePrecision(x): FldXPadElt → RngIntElt`](xpadic.md#function-relativeprecision-fldxpadelt)

    - [`RelativePrecision(x): RngXPadElt → RngIntElt`](xpadic.md#function-relativeprecision-rngxpadelt)

    - [`Valuation(x): FldXPadElt → RngIntElt`](xpadic.md#function-valuation-fldxpadelt)

    - [`Valuation(x): RngXPadElt → RngIntElt`](xpadic.md#function-valuation-rngxpadelt)

    - [`WeakValuation(x): RngXPadElt → RngIntElt`](xpadic.md#function-weakvaluation-rngxpadelt)

    - [`WeakValuation(x): FldXPadElt → RngIntElt`](xpadic.md#function-weakvaluation-fldxpadelt)

    - [`ShiftValuation(x, n): FldXPadElt, RngIntElt → FldXPadElt`](xpadic.md#function-shiftvaluation-fldxpadelt-rngintelt)

    - [`ShiftValuation(x, n): RngXPadElt, RngIntElt → RngXPadElt`](xpadic.md#function-shiftvaluation-rngxpadelt-rngintelt)

    - [`ValuationEq(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationeq-fldxpadelt-rngintelt)

    - [`ValuationEq(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationeq-fldxpadelt-infty)

    - [`ValuationEq(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationeq-rngxpadelt-rngintelt)

    - [`ValuationEq(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationeq-rngxpadelt-infty)

    - [`ValuationNe(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationne-fldxpadelt-rngintelt)

    - [`ValuationNe(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationne-fldxpadelt-infty)

    - [`ValuationNe(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationne-rngxpadelt-rngintelt)

    - [`ValuationNe(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationne-rngxpadelt-infty)

    - [`ValuationGe(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationge-fldxpadelt-rngintelt)

    - [`ValuationGe(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationge-fldxpadelt-infty)

    - [`ValuationGe(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationge-rngxpadelt-rngintelt)

    - [`ValuationGe(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationge-rngxpadelt-infty)

    - [`ValuationGt(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationgt-fldxpadelt-infty)

    - [`ValuationGt(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationgt-fldxpadelt-rngintelt)

    - [`ValuationGt(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationgt-rngxpadelt-rngintelt)

    - [`ValuationGt(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationgt-rngxpadelt-infty)

    - [`ValuationLe(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationle-fldxpadelt-infty)

    - [`ValuationLe(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationle-fldxpadelt-rngintelt)

    - [`ValuationLe(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationle-rngxpadelt-rngintelt)

    - [`ValuationLe(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationle-rngxpadelt-infty)

    - [`ValuationLt(x, n): FldXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationlt-fldxpadelt-rngintelt)

    - [`ValuationLt(x, n): FldXPadElt, Infty → BoolElt`](xpadic.md#function-valuationlt-fldxpadelt-infty)

    - [`ValuationLt(x, n): RngXPadElt, Infty → BoolElt`](xpadic.md#function-valuationlt-rngxpadelt-infty)

    - [`ValuationLt(x, n): RngXPadElt, RngIntElt → BoolElt`](xpadic.md#function-valuationlt-rngxpadelt-rngintelt)

    - [`IsUnit(x): RngXPadElt → BoolElt`](xpadic.md#function-isunit-rngxpadelt)

    - [`IsUnit(x): FldXPadElt → BoolElt`](xpadic.md#function-isunit-fldxpadelt)

    - [`IsIntegral(x): RngXPadElt → BoolElt`](xpadic.md#function-isintegral-rngxpadelt)

    - [`IsIntegral(x): FldXPadElt → BoolElt`](xpadic.md#function-isintegral-fldxpadelt)

    - [`IsWeaklyZero(x): StrAnyXPadElt → BoolElt`](xpadic.md#function-isweaklyzero-stranyxpadelt)

    - [`IsWeaklyEqual(x, y): StrAnyXPadElt, StrAnyXPadElt → BoolElt`](xpadic.md#function-isweaklyequal-stranyxpadelt-stranyxpadelt)

    - [`IsDefinitelyZero(x): StrAnyXPadElt → BoolElt`](xpadic.md#function-isdefinitelyzero-stranyxpadelt)

    - [`IsDefinitelyEqual(x, y): StrAnyXPadElt, StrAnyXPadElt → BoolElt`](xpadic.md#function-isdefinitelyequal-stranyxpadelt-stranyxpadelt)

    - [`CoerceAndLift(S, x): StrAnyXPad, Any → StrAnyXPadElt`](xpadic.md#function-coerceandlift-stranyxpad-any)

    - [Arithmetic with Elements](xpadic.md#arithmetic-with-elements)

      - [`x * y: FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#operation-op-times-fldxpadelt-fldxpadelt)

      - [`x * y: RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#operation-op-times-rngxpadelt-rngxpadelt)

      - [`x + y: FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#operation-op-plus-fldxpadelt-fldxpadelt)

      - [`x + y: RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#operation-op-plus-rngxpadelt-rngxpadelt)

      - [`- y: FldXPadElt → FldXPadElt`](xpadic.md#operation-operation-fldxpadelt-fldxpadelt)

      - [`- y: RngXPadElt → RngXPadElt`](xpadic.md#operation-operation-rngxpadelt-rngxpadelt)

      - [`x - y: RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#operation-op-minus-rngxpadelt-rngxpadelt)

      - [`x - y: FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#operation-op-minus-fldxpadelt-fldxpadelt)

      - [`x ^ n: FldXPadElt, RngIntElt → FldXPadElt`](xpadic.md#operation-op-pow-fldxpadelt-rngintelt)

      - [`x ^ n: RngXPadElt, RngIntElt → RngXPadElt`](xpadic.md#operation-op-pow-rngxpadelt-rngintelt)

      - [`x / y: FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#operation-op-div-fldxpadelt-fldxpadelt)

      - [`x / y: RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#operation-op-div-rngxpadelt-rngxpadelt)

      - [`x div y: RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#operation-operation-div-rngxpadelt-rngxpadelt-rngxpadelt)

      - [`Quotrem(x, y): RngXPadElt, RngXPadElt → RngXPadElt, RngXPadElt`](xpadic.md#function-quotrem-rngxpadelt-rngxpadelt)

      - [`GCD(x, y): FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#function-gcd-fldxpadelt-fldxpadelt)

      - [`Gcd(x, y): FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#function-gcd-fldxpadelt-fldxpadelt-2)

      - [`GreatestCommonDivisor(x, y): FldXPadElt, FldXPadElt → FldXPadElt`](xpadic.md#function-greatestcommondivisor-fldxpadelt-fldxpadelt)

      - [`GCD(x, y): RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#function-gcd-rngxpadelt-rngxpadelt)

      - [`Gcd(x, y): RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#function-gcd-rngxpadelt-rngxpadelt-2)

      - [`GreatestCommonDivisor(x, y): RngXPadElt, RngXPadElt → RngXPadElt`](xpadic.md#function-greatestcommondivisor-rngxpadelt-rngxpadelt)

      - [`ExtendedGreatestCommonDivisor(x, y): FldXPadElt, FldXPadElt → FldXPadElt, FldXPadElt, FldXPadElt`](xpadic.md#function-extendedgreatestcommondivisor-fldxpadelt-fldxpadelt)

      - [`XGCD(x, y): FldXPadElt, FldXPadElt → FldXPadElt, FldXPadElt, FldXPadElt`](xpadic.md#function-xgcd-fldxpadelt-fldxpadelt)

      - [`Xgcd(x, y): FldXPadElt, FldXPadElt → FldXPadElt, FldXPadElt, FldXPadElt`](xpadic.md#function-xgcd-fldxpadelt-fldxpadelt-2)

      - [`ExtendedGreatestCommonDivisor(x, y): RngXPadElt, RngXPadElt → RngXPadElt, RngXPadElt, RngXPadElt`](xpadic.md#function-extendedgreatestcommondivisor-rngxpadelt-rngxpadelt)

      - [`XGCD(x, y): RngXPadElt, RngXPadElt → RngXPadElt, RngXPadElt, RngXPadElt`](xpadic.md#function-xgcd-rngxpadelt-rngxpadelt)

      - [`Xgcd(x, y): RngXPadElt, RngXPadElt → RngXPadElt, RngXPadElt, RngXPadElt`](xpadic.md#function-xgcd-rngxpadelt-rngxpadelt-2)

      - [`Example: Elts Ex`](xpadic.md#example-ex-bdd87d)

  - [Polynomials over Exact $p$-adic Rings and Fields](xpadic.md#polynomials-over-exact-p-adic-rings-and-fields)

    - [Exact Polynomial Rings](xpadic.md#exact-polynomial-rings)

      - [`PolynomialRing(R : parameters): Rng → RngUPol`](xpadic.md#function-polynomialring-rng)

      - [`R eq T: RngUPolXPad, RngUPolXPad → BoolElt`](xpadic.md#operation-op-eq-rngupolxpad-rngupolxpad)

      - [`BaseRing(R): RngUPolXPad → Rng`](xpadic.md#function-basering-rngupolxpad)

      - [`CoefficientRing(R): RngUPolXPad → Rng`](xpadic.md#function-coefficientring-rngupolxpad)

      - [`R . i: RngUPolXPad, RngIntElt → RngXPadElt`](xpadic.md#operation-operation-rngupolxpad-rngintelt-rngxpadelt)

      - [`Name(R, i): RngUPolXPad, RngIntElt → RngUPolXPadElt`](xpadic.md#function-name-rngupolxpad-rngintelt)

      - [`Generator(R): RngUPolXPad → RngUPolXPadElt`](xpadic.md#function-generator-rngupolxpad)

      - [`AssignNames(~R, S): RngUPolXPad, SeqEnum[MonStgElt]`](xpadic.md#function-assignnames-rngupolxpad-seqenum-monstgelt-ref)

      - [`Example: Poly Ring Ex`](xpadic.md#example-ex-b44a56)

    - [Polynomials](xpadic.md#polynomials)

      - [`R ! f: RngUPolXPad, Any → RngUPolXPadElt`](xpadic.md#operation-op-rngupolxpad-any)

      - [`BaseRing(f): RngUPolXPadElt → Rng`](xpadic.md#function-basering-rngupolxpadelt)

      - [`CoefficientRing(f): RngUPolXPadElt → Rng`](xpadic.md#function-coefficientring-rngupolxpadelt)

      - [`CanChangeRing(f, R): RngUPolXPadElt, Rng → BoolElt, RngUPolXPadElt`](xpadic.md#function-canchangering-rngupolxpadelt-rng)

      - [`ChangeRing(f, R): RngUPolXPadElt, Rng → RngUPolXPadElt`](xpadic.md#function-changering-rngupolxpadelt-rng)

      - [`Degree(f): RngUPolXPadElt → RngIntElt`](xpadic.md#function-degree-rngupolxpadelt)

      - [`WeakDegree(f): RngUPolXPadElt → RngIntElt`](xpadic.md#function-weakdegree-rngupolxpadelt)

      - [`Coefficient(f, i): RngUPolXPadElt, RngIntElt → RngElt`](xpadic.md#function-coefficient-rngupolxpadelt-rngintelt)

      - [`Coefficients(f): RngUPolXPadElt → SeqEnum`](xpadic.md#function-coefficients-rngupolxpadelt)

      - [`ExactPolynomial(f): RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#function-exactpolynomial-rngupolxpadelt)

      - [`ExactPolynomial(f): RngUPolElt → RngUPolXPadElt`](xpadic.md#function-exactpolynomial-rngupolelt)

      - [`Evaluate(f, x): RngUPolXPadElt, Any → RngAnyXPadElt`](xpadic.md#function-evaluate-rngupolxpadelt-any)

      - [`Derivative(f, m): RngUPolXPadElt, RngIntElt → RngUPolXPadElt`](xpadic.md#function-derivative-rngupolxpadelt-rngintelt)

      - [`Derivative(f): RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#function-derivative-rngupolxpadelt)

      - [`Discriminant(f): RngUPolXPadElt → RngAnyXPadElt`](xpadic.md#function-discriminant-rngupolxpadelt)

      - [`Resultant(f, g): RngUPolXPadElt, RngUPolXPadElt → RngAnyXPadElt`](xpadic.md#function-resultant-rngupolxpadelt-rngupolxpadelt)

      - [`IsInertial(f): RngUPolXPadElt → BoolElt`](xpadic.md#function-isinertial-rngupolxpadelt)

      - [`IsEisenstein(f): RngUPolXPadElt → BoolElt`](xpadic.md#function-iseisenstein-rngupolxpadelt)

      - [`IsWeaklyZero(f): StrAnyXPadElt → BoolElt`](xpadic.md#function-isweaklyzero-stranyxpadelt-2)

      - [`IsWeaklyEqual(f, g): StrAnyXPadElt, StrAnyXPadElt → BoolElt`](xpadic.md#function-isweaklyequal-stranyxpadelt-stranyxpadelt-2)

      - [`IsDefinitelyZero(f): StrAnyXPadElt → BoolElt`](xpadic.md#function-isdefinitelyzero-stranyxpadelt-2)

      - [`IsDefinitelyEqual(f, g): StrAnyXPadElt, StrAnyXPadElt → BoolElt`](xpadic.md#function-isdefinitelyequal-stranyxpadelt-stranyxpadelt-2)

      - [`CoerceAndLift(S, x): StrAnyXPad, Any → StrAnyXPadElt`](xpadic.md#function-coerceandlift-stranyxpad-any-2)

    - [Arithmetic](xpadic.md#arithmetic)

      - [`x * y: RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-op-times-rngupolxpadelt-rngupolxpadelt)

      - [`- y: RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-operation-rngupolxpadelt-rngupolxpadelt)

      - [`x + y: RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-op-plus-rngupolxpadelt-rngupolxpadelt)

      - [`x - y: RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-op-minus-rngupolxpadelt-rngupolxpadelt)

      - [`x / c: RngUPolXPadElt, RngElt → RngUPolXPadElt`](xpadic.md#operation-op-div-rngupolxpadelt-rngelt)

      - [`x ^ n: RngUPolXPadElt, RngIntElt → RngUPolXPadElt`](xpadic.md#operation-op-pow-rngupolxpadelt-rngintelt)

      - [`Quotrem(x, y): RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#function-quotrem-rngupolxpadelt-rngupolxpadelt)

      - [`x div y: RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-operation-div-rngupolxpadelt-rngupolxpadelt-rngupolxpadelt)

      - [`x mod y: RngUPolXPadElt, RngUPolXPadElt → RngUPolXPadElt`](xpadic.md#operation-operation-mod-rngupolxpadelt-rngupolxpadelt-rngupolxpadelt)

      - [`Example: Poly Ex`](xpadic.md#example-ex-88ff30)

    - [Factorization and Roots](xpadic.md#factorization-and-roots)

      - [`NewtonPolygon(f): RngUPolXPadElt[RngXPad] → NwtnPgon`](xpadic.md#function-newtonpolygon-rngupolxpadelt-rngxpad)

      - [`NewtonPolygon(f): RngUPolXPadElt[FldXPad] → NwtnPgon`](xpadic.md#function-newtonpolygon-rngupolxpadelt-fldxpad)

      - [`Roots(f, R): RngUPolElt, FldXPad → SeqEnum`](xpadic.md#function-xroots)

      - [`Roots(f, R): RngUPolElt, RngXPad → SeqEnum`](xpadic.md#function-roots-rngupolelt-rngxpad)

      - [`Roots(f, R): RngUPolXPadElt, RngXPad → SeqEnum`](xpadic.md#function-roots-rngupolxpadelt-rngxpad)

      - [`Roots(f, R): RngUPolXPadElt, FldXPad → SeqEnum`](xpadic.md#function-roots-rngupolxpadelt-fldxpad)

      - [`Roots(f): RngUPolXPadElt[FldXPad] → SeqEnum`](xpadic.md#function-roots-rngupolxpadelt-fldxpad-2)

      - [`Roots(f): RngUPolXPadElt[RngXPad] → SeqEnum`](xpadic.md#function-roots-rngupolxpadelt-rngxpad-2)

      - [`HasRoot(f): RngUPolXPadElt[RngXPad] → BoolElt, RngXPadElt`](xpadic.md#function-hasroot-rngupolxpadelt-rngxpad)

      - [`HasRoot(f): RngUPolXPadElt[FldXPad] → BoolElt, FldXPadElt`](xpadic.md#function-hasroot-rngupolxpadelt-fldxpad)

      - [`HasRoot(f): RngUPolElt[RngXPad] → BoolElt, RngXPadElt`](xpadic.md#function-hasroot-rngupolelt-rngxpad)

      - [`HasRoot(f): RngUPolElt[FldXPad] → BoolElt, FldXPadElt`](xpadic.md#function-hasroot-rngupolelt-fldxpad)

      - [`HasRoot(f, R): RngUPolElt, FldXPad → BoolElt, FldXPadElt`](xpadic.md#function-hasroot-rngupolelt-fldxpad-2)

      - [`HasRoot(f, R): RngUPolElt, RngXPad → BoolElt, RngXPadElt`](xpadic.md#function-hasroot-rngupolelt-rngxpad-2)

      - [`HasRoot(f, R): RngUPolXPadElt, FldXPad → BoolElt, FldXPadElt`](xpadic.md#function-hasroot-rngupolxpadelt-fldxpad-2)

      - [`HasRoot(f, R): RngUPolXPadElt, RngXPad → BoolElt, RngXPadElt`](xpadic.md#function-hasroot-rngupolxpadelt-rngxpad-2)

      - [`Factorization(f, R): RngUPolXPadElt, FldXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-xfact)

      - [`Factorisation(f, R): RngUPolXPadElt, FldXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolxpadelt-fldxpad)

      - [`Factorisation(f, R): RngUPolXPadElt, RngXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolxpadelt-rngxpad)

      - [`Factorization(f, R): RngUPolXPadElt, RngXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorization-rngupolxpadelt-rngxpad)

      - [`Factorization(f, R): RngUPolElt, RngXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorization-rngupolelt-rngxpad)

      - [`Factorisation(f, R): RngUPolElt, RngXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolelt-rngxpad)

      - [`Factorisation(f, R): RngUPolElt, FldXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolelt-fldxpad)

      - [`Factorization(f, R): RngUPolElt, FldXPad → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorization-rngupolelt-fldxpad)

      - [`Factorization(f): RngUPolXPadElt[RngXPad] → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorization-rngupolxpadelt-rngxpad-2)

      - [`Factorization(f): RngUPolXPadElt[FldXPad] → SeqEnum, FldXPadElt, SeqEnum`](xpadic.md#function-factorization-rngupolxpadelt-fldxpad)

      - [`Factorisation(f): RngUPolXPadElt[RngXPad] → SeqEnum, RngXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolxpadelt-rngxpad-2)

      - [`Factorisation(f): RngUPolXPadElt[FldXPad] → SeqEnum, FldXPadElt, SeqEnum`](xpadic.md#function-factorisation-rngupolxpadelt-fldxpad-2)

      - [`IsIrreducible(f): RngUPolXPadElt[RngXPad] → BoolElt, Rec`](xpadic.md#function-isirreducible-rngupolxpadelt-rngxpad)

      - [`IsIrreducible(f): RngUPolXPadElt[FldXPad] → BoolElt, Rec`](xpadic.md#function-isirreducible-rngupolxpadelt-fldxpad)

      - [`IsIrreducible(f): RngUPolElt[RngXPad] → BoolElt, Rec`](xpadic.md#function-isirreducible-rngupolelt-rngxpad)

      - [`IsIrreducible(f): RngUPolElt[FldXPad] → BoolElt, Rec`](xpadic.md#function-isirreducible-rngupolelt-fldxpad)

      - [`IsHenselLiftable(f, x): RngUPolElt, FldXPadElt → BoolElt, FldXPadElt`](xpadic.md#function-ishenselliftable-rngupolelt-fldxpadelt)

      - [`IsHenselLiftable(f, x): RngUPolElt, RngXPadElt → BoolElt, RngXPadElt`](xpadic.md#function-ishenselliftable-rngupolelt-rngxpadelt)

      - [`IsHenselLiftable(f, x): RngUPolXPadElt, FldXPadElt → BoolElt, FldXPadElt`](xpadic.md#function-ishenselliftable-rngupolxpadelt-fldxpadelt)

      - [`IsHenselLiftable(f, x): RngUPolXPadElt, RngXPadElt → BoolElt, RngXPadElt`](xpadic.md#function-ishenselliftable-rngupolxpadelt-rngxpadelt)

      - [`RamificationResidualPolynomial(f, face): RngUPolElt[FldXPad], NwtnPgonFace → RngUPolElt`](xpadic.md#function-ramificationresidualpolynomial-rngupolelt-fldxpad-nwtnpgonface)

      - [`RamificationResidualPolynomial(f, face): RngUPolElt[RngXPad], NwtnPgonFace → RngUPolElt`](xpadic.md#function-ramificationresidualpolynomial-rngupolelt-rngxpad-nwtnpgonface)

      - [`RamificationResidualPolynomial(f, face): RngUPolXPadElt[FldXPad], NwtnPgonFace → RngUPolElt`](xpadic.md#function-ramificationresidualpolynomial-rngupolxpadelt-fldxpad-nwtnpgonface)

      - [`RamificationResidualPolynomial(f, face): RngUPolXPadElt[RngXPad], NwtnPgonFace → RngUPolElt`](xpadic.md#function-ramificationresidualpolynomial-rngupolxpadelt-rngxpad-nwtnpgonface)

      - [`RamificationResidualPolynomials(f): RngUPolElt[FldXPad] → SeqEnum, NwtnPgon`](xpadic.md#function-ramificationresidualpolynomials-rngupolelt-fldxpad)

      - [`RamificationResidualPolynomials(f): RngUPolElt[RngXPad] → SeqEnum, NwtnPgon`](xpadic.md#function-ramificationresidualpolynomials-rngupolelt-rngxpad)

      - [`RamificationResidualPolynomials(f): RngUPolXPadElt[FldXPad] → SeqEnum, NwtnPgon`](xpadic.md#function-ramificationresidualpolynomials-rngupolxpadelt-fldxpad)

      - [`RamificationResidualPolynomials(f): RngUPolXPadElt[RngXPad] → SeqEnum, NwtnPgon`](xpadic.md#function-ramificationresidualpolynomials-rngupolxpadelt-rngxpad)

      - [`Example: Fact Ex`](xpadic.md#example-ex-95a032)
