Function Field Morphisms

AUTHORS:

  • William Stein (2010): initial version
  • Julian Rueth (2011-09-14): refactored class hierarchy

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: K.hom(1/x)
Morphism of function fields defined by x |--> 1/x
sage: L.<y> = K.extension(y^2-x)
sage: K.hom(y)
Morphism of function fields defined by x |--> y
sage: L.hom([y,x])
Morphism of function fields defined by y |--> y,  x |--> x
sage: L.hom([x,y])
Traceback (most recent call last):
...
ValueError: invalid morphism
class sage.rings.function_field.maps.FunctionFieldIsomorphism

Bases: sage.categories.morphism.Morphism

A base class for isomorphisms between function fields and vector spaces.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: isinstance(f, sage.rings.function_field.maps.FunctionFieldIsomorphism)
True
is_injective()

Return True, since this isomorphism is injective.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: f.is_injective()
True
is_surjective()

Return True, since this isomorphism is surjective.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: f.is_surjective()
True
class sage.rings.function_field.maps.FunctionFieldMorphism(parent, im_gen, base_morphism)

Bases: sage.rings.morphism.RingHomomorphism

Base class for morphisms between function fields.

is_injective()

Returns True since homomorphisms of fields are injective.

EXAMPLES:

sage: K.<x> = FunctionField(QQ)
sage: f = K.hom(1/x); f
Morphism of function fields defined by x |--> 1/x
sage: f.is_injective()
True
class sage.rings.function_field.maps.FunctionFieldMorphism_polymod(parent, im_gen, base_morphism)

Bases: sage.rings.function_field.maps.FunctionFieldMorphism

Morphism from a finite extension of a function field to a function field.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x)
sage: f = L.hom(-y); f
Morphism of function fields defined by y |--> -y
class sage.rings.function_field.maps.FunctionFieldMorphism_rational(parent, im_gen)

Bases: sage.rings.function_field.maps.FunctionFieldMorphism

Morphism from a rational function field to a function field.

EXAMPLES:

sage: K.<x> = FunctionField(QQ)
sage: f = K.hom(1/x); f
Morphism of function fields defined by x |--> 1/x
class sage.rings.function_field.maps.MapFunctionFieldToVectorSpace(K, V)

Bases: sage.rings.function_field.maps.FunctionFieldIsomorphism

An isomorphism from a function field to a vector space.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space(); t
Isomorphism morphism:
  From: Function field in y defined by y^2 - x*y + 4*x^3
  To:   Vector space of dimension 2 over Rational function field in x over Rational Field
codomain()

Return the vector space which is the domain of this isomorphism.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: t.codomain()
Vector space of dimension 2 over Rational function field in x over Rational Field
domain()

Return the function field which is the domain of this isomorphism.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: t.domain()
Function field in y defined by y^2 - x*y + 4*x^3
class sage.rings.function_field.maps.MapVectorSpaceToFunctionField(V, K)

Bases: sage.rings.function_field.maps.FunctionFieldIsomorphism

An isomorphism from a vector space to a function field.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space(); f
Isomorphism morphism:
  From: Vector space of dimension 2 over Rational function field in x over Rational Field
  To:   Function field in y defined by y^2 - x*y + 4*x^3
codomain()

Return the function field which is the codomain of this isomorphism.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: f.codomain()
Function field in y defined by y^2 - x*y + 4*x^3
domain()

Return the vector space which is the domain of this isomorphism.

EXAMPLES:

sage: K.<x> = FunctionField(QQ); R.<y> = K[]
sage: L.<y> = K.extension(y^2 - x*y + 4*x^3)
sage: V, f, t = L.vector_space()
sage: f.domain()
Vector space of dimension 2 over Rational function field in x over Rational Field

Previous topic

Ideals in Function Fields

Next topic

Factories to construct Function Fields

This Page