my requirement is like "x+y+x " and 2*x+y are different but "x+y+x" and "x+x+y" are same ...
if i use evaluate ===False it make both cases inequal. for now i have found one workaround . at the equality checking time i am converting tuples to list and sorting them ,also at the time when i am creating Add or Mul Class using below piece of code (in operation class). flatten_args = [] > for arg in args: > if (arg.__class__==cls): > flatten_args.extend(arg.args) > else: > flatten_args.append(arg) > > obj = Expr.__new__(cls, *flatten_args) Hoping this should work .. On Fri, Nov 11, 2011 at 6:38 AM, Chris Smith <[email protected]> wrote: > Why is it that you think you need to use evaluate=False? > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/sympy?hl=en. > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
