Currently, evaluating a polynomial ring element on a symbolic expression returns a result in Horner form:
sage: pol = QQ['x'](range(10)) sage: pol(x) ((((((((9*x + 8)*x + 7)*x + 6)*x + 5)*x + 4)*x + 3)*x + 2)*x + 1)*x This behavior is of course a side effect of the default generic evaluation algorithm, and I don't think that's the result users would expect. But it is also documented (well, somehow) as a feature, in the sense that calculus/wester.py contains: sage: # (YES) Convert the above to Horner's form. sage: # Verify(Horner(p, x), ((((a[5]*x+a[4])*x sage: # +a[3])*x+a[2])*x+a[1])*x); sage: # We use the trick of evaluating the algebraic poly at a symbolic variable: sage: restore('x') sage: p(x) ((((a4*x + a3)*x + a2)*x + a1)*x + a0)*x And afaik there is no other way to put a symbolic polynomial in Horner form. So, what do you think: is it okay to change this behavior? -- Marc -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.