Hi!
I often use the following function with a converge loop to simplify expressions:
def tidy (expr):
converge(expr):
distribute(expr)
product_rule(expr)
sort_product(expr)
collect_factors(expr)
return expr
But after today's update of cadabra to the latest version, this loop became infinite. Not for all expressions, but, for example, for this one
{a,b,c,d,f,g,m,n,k,q,r,s,t,u,v,w,x,y,z,m#}::Indices(subspace, position=independent, parent=full);
\partial{#}::PartialDerivative.
expr := ((\phi)**(-2) + A_{a} h^{a b} A_{b}) (\partial_{n}((\phi)**2 A_{m}) + \partial_{m}((\phi)**2 A_{n}));
Also, the problem only occurs if I use this function from a external file
import functions as fun
so, if I use
fun.tidy(expr)
Loop is infinite.