Valuations which are scaled versions of another valuation#

EXAMPLES:

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

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
3 * 2-adic valuation
>>> from sage.all import *
>>> Integer(3)*ZZ.valuation(Integer(2)) # indirect doctest
3 * 2-adic valuation
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]#

Bases: DiscreteValuation

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

EXAMPLES:

sage: v = 3*ZZ.valuation(3); v
3 * 3-adic valuation
>>> from sage.all import *
>>> v = Integer(3)*ZZ.valuation(Integer(3)); v
3 * 3-adic valuation
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)
3 * 5-adic valuation
>>> from sage.all import *
>>> v = Integer(3)*QQ.valuation(Integer(5))
>>> v.restriction(ZZ)
3 * 5-adic valuation
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