Added a simple difference/negation optimization