Welcome to Cadabra Q&A, where you can ask questions and receive answers from other members of the community.
+1 vote

Thanks, your explanation makes sense.

Now with all the substitution rules I have ended up with a term like

\begin{equation}{}Ricci = -6\partial_{0}{}^{0}{a} {a}^{-3}-16\partial_{0}{a} \partial^{0}{a} {a}^{-4}+16\delta_{0}{}^{0} \partial_{0}{a} \partial^{0}{a} {a}^{-4}\end{equation}

Notice the $\delta_{0}{}^{0}$.

I can't figure out how to substitute this away, it gets turned into one right away in the substitution rule and therefore the pattern can't match.

related to an answer for: Only one component of derivative non zero
in General questions by (520 points)

Forgot to mention that doing an eliminate_kronecker doesn't help

You wrote as a separate question (please don't do that):

"Meant to say that simplifying to one immediately is the problem, since the /delta 0 0 term was created in a prior substitution rule somehow through some combination of things. Now I cannot get rid of it because of the immediate conversion.

Does that make sense?"

No, I don't understand. Does it, or does it not keep the \delta^{0}_{0} in your expression? If it does, that's a bug, please send me a sample notebook that shows it (try to trim it down to minimal form).

Never mind, I see how this can happen. Will fix.

For status updates see the bug report at https://github.com/kpeeters/cadabra2/issues/69

1 Answer

+1 vote
\delta{#}::KroneckerDelta;
ex:= \delta^{0}_{0};

simplifies to '1' immediately. If it doesn't do that for you, it's a bug; send me the notebook by email and I'll have a look.

by (76.7k points)
...