Trivial valuations¶
AUTHORS:
Julian Rüth (2016-10-14): initial version
EXAMPLES:
sage: v = valuations.TrivialValuation(QQ); v
Trivial valuation on Rational Field
sage: v(1)
0
>>> from sage.all import *
>>> v = valuations.TrivialValuation(QQ); v
Trivial valuation on Rational Field
>>> v(Integer(1))
0
v = valuations.TrivialValuation(QQ); v v(1)
- class sage.rings.valuation.trivial_valuation.TrivialDiscretePseudoValuation(parent)[source]¶
Bases:
TrivialDiscretePseudoValuation_base
,InfiniteDiscretePseudoValuation
The trivial pseudo-valuation that is \(\infty\) everywhere.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ); v Trivial pseudo-valuation on Rational Field
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ); v Trivial pseudo-valuation on Rational Field
v = valuations.TrivialPseudoValuation(QQ); v
- lift(X)[source]¶
Return a lift of
X
to the domain of this valuation.EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.lift(v.residue_ring().zero()) 0
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ) >>> v.lift(v.residue_ring().zero()) 0
v = valuations.TrivialPseudoValuation(QQ) v.lift(v.residue_ring().zero())
- reduce(x)[source]¶
Reduce
x
modulo the positive elements of this valuation.EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.reduce(1) 0
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ) >>> v.reduce(Integer(1)) 0
v = valuations.TrivialPseudoValuation(QQ) v.reduce(1)
- residue_ring()[source]¶
Return the residue ring of this valuation.
EXAMPLES:
sage: valuations.TrivialPseudoValuation(QQ).residue_ring() Quotient of Rational Field by the ideal (1)
>>> from sage.all import * >>> valuations.TrivialPseudoValuation(QQ).residue_ring() Quotient of Rational Field by the ideal (1)
valuations.TrivialPseudoValuation(QQ).residue_ring()
- value_group()[source]¶
Return the value group of this valuation.
EXAMPLES:
A trivial discrete pseudo-valuation has no value group:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.value_group() Traceback (most recent call last): ... ValueError: The trivial pseudo-valuation that is infinity everywhere does not have a value group.
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ) >>> v.value_group() Traceback (most recent call last): ... ValueError: The trivial pseudo-valuation that is infinity everywhere does not have a value group.
v = valuations.TrivialPseudoValuation(QQ) v.value_group()
- class sage.rings.valuation.trivial_valuation.TrivialDiscretePseudoValuation_base(parent)[source]¶
Bases:
DiscretePseudoValuation
Base class for code shared by trivial valuations.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(ZZ); v Trivial pseudo-valuation on Integer Ring
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(ZZ); v Trivial pseudo-valuation on Integer Ring
v = valuations.TrivialPseudoValuation(ZZ); v
- is_negative_pseudo_valuation()[source]¶
Return whether this valuation attains the value \(-\infty\).
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.is_negative_pseudo_valuation() False
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ) >>> v.is_negative_pseudo_valuation() False
v = valuations.TrivialPseudoValuation(QQ) v.is_negative_pseudo_valuation()
- is_trivial()[source]¶
Return whether this valuation is trivial.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.is_trivial() True
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(QQ) >>> v.is_trivial() True
v = valuations.TrivialPseudoValuation(QQ) v.is_trivial()
- uniformizer()[source]¶
Return a uniformizing element for this valuation.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(ZZ) sage: v.uniformizer() Traceback (most recent call last): ... ValueError: Trivial valuations do not define a uniformizing element
>>> from sage.all import * >>> v = valuations.TrivialPseudoValuation(ZZ) >>> v.uniformizer() Traceback (most recent call last): ... ValueError: Trivial valuations do not define a uniformizing element
v = valuations.TrivialPseudoValuation(ZZ) v.uniformizer()
- class sage.rings.valuation.trivial_valuation.TrivialDiscreteValuation(parent)[source]¶
Bases:
TrivialDiscretePseudoValuation_base
,DiscreteValuation
The trivial valuation that is zero on nonzero elements.
EXAMPLES:
sage: v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field
>>> from sage.all import * >>> v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field
v = valuations.TrivialValuation(QQ); v
- extensions(ring)[source]¶
Return the unique extension of this valuation to
ring
.EXAMPLES:
sage: v = valuations.TrivialValuation(ZZ) sage: v.extensions(QQ) [Trivial valuation on Rational Field]
>>> from sage.all import * >>> v = valuations.TrivialValuation(ZZ) >>> v.extensions(QQ) [Trivial valuation on Rational Field]
v = valuations.TrivialValuation(ZZ) v.extensions(QQ)
- lift(X)[source]¶
Return a lift of
X
to the domain of this valuation.EXAMPLES:
sage: v = valuations.TrivialValuation(QQ) sage: v.lift(v.residue_ring().zero()) 0
>>> from sage.all import * >>> v = valuations.TrivialValuation(QQ) >>> v.lift(v.residue_ring().zero()) 0
v = valuations.TrivialValuation(QQ) v.lift(v.residue_ring().zero())
- reduce(x)[source]¶
Reduce
x
modulo the positive elements of this valuation.EXAMPLES:
sage: v = valuations.TrivialValuation(QQ) sage: v.reduce(1) 1
>>> from sage.all import * >>> v = valuations.TrivialValuation(QQ) >>> v.reduce(Integer(1)) 1
v = valuations.TrivialValuation(QQ) v.reduce(1)
- residue_ring()[source]¶
Return the residue ring of this valuation.
EXAMPLES:
sage: valuations.TrivialValuation(QQ).residue_ring() Rational Field
>>> from sage.all import * >>> valuations.TrivialValuation(QQ).residue_ring() Rational Field
valuations.TrivialValuation(QQ).residue_ring()
- value_group()[source]¶
Return the value group of this valuation.
EXAMPLES:
A trivial discrete valuation has a trivial value group:
sage: v = valuations.TrivialValuation(QQ) sage: v.value_group() Trivial Additive Abelian Group
>>> from sage.all import * >>> v = valuations.TrivialValuation(QQ) >>> v.value_group() Trivial Additive Abelian Group
v = valuations.TrivialValuation(QQ) v.value_group()
- class sage.rings.valuation.trivial_valuation.TrivialValuationFactory(clazz, parent, *args, **kwargs)[source]¶
Bases:
UniqueFactory
Create a trivial valuation on
domain
.EXAMPLES:
sage: v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field sage: v(1) 0
>>> from sage.all import * >>> v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field >>> v(Integer(1)) 0
v = valuations.TrivialValuation(QQ); v v(1)
- create_key(domain)[source]¶
Create a key that identifies this valuation.
EXAMPLES:
sage: valuations.TrivialValuation(QQ) is valuations.TrivialValuation(QQ) # indirect doctest True
>>> from sage.all import * >>> valuations.TrivialValuation(QQ) is valuations.TrivialValuation(QQ) # indirect doctest True
valuations.TrivialValuation(QQ) is valuations.TrivialValuation(QQ) # indirect doctest
- create_object(version, key, **extra_args)[source]¶
Create a trivial valuation from
key
.EXAMPLES:
sage: valuations.TrivialValuation(QQ) # indirect doctest Trivial valuation on Rational Field
>>> from sage.all import * >>> valuations.TrivialValuation(QQ) # indirect doctest Trivial valuation on Rational Field
valuations.TrivialValuation(QQ) # indirect doctest