=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.26.2

Copyright (c) 1998-2005 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

yes


% 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

yes