# Valuations which are scaled versions of another valuation#

EXAMPLES:

sage: 3*ZZ.valuation(3)

>>> from sage.all import *
>>> Integer(3)*ZZ.valuation(Integer(3))


AUTHORS:

• Julian RĂ¼th (2016-11-10): initial version

class sage.rings.valuation.scaled_valuation.ScaledValuationFactory[source]#

Bases: UniqueFactory

Return a valuation which scales the valuation base by the factor s.

EXAMPLES:

sage: 3*ZZ.valuation(2) # indirect doctest

>>> from sage.all import *
>>> Integer(3)*ZZ.valuation(Integer(2)) # indirect doctest

create_key(base, s)[source]#

Create a key which uniquely identifies a valuation.

create_object(version, key)[source]#

Create a valuation from key.

class sage.rings.valuation.scaled_valuation.ScaledValuation_generic(parent, base_valuation, s)[source]#

A valuation which scales another base_valuation by a finite positive factor s.

EXAMPLES:

sage: v = 3*ZZ.valuation(3); v

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(3)); v

extensions(ring)[source]#

Return the extensions of this valuation to ring.

EXAMPLES:

sage: v = 3*ZZ.valuation(5)
sage: v.extensions(GaussianIntegers().fraction_field())                     # needs sage.rings.number_field
[3 * [ 5-adic valuation, v(x + 2) = 1 ]-adic valuation,
3 * [ 5-adic valuation, v(x + 3) = 1 ]-adic valuation]

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(5))
>>> v.extensions(GaussianIntegers().fraction_field())                     # needs sage.rings.number_field
[3 * [ 5-adic valuation, v(x + 2) = 1 ]-adic valuation,
3 * [ 5-adic valuation, v(x + 3) = 1 ]-adic valuation]

lift(F)[source]#

Lift F from the residue_field() of this valuation into its domain.

EXAMPLES:

sage: v = 3*ZZ.valuation(2)
sage: v.lift(1)
1

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(2))
>>> v.lift(Integer(1))
1

reduce(f)[source]#

Return the reduction of f in the residue_field() of this valuation.

EXAMPLES:

sage: v = 3*ZZ.valuation(2)
sage: v.reduce(1)
1

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(2))
>>> v.reduce(Integer(1))
1

residue_ring()[source]#

Return the residue field of this valuation.

EXAMPLES:

sage: v = 3*ZZ.valuation(2)
sage: v.residue_ring()
Finite Field of size 2

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(2))
>>> v.residue_ring()
Finite Field of size 2

restriction(ring)[source]#

Return the restriction of this valuation to ring.

EXAMPLES:

sage: v = 3*QQ.valuation(5)
sage: v.restriction(ZZ)

>>> from sage.all import *
>>> v = Integer(3)*QQ.valuation(Integer(5))
>>> v.restriction(ZZ)

uniformizer()[source]#

Return a uniformizing element of this valuation.

EXAMPLES:

sage: v = 3*ZZ.valuation(2)
sage: v.uniformizer()
2

>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(2))
>>> v.uniformizer()
2

value_semigroup()[source]#

Return the value semigroup of this valuation.

EXAMPLES:

sage: v2 = QQ.valuation(2)
sage: (2*v2).value_semigroup()
Additive Abelian Semigroup generated by -2, 2

>>> from sage.all import *
>>> v2 = QQ.valuation(Integer(2))
>>> (Integer(2)*v2).value_semigroup()
Additive Abelian Semigroup generated by -2, 2