diff options
author | Mathias Preiner <mathias.preiner@gmail.com> | 2018-03-21 15:48:57 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-21 15:48:57 -0700 |
commit | bdba2bf65eb2f68daa1a5e488c4e50f5dac1b312 (patch) | |
tree | 3f97efe21f089d3abb5d9a2b53c0c7ee63ba06bb /doc/libcvc4.3.in | |
parent | 966960b424aa5901a03abbfaa1bcdac6e3ed90dc (diff) |
Refactor mkoptions (#1631)
This commit refactors code generation for options. It uses a new configuration format for defining options (*.toml) and a new Python script mkoptions.py to generate the source code and option documentation.
The option behavior did not change for most of the options, except that for bool --enable-/--disable- long options enable/disable was removed. E.g. --enable-miplib-trick and --disable-miplib-trick got changed to --miplib-trick and --no-miplib-trick.
This commit fixes also an issues with set-option/get-option via the SMT2 interface. Before long options were only accessible if the name included the =ARG part.
Diffstat (limited to 'doc/libcvc4.3.in')
-rw-r--r-- | doc/libcvc4.3.in | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/doc/libcvc4.3.in b/doc/libcvc4.3.in new file mode 100644 index 000000000..f85a909dd --- /dev/null +++ b/doc/libcvc4.3.in @@ -0,0 +1,65 @@ +.\" Process this file with +.\" groff -man -Tascii libcvc4.3 +.\" +.TH LIBCVC4 3 "@MAN_DATE@" "CVC4 release @VERSION@" "CVC4 Library Interfaces" +.SH NAME +libcvc4 \- a library interface for the CVC4 theorem prover +.SH SYNOPSIS + +A small program like: + +.RS +.nf +#include <iostream> +#include "expr/expr_manager.h" +#include "smt/smt_engine.h" + +using namespace CVC4; + +int main() { + ExprManager em; + SmtEngine smt(&em); + Expr onePlusTwo = em.mkExpr(kind::PLUS, + em.mkConst(Rational(1)), + em.mkConst(Rational(2))); + std::cout << language::SetLanguage(language::output::LANG_CVC4) + << smt.getInfo("name") + << " says that 1 + 2 = " + << smt.simplify(onePlusTwo) + << std::endl; + + return 0; +} +.fi +.RE + +gives the output: + +.RS +"cvc4" says that 1 + 2 = 3 +.RE + +.SH DESCRIPTION + +The main classes of interest in CVC4's API are +.I ExprManager, +.I SmtEngine, +and a few related ones like +.I Expr +and +.I Type. + +The +.I ExprManager +is used to build up expressions and types, and the +.I SmtEngine +is used primarily to make assertions, check satisfiability/validity, and extract models and proofs. + +.SH "SEE ALSO" +.BR cvc4 (1), +.BR libcvc4parser (3), +.BR libcvc4compat (3) + +Additionally, the CVC4 wiki contains useful information about the +design and internals of CVC4. It is maintained at +.BR http://goedel.cs.nyu.edu/wiki/ . |