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.