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
- class sage.rings.valuation.trivial_valuation.TrivialDiscretePseudoValuation(parent)#
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
- lift(X)#
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
- reduce(x)#
Reduce
x
modulo the positive elements of this valuation.EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.reduce(1) 0
- residue_ring()#
Return the residue ring of this valuation.
EXAMPLES:
sage: valuations.TrivialPseudoValuation(QQ).residue_ring() Quotient of Rational Field by the ideal (1)
- value_group()#
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.
- class sage.rings.valuation.trivial_valuation.TrivialDiscretePseudoValuation_base(parent)#
Bases:
DiscretePseudoValuation
Base class for code shared by trivial valuations.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(ZZ); v Trivial pseudo-valuation on Integer Ring
- is_negative_pseudo_valuation()#
Return whether this valuation attains the value \(-\infty\).
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.is_negative_pseudo_valuation() False
- is_trivial()#
Return whether this valuation is trivial.
EXAMPLES:
sage: v = valuations.TrivialPseudoValuation(QQ) sage: v.is_trivial() True
- uniformizer()#
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
- class sage.rings.valuation.trivial_valuation.TrivialDiscreteValuation(parent)#
Bases:
TrivialDiscretePseudoValuation_base
,DiscreteValuation
The trivial valuation that is zero on non-zero elements.
EXAMPLES:
sage: v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field
- extensions(ring)#
Return the unique extension of this valuation to
ring
.EXAMPLES:
sage: v = valuations.TrivialValuation(ZZ) sage: v.extensions(QQ) [Trivial valuation on Rational Field]
- lift(X)#
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
- reduce(x)#
Reduce
x
modulo the positive elements of this valuation.EXAMPLES:
sage: v = valuations.TrivialValuation(QQ) sage: v.reduce(1) 1
- residue_ring()#
Return the residue ring of this valuation.
EXAMPLES:
sage: valuations.TrivialValuation(QQ).residue_ring() Rational Field
- value_group()#
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
- class sage.rings.valuation.trivial_valuation.TrivialValuationFactory(clazz, parent, *args, **kwargs)#
Bases:
UniqueFactory
Create a trivial valuation on
domain
.EXAMPLES:
sage: v = valuations.TrivialValuation(QQ); v Trivial valuation on Rational Field sage: v(1) 0
- create_key(domain)#
Create a key that identifies this valuation.
EXAMPLES:
sage: valuations.TrivialValuation(QQ) is valuations.TrivialValuation(QQ) # indirect doctest True
- create_object(version, key, **extra_args)#
Create a trivial valuation from
key
.EXAMPLES:
sage: valuations.TrivialValuation(QQ) # indirect doctest Trivial valuation on Rational Field