1 This file contains a summary of important user-visible changes.
7 * SMT-LIB-compliant support for abs, to_real, to_int, is_int, which were
9 * New bv2nat/int2bv operators for bitvector/integer inter-compatibility.
10 * Support in linear logics for /, div, and mod by constants (with the
11 --rewrite-divk command line option).
12 * Parsing support for TPTP's TFF and TFA formats.
13 * A new theory of strings: word (dis-)equations, length constraints,
15 * Increased compliance to SMT-LIBv2, numerous bugs and usability issues
17 * New :command-verbosity SMT option to silence success and error messages
18 on a per-command basis, and API changes to Command infrastructure to
22 * It is no longer permitted to request model or proof generation if there's
23 been an intervening push/pop.
24 * User-defined symbols (define-funs) are no longer reported in the output
25 of get-model commands.
26 * Exit codes are now more standard for UNIX command-line tools. Exit code
27 zero means no error---but the result could be sat, unsat, or unknown---and
31 * Expr::substitute() now capable of substituting operators (e.g.,
32 function symbols under an APPLY_UF)
33 * Numerous improvements to the Java language bindings
38 * Real arithmetic now has three simplex solvers for exact precision linear
39 arithmetic: the classical dual solver and two new solvers based on
40 techniques for minimizing the sum of infeasibilities. GLPK can now be used
41 as a heuristic backup to the exact precision solvers. GLPK must be enabled
42 at configure time. See --help for more information on enabling these solvers.
43 * added support for "bit0" and "bit1" bitvector constants in SMT-LIB v1.2
44 * support for theory "alternates": new ability to prototype new decision
45 procedures that are selectable at runtime
51 * bit-vector solver now has a specialized decision procedure for unsigned bit-
53 * numerous important bug fixes, performance improvements, and usability
55 * support for multiline input in interactive mode
56 * Win32-building support via mingw
57 * SMT-LIB get-model output now is easier to machine-parse: contains (model...)
58 * user patterns for quantifier instantiation are now supported in the
60 * --finite-model-find was incomplete when using --incremental, now fixed
61 * the E-matching procedure is slightly improved
62 * Boolean terms are now supported in datatypes
63 * tuple and record support have been added to the compatibility library
64 * driver verbosity change: for printing all commands as they're executed, you
65 now need verbosity level >= 3 (e.g., -vvv) instead of level 1 (-v). This
66 allows tracing the solver's activities (with -v and -vv) without having too
68 * to make CVC4 quieter in abnormal (e.g., "warning" conditions), you can
69 use -q. Previously, this would silence all output (including "sat" or
70 "unsat") as well. Now, single -q silences messages and warnings, and
71 double -qq silences all output (except on exception or signal).
73 -- Morgan Deters <mdeters@cs.nyu.edu> Thu, 05 Dec 2013 14:22:26 -0500