class_docstr: Abstract base class for the domain :ref:`QQ`.
  
  The :py:class:`RationalField` class represents the field of rational
  numbers $\mathbb{Q}$ as a :py:class:`~.Domain` in the domain system.
  :py:class:`RationalField` is a superclass of
  :py:class:`PythonRationalField` and :py:class:`GMPYRationalField` one of
  which will be the implementation for :ref:`QQ` depending on whether either
  of ``gmpy`` or ``gmpy2`` is installed or not.
  
  See also
  ========
  
  Domain
class_docstr_tok: ["Abstract","base","class","for","the","domain",":","ref",":","`","QQ","`",".","The",":","py",":","class",":","`","RationalField","`","class","represents","the","field","of","rational","numbers","$","\\mathbb","{","Q","}","$","as","a",":","py",":","class",":","`","~.Domain","`","in","the","domain","system",".",":","py",":","class",":","`","RationalField","`","is","a","superclass","of",":","py",":","class",":","`","PythonRationalField","`","and",":","py",":","class",":","`","GMPYRationalField","`","one","of","which","will","be","the","implementation","for",":","ref",":","`","QQ","`","depending","on","whether","either","of","``","gmpy","``","or","``","gmpy2","``","is","installed","or","not",".","See","also","========","Domain"]
code: def __init__(self):
      pass
  
imports: from sympy.external.gmpy import MPQ
  from sympy.polys.domains.groundtypes import SymPyRational, is_square, sqrtrem
  from sympy.polys.domains.characteristiczero import CharacteristicZero
  from sympy.polys.domains.field import Field
  from sympy.polys.domains.simpledomain import SimpleDomain
  from sympy.polys.polyerrors import CoercionFailed
  from sympy.utilities import public
label_desc: Use image node_id 1 to create a new RationalField object from inherited base classes: Field, CharacteristicZero, SimpleDomain with example: obj = RationalField()