### Navigation

- index
- modules |
- next |
- previous |
- General Rings, Ideals, and Morphisms »

# Fraction Field of Integral Domains

AUTHORS:

- William Stein (with input from David Joyner, David Kohel, and Joe Wetherell)
- Burcin Erocal

EXAMPLES:

Quotienting is a constructor for an element of the fraction field:

    sage: R.<x> = QQ[]
    sage: (x^2-1)/(x+1)
    x - 1
    sage: parent((x^2-1)/(x+1))
    Fraction Field of Univariate Polynomial Ring in x over Rational Field

The GCD is not taken (since it doesn’t converge sometimes) in the inexact case:

    sage: Z.<z> = CC[]
    sage: I = CC.gen()
    sage: (1+I+z)/(z+0.1*I)
    (z + 1.00000000000000 + I)/(z + 0.100000000000000*I)
    sage: (1+I*z)/(z+1.1)
    (I*z + 1.00000000000000)/(z + 1.10000000000000)

TESTS:

    sage: F = FractionField(IntegerRing())
    sage: F == loads(dumps(F))
    True

    sage: F = FractionField(PolynomialRing(RationalField(),'x'))
    sage: F == loads(dumps(F))
    True

    sage: F = FractionField(PolynomialRing(IntegerRing(),'x'))
    sage: F == loads(dumps(F))
    True

    sage: F = FractionField(PolynomialRing(RationalField(),2,'x'))
    sage: F == loads(dumps(F))
    True

`sage.rings.fraction_field.``FractionField`(R, names=None)

  Create the fraction field of the integral domain `R`.

  INPUT:

  - `R` – an integral domain
  - `names` – ignored

  EXAMPLES:

  We create some example fraction fields:

      sage: FractionField(IntegerRing())
      Rational Field
      sage: FractionField(PolynomialRing(RationalField(),'x'))
      Fraction Field of Univariate Polynomial Ring in x over Rational Field
      sage: FractionField(PolynomialRing(IntegerRing(),'x'))
      Fraction Field of Univariate Polynomial Ring in x over Integer Ring
      sage: FractionField(PolynomialRing(RationalField(),2,'x'))
      Fraction Field of Multivariate Polynomial Ring in x0, x1 over Rational Field

  Dividing elements often implicitly creates elements of the fraction field:

      sage: x = PolynomialRing(RationalField(), 'x').gen()
      sage: f = x/(x+1)
      sage: g = x**3/(x+1)
      sage: f/g
      1/x^2
      sage: g/f
      x^2

  The input must be an integral domain:

      sage: Frac(Integers(4))
      Traceback (most recent call last):
      ...
      TypeError: R must be an integral domain.

class `sage.rings.fraction_field.``FractionField_1poly_field`(R, element_class=<class 'sage.rings.fraction_field_element.FractionFieldElement_1poly_field'>)

  Bases: `sage.rings.fraction_field.FractionField_generic`

  The fraction field of a univariate polynomial ring over a field.

  Many of the functions here are included for coherence with number fields.

  `class_number`()

    Here for compatibility with number fields and function fields.

    EXAMPLES:

        sage: R.<t> = GF(5)[]; K = R.fraction_field()
        sage: K.class_number()
        1

  `maximal_order`()

    Returns the maximal order in this fraction field.

    EXAMPLES:

        sage: K = FractionField(GF(5)['t'])
        sage: K.maximal_order()
        Univariate Polynomial Ring in t over Finite Field of size 5

  `ring_of_integers`()

    Returns the ring of integers in this fraction field.

    EXAMPLES:

        sage: K = FractionField(GF(5)['t'])
        sage: K.ring_of_integers()
        Univariate Polynomial Ring in t over Finite Field of size 5

class `sage.rings.fraction_field.``FractionField_generic`(R, element_class=<type 'sage.rings.fraction_field_element.FractionFieldElement'>, category=Category of quotient fields)

  Bases: `sage.rings.ring.Field`

  The fraction field of an integral domain.

  `base_ring`()

    Return the base ring of `self`; this is the base ring of the ring which this fraction field is the fraction field of.

    EXAMPLES:

        sage: R = Frac(ZZ['t'])
        sage: R.base_ring()
        Integer Ring

  `characteristic`()

    Return the characteristic of this fraction field.

    EXAMPLES:

        sage: R = Frac(ZZ['t'])
        sage: R.base_ring()
        Integer Ring
        sage: R = Frac(ZZ['t']); R.characteristic()
        0
        sage: R = Frac(GF(5)['w']); R.characteristic()
        5

  `construction`()

    EXAMPLES:

        sage: Frac(ZZ['x']).construction()
        (FractionField, Univariate Polynomial Ring in x over Integer Ring)
        sage: K = Frac(GF(3)['t'])
        sage: f, R = K.construction()
        sage: f(R)
        Fraction Field of Univariate Polynomial Ring in t over Finite Field of size 3
        sage: f(R) == K
        True

  `gen`(i=0)

    Return the `i`-th generator of `self`.

    EXAMPLES:

        sage: R = Frac(PolynomialRing(QQ,'z',10)); R
        Fraction Field of Multivariate Polynomial Ring in z0, z1, z2, z3, z4, z5, z6, z7, z8, z9 over Rational Field
        sage: R.0
        z0
        sage: R.gen(3)
        z3
        sage: R.3
        z3

  `is_exact`()

    Return if `self` is exact which is if the underlying ring is exact.

    EXAMPLES:

        sage: Frac(ZZ['x']).is_exact()
        True
        sage: Frac(CDF['x']).is_exact()
        False

  `is_field`(proof=True)

    Return `True`, since the fraction field is a field.

    EXAMPLES:

        sage: Frac(ZZ).is_field()
        True

  `is_finite`()

    Tells whether this fraction field is finite.

    Note

    A fraction field is finite if and only if the associated integral domain is finite.

    EXAMPLE:

        sage: Frac(QQ['a','b','c']).is_finite()
        False

  `ngens`()

    This is the same as for the parent object.

    EXAMPLES:

        sage: R = Frac(PolynomialRing(QQ,'z',10)); R
        Fraction Field of Multivariate Polynomial Ring in z0, z1, z2, z3, z4, z5, z6, z7, z8, z9 over Rational Field
        sage: R.ngens()
        10

  `random_element`(*args, **kwds)

    Returns a random element in this fraction field.

    The arguments are passed to the random generator of the underlying ring.

    EXAMPLES:

        sage: F = ZZ['x'].fraction_field()
        sage: F.random_element()  # random
        (2*x - 8)/(-x^2 + x)

        sage: f = F.random_element(degree=5)
        sage: f.numerator().degree()
        5
        sage: f.denominator().degree()
        5

  `ring`()

    Return the ring that this is the fraction field of.

    EXAMPLES:

        sage: R = Frac(QQ['x,y'])
        sage: R
        Fraction Field of Multivariate Polynomial Ring in x, y over Rational Field
        sage: R.ring()
        Multivariate Polynomial Ring in x, y over Rational Field

`sage.rings.fraction_field.``is_FractionField`(x)

  Test whether or not `x` inherits from `FractionField_generic`.

  EXAMPLES:

      sage: from sage.rings.fraction_field import is_FractionField
      sage: is_FractionField(Frac(ZZ['x']))
      True
      sage: is_FractionField(QQ)
      False

### Navigation

- index
- modules |
- next |
- previous |
- General Rings, Ideals, and Morphisms »