Date: 08/09/15-07:52:33 PM Z

Hi Nikita,

> The proof of this formula is much simpler. All you have to do is to use the well-known formula for three Dirac matrices:
>
> GA[a].GA[b].GA[c]=MT[a, b].GA[c]+MT[b, c].GA[a]-MT[a, c].GA[b]-iGA[5].GA[d].Eps[d, a, b, c];
>
> Just substitute it into both traces, multiply them, get 16 terms and simplify all the things. You will get required answer which don't know anything about the structure of A and B. So it is valid for any A and B.

well, this identity is actually a special case of SPVAT (which, however,
is possible only in 4D):

DiracReduce[GA[a, b, c]]

-> I GA[\$AL[\$30]].GA[5] LC[a, b, c, \$AL[\$30]] + GA[c] MT[a, b] -
GA[b] MT[a, c] + GA[a] MT[b, c]

Anyway, I think that I understood what happens here. This seems to be
related to the products of two epsilon tensors that appear in the traces
on the LHS. FeynCalc by default converts those to a sum of kronecker
deltas, according to the standard formula

Contract[LC[x1, x2, x3, x4] LC[y1, y2, y3, y4]]

However, in your case this makes expressions more complex than they
actually are. If we avoid this contraction via

<< FeynCalc`

\$West = False;

LHSp1 = DiracSimplify[
DiracReduce[GA[y1, y2, y3]].GA[a].GS[k].GA[b].(1 - GA[5]),
InsideDiracTrace -> True] // Tr

LHSp2 = DiracSimplify[
DiracReduce[GA[z1, z2, z3]].GA[b].GS[p].GA[a].(1 - GA[5]),
InsideDiracTrace -> True] // Tr

RHS = 4*Tr[GA[y1, y2, y3].GS[p].(1 - GA[5])]*
Tr[GA[z1, z2, z3].GS[k].(1 - GA[5])] // Contract

then

Contract[LHSp1*LHSp2] - RHS

returns zero. On the other hand, doing

res1 = (Contract[LHSp1]*Contract[LHSp2] - RHS) // Contract // Schouten

get us something that probably would require multiple application of
Schouten's identity to simplify it to zero...

So it seems like the main issue here is again Schouten's identity and
our inability to automatize it's applications to ensure maximal
simplification.

If it is the same in FORM, then this is certainly not a bug of FORM,
just inconvenience.

Cheers,