FeynCalc / feyncalc

Mathematica package for algebraic calculations in elementary particle physics.
https://feyncalc.github.io
GNU General Public License v3.0
309 stars 87 forks source link

Minor problem with SUNSimplify #208

Closed NefedovM closed 1 year ago

NefedovM commented 1 year ago

$Version ="12.0.0 for Linux x86 (64-bit) (April 7, 2019)"

development version

produces: (I/2)*SUNF[SUNIndex[FCGV["sun6891"]], SUNIndex[FCGV["sun6892"]], SUNIndex[FCGV["sun6893"]]]

while SUNTrace[SUNT[a].SUNT[b].SUNT[c]] - SUNTrace[SUNT[c].SUNT[b].SUNT[a]] SUNSimplify[%] // InputForm

produces the expected result: (I/2)*SUNF[SUNIndex[a], SUNIndex[b], SUNIndex[c]]

It seems that in the first example, the SUNSimplify have counted variables a,b,c inside SUNTrace twice, decided that these are dummy indices and have renamed them. Of course it is possible to avoid this problem by not putting more than one term into SUNTrace. But I think that linearity of the trace is a reasonable property to expect. This behavior have lead to error messages with some of my older code, which did not pop-up with FC v.9x but started to appear in v. 10.

vsht commented 1 year ago

Hi Maxim,

thanks a lot for this bug report. The output here is clearly incorrect, but it is also rather easy to fix, given that now the source code of SUNSimplify / SUNTrace is very clean and readable.

Please try reinstalling the dev version, the bugfix should be already there.

Cheers, Vladyslav

NefedovM commented 1 year ago

Hi Vladyslav, yes, after reinstalling the dev. version the

SUNTrace[SUNT[a].SUNT[b].SUNT[c] - SUNT[c].SUNT[b].SUNT[a]] SUNSimplify[%] // InputForm

produces

(I/2)*SUNF[SUNIndex[a], SUNIndex[b], SUNIndex[c]]

thank you.

All the best, Maxim

vsht commented 1 year ago

Thanks for the confirmation!