X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fclifford.cpp;h=7d4596d04682e3df479d5a97a8e5ce7f6d5eba2a;hp=717e444c41a5c39ac03deee33718447f25602ecc;hb=f78b1f296310b5f1c01b74c9fb10dd33af2a8f4a;hpb=6d7bf9ee5a7ce05cb3a23dae664e781d7325d7b8 diff --git a/ginac/clifford.cpp b/ginac/clifford.cpp index 717e444c..7d4596d0 100644 --- a/ginac/clifford.cpp +++ b/ginac/clifford.cpp @@ -706,13 +706,12 @@ ex dirac_trace(const ex & e, unsigned char rl, const ex & trONE) ex canonicalize_clifford(const ex & e) { // Scan for any ncmul objects - lst srl; + exmap srl; ex aux = e.to_rational(srl); - for (size_t i=0; ifirst; + ex rhs = i->second; if (is_exactly_a(rhs) && rhs.return_type() == return_types::noncommutative @@ -721,7 +720,7 @@ ex canonicalize_clifford(const ex & e) // Expand product, if necessary ex rhs_expanded = rhs.expand(); if (!is_a(rhs_expanded)) { - srl[i] = (lhs == canonicalize_clifford(rhs_expanded)); + i->second = canonicalize_clifford(rhs_expanded); continue; } else if (!is_a(rhs.op(0))) @@ -748,7 +747,7 @@ ex canonicalize_clifford(const ex & e) it[0] = save1; it[1] = save0; sum -= ncmul(v, true); - srl[i] = (lhs == canonicalize_clifford(sum)); + i->second = canonicalize_clifford(sum); goto next_sym; } ++it;