On Mon, Jun 8, 2009 at 12:36 PM, Aaron S. Meurer<asmeu...@gmail.com> wrote: > I wouldn't bother checking. If the expression is not a fraction, yes the > denom term will be 1, but the code I suggested will do nothing to it. >>>> (-x).could_extract_minus_sign() > True >>>> n,d = (-x).as_numer_denom() >>>> n > -x >>>> d > 1 >>>> -n/-d > -x > One thing you might want to consider is that as_numer_denom() seems to pull > together Adds with a common denominator >>>> (x-y).as_numer_denom() > (x - y, 1) >>>> (x-y/(1-x)).as_numer_denom() > (-y + x⋅(1 - x), 1 - x) >>>> (x-y/(1-x)).could_extract_minus_sign() > True >>>> n, d = (x-y/(1-x)).as_numer_denom() >>>> -n/-d > -(y - x*(1 - x))/(1 - x) >>>> print simplify((x-y/(1-x))) > (x - y - x**2)/(1 - x) >>>> ((x - y - x**2)/(1 - x)).could_extract_minus_sign() > False > I would recommend putting the code at the end of simplify. As you can see, > the above looks much nicer if you run it through simplify first.
Yes -- consider maybe writing a new function that will just put a fraction into the canonical form (using the approach above) and then call it at the end of simplify. Ondrej --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to sympy@googlegroups.com To unsubscribe from this group, send email to sympy+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sympy?hl=en -~----------~----~----~----~------~----~------~--~---