Parsing and infrastructure support for SMT-LIBv2.5 input and output languages.
authorMorgan Deters <mdeters@cs.nyu.edu>
Thu, 23 Oct 2014 07:11:18 +0000 (03:11 -0400)
committerMorgan Deters <mdeters@cs.nyu.edu>
Thu, 23 Oct 2014 23:40:41 +0000 (19:40 -0400)
commitc6436566dec99c0ed6794fa34b9b67a7e47918b0
tree5555462cd38a49a9b6bed760d7af728d59371ee4
parent1c8d1d7c5831baebc0a59a7dcf36f942504e5556
Parsing and infrastructure support for SMT-LIBv2.5 input and output languages.

* support for new commands meta-info, declare-const, echo, get-model,
  reset, and reset-assertions
* support for set-option :global-declarations
* support for set-option :produce-assertions
* support for set-option :reproducible-resource-limit
* support for get-info :assertion-stack-levels
* support for set-info :smt-lib-version 2.5
* ascribe types for abstract values (the new 2.5 standard clarifies that
  this is required)
* SMT-LIB v2.5 string literals (we still support 2.0 string literals when
  in 2.0 mode)

What's still to do:
* check-sat-assumptions/get-unsat-assumptions (still being hotly debated).
  Also set-option :produce-unsat-assumptions.
* define-fun-rec doesn't allow mutual recursion
* All options should be restored to defaults with (reset) command.
  (Currently :incremental and maybe others get "stuck" due to late driver
  integration.)
46 files changed:
NEWS
src/expr/command.cpp
src/expr/command.h
src/expr/expr_template.h
src/main/command_executor_portfolio.cpp
src/main/driver_unified.cpp
src/main/interactive_shell.cpp
src/main/main.cpp
src/main/options
src/options/options.h
src/options/options_template.cpp
src/parser/antlr_input.cpp
src/parser/cvc/Cvc.g
src/parser/options
src/parser/parser.cpp
src/parser/parser.h
src/parser/parser_builder.cpp
src/parser/smt2/Smt2.g
src/parser/smt2/smt2.cpp
src/parser/smt2/smt2.h
src/parser/smt2/smt2_input.cpp
src/parser/smt2/smt2_input.h
src/printer/ast/ast_printer.cpp
src/printer/cvc/cvc_printer.cpp
src/printer/printer.cpp
src/printer/smt1/smt1_printer.cpp
src/printer/smt2/smt2_printer.cpp
src/printer/smt2/smt2_printer.h
src/printer/tptp/tptp_printer.cpp
src/smt/options
src/smt/options_handlers.h
src/smt/smt_engine.cpp
src/smt/smt_engine.h
src/util/language.cpp
src/util/language.h
src/util/language.i
test/regress/regress0/bug421.smt2
test/regress/regress0/bug421b.smt2
test/regress/regress0/bug590.smt2
test/regress/regress0/crash_burn_locusts.smt2 [new file with mode: 0644]
test/regress/regress0/parser/Makefile.am
test/regress/regress0/parser/strings20.smt2 [new file with mode: 0644]
test/regress/regress0/parser/strings25.smt2 [new file with mode: 0644]
test/regress/regress0/strings/Makefile.am
test/regress/regress0/strings/escchar.smt2
test/regress/regress0/strings/escchar_25.smt2 [new file with mode: 0644]