In polytools when two polys are multiplied, the two polys are unified
first:

    def mul(f, g):
        """Multiply two polynomials `f` and `g`. """
        _, per, F, G = f.unify(g)   <======================= there

        try:
            result = F.mul(G)
        except AttributeError: # pragma: no cover
            raise OperationNotSupported(f, 'mul')

        return per(result)

And the first thing that happens when F.mul(G) calls mul in
polyclasses is:

    def mul(f, g):
        """Multiply two multivariate polynomials `f` and `g`. """
        lev, dom, per, F, G = f.unify(g)  <======= the same as the
above.


Why aren't the computed unified values simply passed as arguments with
a flag "unified=True?" rather than being recomputed? Is this a design
issue where it's easier to maintain if one duplicates work rather than
tries to keeptrack of what work has already been done?

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sy...@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.

Reply via email to