The tool Yices

The tool Yices is a program for satisfiability modulo theories (smt). It accepts smt format, but can also be used as a boolean SAT solver accepting dimacs format.

On the homepage of Yices you find documentation and download instructions.

The examples and flags indicated below apply for Yices, not for Yices 2

Some important flags for Yices:



Example 1:
Calling
yices -e -smt test.smt
where the file "test.smt" consists of

(benchmark test.smt
:extrafuns ((A Int) (B Int) (C Int))
:formula
(and
(= A 987654323456789)
(= B (* 99 987654323456789))
(= C (+ A B))
))

yields as result:

sat
(= A 987654323456789)
(= B 97777778022222111)
(= C 98765432345678900)


Example 2:
Calling
yices -e -smt test.smt
where the file "test.smt" consists of

(benchmark test.smt
:extrafuns ((A Int Int))
:formula
(and
(= (A 1) 1)
(= (A 100) 2)
(forall (?i Int) (= (A ?i) (A (+ ?i 1))))
))

yields as result: "unsat"

Example 3:
Calling
yices -e -d test.d
where the file "test.d" consists of

p cnf 4 15
1 2 3 0
1 -3 4 0
1 -2 3 4 0
1 -2 -3 -4 0
-1 2 3 4 0
-1 2 -4 0
-1 2 -3 4 0
-1 -2 3 4 0
-2 3 -4 0
-1 -2 -3 4 0
-1 -2 -3 -4 0

yields as result:

sat
-1 -2 3 4



Last change: September 5, 2011