summaryrefslogtreecommitdiff
path: root/examples/api/java/Statistics.java
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2019-09-26 17:52:37 -0700
committerGitHub <noreply@github.com>2019-09-26 17:52:37 -0700
commit3aafd4a2ced87f0fd82ebe5279b73c84552502d5 (patch)
tree2e96b3cf82d4a1d2c74bb5a6b3227d5afb3716d1 /examples/api/java/Statistics.java
parent9ba1854be7d798a899a2b46c2707d376938c5d18 (diff)
parent923abd7000a2ab6e3c0776c59d159bdc3a4d9a52 (diff)
Merge branch 'master' into splitEqRew
Diffstat (limited to 'examples/api/java/Statistics.java')
-rw-r--r--examples/api/java/Statistics.java45
1 files changed, 45 insertions, 0 deletions
diff --git a/examples/api/java/Statistics.java b/examples/api/java/Statistics.java
new file mode 100644
index 000000000..0dda91aee
--- /dev/null
+++ b/examples/api/java/Statistics.java
@@ -0,0 +1,45 @@
+/********************* */
+/*! \file Statistics.java
+ ** \verbatim
+ ** Top contributors (to current version):
+ ** Andres Noetzli
+ ** This file is part of the CVC4 project.
+ ** Copyright (c) 2009-2019 by the authors listed in the file AUTHORS
+ ** in the top-level source directory) and their institutional affiliations.
+ ** All rights reserved. See the file COPYING in the top-level source
+ ** directory for licensing information.\endverbatim
+ **
+ ** \brief An example of accessing CVC4's statistics using the Java API
+ **
+ ** An example of accessing CVC4's statistics using the Java API.
+ **/
+
+import edu.nyu.acsys.CVC4.*;
+import java.util.Iterator;
+
+public class Statistics {
+ public static void main(String[] args) {
+ System.loadLibrary("cvc4jni");
+
+ ExprManager em = new ExprManager();
+ SmtEngine smt = new SmtEngine(em);
+
+ Type boolType = em.booleanType();
+ Expr a = em.mkVar("A", boolType);
+ Expr b = em.mkVar("B", boolType);
+
+ // A ^ B
+ smt.assertFormula(em.mkExpr(Kind.AND, a, b));
+
+ Result res = smt.checkSat();
+
+ // Get the statistics from the `SmtEngine` and iterate over them. The
+ // `Statistics` class implements the `Iterable<Statistic>` interface. A
+ // `Statistic` is a pair that consists of a name and an `SExpr` that stores
+ // the value of the statistic.
+ edu.nyu.acsys.CVC4.Statistics stats = smt.getStatistics();
+ for (Statistic stat : stats) {
+ System.out.println(stat.getFirst() + " = " + stat.getSecond());
+ }
+ }
+}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback