Suppose I have a (multivariate) polynomial with coefficients in $\mathbb Z$ or $\mathbb Q$, given in fully expanded form. How can I simplify this to reduce the number of elementary operations (addition, subtraction, multiplication) used in its representation (and therefore evaluation once you substitute values for the indeterminates)? I'm not interested in the case where the polynomial as a whole factorizes, but instead I'm searching for a clever way to factorize parts of it.
Example: how could you turn
$$x^{2} y - x y^{2} - 2 y^{3} + x^{2} - x y - 2 y^{2} - x + 2 y + 1$$
into
$$((x+y)(1+y)-1)(x-2y)+1$$
or something comparably simple? The first form has 20 elementary operations, 12 multiplications, 3 additions and 5 subtractions. The second form has 3 multiplications, 3 additions and 2 subtractions, for a total of 8 operations. I'm not sure this is optimal, but it certainly is a lot better than the fully expanded form. Factorizing the whole polynomial won't help, since it is irreducible over $\mathbb Q$.
A perfect solution would find a representation with guaranteed minimal number of operations in polynomial time. But I'm not sure if this is even possible, so I'm also interested in solutions which don't guarantee minimality, or don't guarantee polynomial runtime, as long as they work reasonably well for practical use cases.