Ensure monotonicity of termination requests.

Once termination is requested, SMTInterpol will keep this state until the next
pop command which will restore the previous state.
Fixed some PMD warnings and infos.

Some variables are made final others are not declared before an exit point of
the function that does not depend upon them.
Fixed a bug in the proof production.

We now normalize every SMTAffineTerm as soon as possible (when creating them).
This fixes a bug in the proof where normalization was not tracked but actually
changed the resulting term.
Better neutral element removal in DeltaDebugger.

The delta debugger now uses binary search to remove neutral elements instead of
the previous "all or nothing" approach.
Additionally, this patch adds a -f switch that replaces an existing output file
if it already exists.
Don't rebuild parsers.

The buildfile was patched to only rebuild the parsers if the .cup or .flex
files or the java-cup.jar are changed.  Furthermore, an additional target
clean_parsers is introduced to delete the generated parser source files.
Common subexpression elimination in LoggingScript.

Added a new constructor that sets up the LoggingScript to use common
subexpression elimination in the output of assert, define-fun, and getValue
commands.  To be compatible with existing code, the old constructors do not use
common subexpression elimination.
Merge branch 'master' into array