using

```
tr{#}::Trace.
\nabla{#}::Derivative.
{A,B}::Depends(\nabla{#}).
A::ImplicitIndex.
ex:=tr{\nabla{A} B};
untrace(_);
```

I want to get $B tr{\nabla{A}}$, but it's invalid. When I rewrite it to

```
tr{#}::Trace.
\nabla{#}::Derivative.
{A,B}::Depends(\nabla{#}).
{\nabla{#},A}::ImplicitIndex.
ex:=tr{\nabla{A B}};
product_rule(_);
untrace(_);
```

'product_rule' become invalid. How to get the right result? i.e. $B tr{\nabla{A}}+\nabla{B} tr{A}$