# HG changeset patch
# User Burcin Erocal <burcin@erocal.org>
# Date 1306347657 -7200
# Node ID 0520390b5324147c53825e3e08caec838d6ee308
# Parent 6c50fda0b1a7e899ed2bbfb80a8a5c352c7030c4
trac 10679: add numerator() method to quadratic number field elements
sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic
defines denominator(), but not numerator(). This causes symbolic expressions
to be typeset wrong, since pynac expects an element class to also implement
numerator() if denominator() is present.
diff --git a/sage/rings/number_field/number_field_element_quadratic.pyx b/sage/rings/number_field/number_field_element_quadratic.pyx
|
a
|
b
|
|
| 1178 | 1178 | const = lin = Rational(0) |
| 1179 | 1179 | return const.denominator().lcm(lin.denominator()) |
| 1180 | 1180 | |
| 1181 | | |
| | 1181 | def numerator(self): |
| | 1182 | """ |
| | 1183 | Return self*self.denominator(). |
| | 1184 | |
| | 1185 | EXAMPLES:: |
| | 1186 | |
| | 1187 | sage: K.<a> = NumberField(x^2+x+41) |
| | 1188 | sage: b = (2*a+1)/6 |
| | 1189 | sage: b.denominator() |
| | 1190 | 6 |
| | 1191 | sage: b.numerator() |
| | 1192 | 2*a + 1 |
| | 1193 | """ |
| | 1194 | return self*self.denominator() |
| | 1195 | |
| 1182 | 1196 | cdef bint is_rational_c(self): |
| 1183 | 1197 | return mpz_cmp_ui(self.b, 0) == 0 |
| 1184 | 1198 | |