- if (num == 5)
- return trONE * I * eps0123(e.op(1).op(1), e.op(2).op(1), e.op(3).op(1), e.op(4).op(1));
-
- // Tr gamma5 gamma.mu1 gamma.mu2 gamma.mu3 gamma.mu4 gamma.mu5 gamma.mu6 = ...
- if (num == 7) {
- ex i1 = e.op(1).op(1), i2 = e.op(2).op(1),
- i3 = e.op(3).op(1), i4 = e.op(4).op(1),
- i5 = e.op(5).op(1), i6 = e.op(6).op(1);
- return trONE * I * (lorentz_g(i1, i2) * eps0123(i3, i4, i5, i6)
- - lorentz_g(i1, i3) * eps0123(i2, i4, i5, i6)
- + lorentz_g(i1, i4) * eps0123(i2, i3, i5, i6)
- - lorentz_g(i1, i5) * eps0123(i2, i3, i4, i6)
- + lorentz_g(i1, i6) * eps0123(i2, i3, i4, i5)
- + lorentz_g(i2, i3) * eps0123(i1, i4, i5, i6)
- - lorentz_g(i2, i4) * eps0123(i1, i3, i5, i6)
- + lorentz_g(i2, i5) * eps0123(i1, i3, i4, i6)
- - lorentz_g(i2, i6) * eps0123(i1, i3, i4, i5)
- + lorentz_g(i3, i4) * eps0123(i1, i2, i5, i6)
- - lorentz_g(i3, i5) * eps0123(i1, i2, i4, i6)
- + lorentz_g(i3, i6) * eps0123(i1, i2, i4, i5)
- + lorentz_g(i4, i5) * eps0123(i1, i2, i3, i6)
- - lorentz_g(i4, i6) * eps0123(i1, i2, i3, i5)
- + lorentz_g(i5, i6) * eps0123(i1, i2, i3, i4));
+ if (num == 5) {
+ ex b1, i1, b2, i2, b3, i3, b4, i4;
+ base_and_index(e.op(1), b1, i1);
+ base_and_index(e.op(2), b2, i2);
+ base_and_index(e.op(3), b3, i3);
+ base_and_index(e.op(4), b4, i4);
+ return trONE * I * (eps0123(i1, i2, i3, i4) * b1 * b2 * b3 * b4).simplify_indexed();