]> www.ginac.de Git - ginac.git/blobdiff - ginac/relational.cpp
- added Dirac gammaL and gammaR objects (chiral projectors)
[ginac.git] / ginac / relational.cpp
index 158c41617fc812f0bb7dab4529b86ed1857d0362..bd3b64421f75c6f1244c002a36e64b1619d7e6b9 100644 (file)
@@ -183,6 +183,17 @@ ex relational::eval(int level) const
        return (new relational(lh.eval(level-1),rh.eval(level-1),o))->setflag(status_flags::dynallocated | status_flags::evaluated);
 }
 
+ex relational::subs(const lst & ls, const lst & lr, bool no_pattern) const
+{
+       const ex & subsed_lh = lh.subs(ls, lr, no_pattern);
+       const ex & subsed_rh = rh.subs(ls, lr, no_pattern);
+
+       if (!are_ex_trivially_equal(lh, subsed_lh) || !are_ex_trivially_equal(rh, subsed_rh))
+               return relational(subsed_lh, subsed_rh, o).basic::subs(ls, lr, no_pattern);
+       else
+               return basic::subs(ls, lr, no_pattern);
+}
+
 ex relational::simplify_ncmul(const exvector & v) const
 {
        return lh.simplify_ncmul(v);