This class is used to manipulate fractions, e.g. quotients of integers. It inherits from Quotient but provides methods specifically related to Fractions like simplification methods. A difference with Quotient is that the numerator and denominator are both embedded in a Product.
Possible args for __init__():
Fraction
(num, den)
(sign, num, den)
(sign, num, den, exponent)
(RANDOMLY, sign, num_sign, num_max, deno_sign, deno_max)
a zero-degree-Monomial having a Fraction as coefficient
option: copy_other_fields_from=<fraction> can be used with (num, den) argument to copy all fields except these two</fraction>
Fields:
simplification_in_progress: this boolean indicates if the Fraction is currently being simplified
same_deno_reduction_in_progress: this boolean indicates if the Fraction is currently being reduced to the same denominator as another one
These two properties help to know in which direction the next calculs should be done (simplify further or at the contrary compute the products).
There is also a 'status' field which aimed to replace these two fields (this work is still to do).
Debugging info: