We need to just remove this automatic distribution of numbers. Until we do that, we will continue to have confusing behavior like this. See https://github.com/sympy/sympy/issues/4596 for more information.
Aaron Meurer On Fri, Mar 27, 2015 at 1:47 PM, Paul Royik <distantjob...@gmail.com> wrote: > This dosn't seem reasonable. > Expanding goes on the line Mul(*numer). Mul(*numer, evaluate=False) fixes > things. > > > On Friday, March 27, 2015 at 4:31:58 PM UTC+2, Chris Smith wrote: >> >> That seems reasonable since fraction is allowing the expr to rewrite: >> >> >>> 2*e >> 2*(x + 1)/(x - 1) >> >>> fraction(_) >> (2*x + 2, x - 1) >> >> >> On Friday, March 27, 2015 at 4:28:28 AM UTC-5, Paul Royik wrote: >>> >>> Both fraction and as_numer_denom return (2x+2, sin(x)+1) for expression >>> 2(x+1)/(sin(x)+1), i.e. they rewrite numerator and denominator. >>> I suggest simple fix for fraction: substitute last line return >>> Mul(*numer), Mul(*denom) with return Mul(*numer, evaluate=False), >>> Mul(*denom, evaluate=False) >>> For as_numer_denom fix seems harder to implement. >>> >>> Is it possible to change them? >>> >>> >>> On Friday, March 27, 2015 at 1:40:39 AM UTC+2, Aaron Meurer wrote: >>>> >>>> It looks like fraction takes into account assumptions, but on the >>>> other hand, it doesn't do any rewriting of the expression to combine >>>> sums of fractions (e.g., fraction(1/x + 1/y) gives (1/x + 1/y, 1), >>>> whereas (1/x + 1/y).as_numer_denom() gives (x + y, x*y)). >>>> >>>> Aaron Meurer >>>> >>>> On Thu, Mar 26, 2015 at 12:09 PM, Paul Royik <distan...@gmail.com> >>>> wrote: >>>> > I used as_numer_denom earlier and now found fraction. >>>> > Is there any difference between them? >>>> > >>>> > -- >>>> > You received this message because you are subscribed to the Google >>>> > Groups >>>> > "sympy" group. >>>> > To unsubscribe from this group and stop receiving emails from it, send >>>> > an >>>> > email to sympy+un...@googlegroups.com. >>>> > To post to this group, send email to sy...@googlegroups.com. >>>> > Visit this group at http://groups.google.com/group/sympy. >>>> > To view this discussion on the web visit >>>> > >>>> > https://groups.google.com/d/msgid/sympy/64b73b09-213c-4735-a80b-f5a37a4c2766%40googlegroups.com. >>>> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sympy+unsubscr...@googlegroups.com. > To post to this group, send email to sympy@googlegroups.com. > Visit this group at http://groups.google.com/group/sympy. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/c592330a-4b9c-4812-a342-4e44573aac2b%40googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6JkduUYVU2juEMQ4Gz0mRb18HYTGnzL2_jXULT%2Bn5dQww%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.