Hi!
I might need to think a bit more about the general procedure for
this problem. What Leo wrote is probably a good way to do it.
However, I can say the following.
Converting Christoffel symbols to partial derivatives is probably
the opposite of what you want to do.
What I would do is the following:
1) Convert all derivatives of the metric to Christoffel symbols.
2) Convert all derivatives of Christoffel symbols to curvature.
3) Contract all metrics.
4) Canonicalize (with metric).
There are two important things to think about here.
1) If you have partial derivatives in your expression then the
canonicalization will be much more complicated, can take more time
and there might be problems moving indices up and down.
2) If you contract the metrics before canonicalization, you will
reduce the number of indices. With fewer indices, the
canonicalization should be easier and quicker.
Unfortunately it is difficult to estimate how long time the
canonicalization will take. Large size of the groups does usually
not give very slow canonicalization. It is the combination of
large groups and some structure (or bad luck) that gives slow
canonicalization.
If the ideas above does not help to simplify things, one might
need to think about irreducible and trace decompositions.
Unfortunately, this is a bit complicated to do in tensor language.
There is a new package that might be able to do some of that:
https://github.com/THelpin/xBrauer_Bundle
It might also be possible to do the calculations in spinor
language. The SymManipulator and SymSpin packages can be used to
do the irreducible and trace decompositions in that case. This
will require some thought on how to set it up in the best way
though.
Regards
Thomas