Number field elements (abstract base class)

class sage.rings.number_field.number_field_element_base.NumberFieldElement_base[source]

Bases: FieldElement

Abstract base class for NumberFieldElement.

This class is defined for the purpose of isinstance() tests. It should not be instantiated.

EXAMPLES:

sage: x = polygen(ZZ, 'x')
sage: k.<a> = NumberField(x^3 + x + 1)                                          # needs sage.rings.number_field
sage: isinstance(a, sage.rings.number_field.number_field_element_base.NumberFieldElement_base)                  # needs sage.rings.number_field
True
>>> from sage.all import *
>>> x = polygen(ZZ, 'x')
>>> k = NumberField(x**Integer(3) + x + Integer(1), names=('a',)); (a,) = k._first_ngens(1)# needs sage.rings.number_field
>>> isinstance(a, sage.rings.number_field.number_field_element_base.NumberFieldElement_base)                  # needs sage.rings.number_field
True
x = polygen(ZZ, 'x')
k.<a> = NumberField(x^3 + x + 1)                                          # needs sage.rings.number_field
isinstance(a, sage.rings.number_field.number_field_element_base.NumberFieldElement_base)                  # needs sage.rings.number_field

By design, there is a unique direct subclass:

sage: len(sage.rings.number_field.number_field_element_base.NumberFieldElement_base.__subclasses__()) <= 1
True
>>> from sage.all import *
>>> len(sage.rings.number_field.number_field_element_base.NumberFieldElement_base.__subclasses__()) <= Integer(1)
True
len(sage.rings.number_field.number_field_element_base.NumberFieldElement_base.__subclasses__()) <= 1