Jump to: navigation, search

FullSimplify is routine of the Mathmatica language. It is used to simplify expressions

The call may look as follows:


or FullSimplify[\(espression\), {\(hint1\), \(hint2\),..}]

where "hints" are logical expressions that may be useful at the simplification.


Syntax of routine FullSimplify is similar to that of routine Simplify

However, the FullSimplify does a little bit deeper search for possible simplifications of the expression, than just Simplify.


Routine FullSimplify does not seem to handle well expressions with imaginary unity , I=\Sqrt[-1] .

Here is he example Let

b = (-1 + Exp[(-2*I)*q - 2*s])*(-1 + Exp[(2*I)*q - 2*s])

c = (-1 + (q - I*s)^2)*(-1 + (q + I*s)^2)

a = b*c

U = FullSimplify[a]

The last evaluation does \( \left(-1+\mathrm{e}^{-2 s-2 i q}\right) \left(-1+\mathrm{e}^{-2 s+2 i q}\right) \left(-1+(q-i s)^2\right) \left(-1+(q+i s)^2\right) \)

instead of expected \(2 \mathrm{e}^{-2 s} \left(q^4+2 q^2 \left(s^2-1\right)+\left(s^2+1\right)^2\right) (\cosh (2 s)-\cos (2 q)) \)

Then, expression

FullSimplify[Im[U], {q>0, s>0}]

does \(\Im\left(\left(-1+e^{-2 s-2 i q}\right) \left(-1+e^{-2 s+2 i q}\right) \left(-1+(q-i s)^2\right) \left(-1+(q+i s)^2\right)\right) \)

instead of expected 0.

This can be verified with code

FullSimplify[b] FullSimplify[c]


https://reference.wolfram.com/language/ref/FullSimplify.html FullSimplify[expr] tries a wide range of transformations on expr involving elementary and special functions and returns the simplest form it finds.
FullSimplify[expr,assum] does simplification using assumptions.


Bug, Mathematica, Mathematics Wolfram research,,