=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.22.0
Copyright (c) 1998-2004 Paulo Moura. All Rights Reserved.
% start by loading the example:
| ?- logtalk_load(symdiff(loader)).
...
% simplify the expression x^1 + x0 - x1
| ?- (x**1 + x*0 - x*1)::simplify(S).
S = 0
yes
% differentiate and then simplify the expression 2x^3 + x^2 - 4x
| ?- (2*x**3 + x**2 - 4*x)::diff(D), D::simplify(S).
D = 2*(3*x**2*1)+2*x**1*1-4*1
S = 2*(3*x**2)+2*x-4
% differentiate and then simplify the expression ln(x^2 + 2x - 7) + 4x
| ?- (log(x**2 + 2*x - 7) + 4*x)::diff(D), D::simplify(S).
D = (2*x**1*1+2*1)*(x**2+2*x-7)** -1+4*1
S = (2*x+2)*(x**2+2*x-7)** -1+4