I want Mathematica to simplify my expression using MySymmetricFunction[x,y] = MySymmetricFunction[y,x]
, so that
expr = MySymmetricFunction[x,y]-MySymmetricFunction[y,x];
Simplify[expr]
yields 0.
I tried
MySymmetricFunction[x_, y_] = MySymmetricFunction[y,x]
but here Mathematica assumes recursion.
Please note, that I don't want to implement an explicit version of MySymmetricFunction[x,y]
as of yet.
edit:
As a follow up question:
Why does this give zero
SetAttributes[MySymmetricFunction, Orderless]
MySymmetricFunction[x,y]-MySymmetricFunction[y,x]
But this does not:
<<FeynCalc`
SetAttributes[MySymmetricFunction, Orderless]
Simplify[MySymmetricFunction[pResonance, pRho]*FV[NucleonOut, m] - MySymmetricFunction[pRho, pResonance]*FV[pNucleonOut, m]]
edit2 Thanks to @QuantomDot for pointing out my silly spelling mistake.
MySymmetricFunction
theOrderless
attribute? $\endgroup$Set[MySymmetricFunction, Orderless]
is a complete solution. $\endgroup$SetAttributes
. $\endgroup$Orderless
has interesting effects on pattern matching. $\endgroup$NucleonOut
is not the same aspNucleonOut
. $\endgroup$