Skip to content

Commit 1b50e9a

Browse files
committed
Edits to the doc and README
1 parent 5225b71 commit 1b50e9a

File tree

4 files changed

+38
-18
lines changed

4 files changed

+38
-18
lines changed

README

+7-10
Original file line numberDiff line numberDiff line change
@@ -63,16 +63,6 @@ You can change the installation location by giving option
6363
For more explanations, please check doc/COMPILING.
6464

6565

66-
WINDOWS BUILD
67-
-------------
68-
69-
We recommend compiling using Cygwin. If you want a version that works
70-
natively on Windows (i.e., does not depend on the Cygwin DLLs), you
71-
can compile from Cygwin using the MinGW cross-compilers. This is
72-
explained in doc/COMPILING.
73-
74-
75-
7666
SUPPORT FOR NON-LINEAR ARITHMETIC
7767
---------------------------------
7868

@@ -96,6 +86,13 @@ follow these instructions:
9686
./configure --help to see what's there.
9787

9888

89+
WINDOWS BUILDS
90+
--------------
91+
92+
We recommend compiling using Cygwin. If you want a version that works
93+
natively on Windows (i.e., does not depend on the Cygwin DLLs), you
94+
can compile from Cygwin using the MinGW cross-compilers. This is
95+
explained in doc/COMPILING.
9996

10097

10198
DOCUMENTATION

doc/sphinx/source/overview.rst

+23-1
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,34 @@ For a detailed explanation of the build process and options, check the
3939
file :file:`doc/COMPILING` included in the distribution.
4040

4141

42+
MCSAT and Nonlinear Arithmetic
43+
..............................
44+
45+
Yices now includes a new solver for nonlinear arithmetic based on the
46+
Model Constructing Satisfiability Calculus (MCSAT). This solver depends
47+
on an external library available at
48+
https://github.com/SRI-CSL/libpoly. It you need nonlinear arithmetic
49+
and want to compile Yices from the source, you must install this libpoly
50+
library first. Then, compile Yices with MCSAT support as follows:
51+
52+
.. code-block:: sh
53+
54+
./configure --enable-mcsat
55+
make -j
56+
sudo make install
57+
58+
You may need to set CPPFLAGS and LDFLAGS if the libpoly library is not
59+
in a standard location.
60+
61+
62+
4263
Binary Distribution
4364
...................
4465

4566
The binary distributions contain pre-compiled binaries and
4667
libraries. These distributions are self-contained. The binaries and
47-
libraries are linked statically against GMP.
68+
libraries are linked statically against GMP and libpoly. They include
69+
support for nonlinear arithmetic and MCSAT.
4870

4971
The binary distributions for Linux and Mac OS X include a shell script
5072
to install the binaries, headers, and library in

doc/sphinx/source/smt-logics.rst

+4-3
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ SMT Logics
77

88
The following table lists the names of all the official SMT-LIB logics
99
at http://smt-lib.org (as of January 2015) and indicates whether Yices
10-
supports them. Currently, Yices supports all the quantifier-free
11-
SMT-LIB logics that do not involve nonlinear arithmetic.
10+
supports them. Currently, Yices supports most quantifier-free SMT-LIB
11+
logics. Nonlinear real arithmetic is supported by using the MCSAT
12+
solver of Yices.
1213

1314

1415
+------------+----------------------------------------------+------------+
@@ -68,7 +69,7 @@ SMT-LIB logics that do not involve nonlinear arithmetic.
6869
| QF_NIA | Nonlinear Integer Arithmetic | No |
6970
| | | |
7071
+------------+----------------------------------------------+------------+
71-
| QF_NRA | Nonlinear Real Arithmetic | No |
72+
| QF_NRA | Nonlinear Real Arithmetic | Yes |
7273
| | | |
7374
+------------+----------------------------------------------+------------+
7475
| QF_RDL | Real Difference Logic | Yes |

doc/sphinx/source/version-data.rst

+4-4
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ used at compile time for checking the Yices version.
2222
2323
Patch level
2424

25-
For Yices 2.3.1, they are defined as follows::
25+
For Yices 2.4.0, they are defined as follows::
2626

2727
#define __YICES_VERSION 2
28-
#define __YICES_VERSION_MAJOR 3
29-
#define __YICES_VERSION_PATCHLEVEL 1
28+
#define __YICES_VERSION_MAJOR 4
29+
#define __YICES_VERSION_PATCHLEVEL 0
3030

3131
The same information is available in the following constant string.
3232

@@ -35,7 +35,7 @@ The same information is available in the following constant string.
3535
Version as a string.
3636

3737
The string includes the version number, followed by the revision
38-
number and the patch level, as in ``"2.3.1"``.
38+
number and the patch level, as in ``"2.4.0"``.
3939

4040
More details are given by three constant strings:
4141

0 commit comments

Comments
 (0)