[GiNaC-list] question about lorentz_g contract with sy_anti tensor

Feng Feng F.Feng at outlook.com
Thu May 23 02:57:21 CEST 2019

Hi all,

I wonder is there a way or method to simplify the expression with a sy_anti tensor contracted with a lorent_g to 0?

Please have a look at the following code, I expect ret is 0, and the output looks like “A~b~a.c~c”, it is actually

0 due to the sy_anti, but I wonder, is there a way or a method to simplify those expression directly to 0?

Thanks very much!

using namespace GiNaC;

using namespace std;

int main(int argc, char** argv) {

    symbol a("a"), b("b"), c("c"), d("d"), A("A");

    symbol D("D");

    varidx ia(a,D), ib(b,D), ic(c,D), id(d,D);

    auto ret = indexed(A, sy_anti(0,1,2,3), ia,ib,ic,id) * lorentz_g(ic.toggle_variance(), id.toggle_variance());

    cout << simplify_indexed(ret) << endl;

    return 0;


Best regards!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cebix.net/pipermail/ginac-list/attachments/20190523/75affda0/attachment.html>

More information about the GiNaC-list mailing list