summaryrefslogtreecommitdiff
path: root/doc/libcvc4.3.in
diff options
context:
space:
mode:
authorMathias Preiner <mathias.preiner@gmail.com>2018-03-21 15:48:57 -0700
committerGitHub <noreply@github.com>2018-03-21 15:48:57 -0700
commitbdba2bf65eb2f68daa1a5e488c4e50f5dac1b312 (patch)
tree3f97efe21f089d3abb5d9a2b53c0c7ee63ba06bb /doc/libcvc4.3.in
parent966960b424aa5901a03abbfaa1bcdac6e3ed90dc (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.in65
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/ .
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback