3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00
Commit graph

402 commits

Author SHA1 Message Date
Nikolaj Bjorner
52e0f3b539 add string accessors to managed APIs #1051
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-01 09:10:49 -07:00
Christoph M. Wintersteiger
248dd601ae Whitespace, newlines 2017-05-10 12:44:25 +01:00
Nikolaj Bjorner
e02160c674 expose bounds as vector expressions instead of containing ad-hoc expressions. Issue #911
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-24 11:07:40 -08:00
Nikolaj Bjorner
3a0e9e8f53 add itos/stoi conversion to API. Issue #895
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-11 11:31:13 -05:00
Christoph M. Wintersteiger
5c1ffe13d1 x64 build fix for .NET 3.5 API 2017-01-18 13:06:28 +00:00
Christoph M. Wintersteiger
a334020f2c Added .NET 3.5 solution/project files 2017-01-18 12:32:02 +00:00
Daniel Perelman
3370adcdff Mark void DummyContracts as Conditional to avoid compiling their arguments. 2017-01-11 17:02:26 -08:00
Nikolaj Bjorner
8d09b6e4a8 add at-least and pbge to API, fix for issue #864
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-09 21:23:00 -08:00
Nikolaj Bjorner
ae9a3bfc24 add operator for issue #860
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-04 09:14:09 -08:00
Nikolaj Bjorner
976fadf771 add missing complement
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-09 06:21:57 +01:00
Nikolaj Bjorner
0473d2ef56 add regular expression features to C# API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-09 06:17:13 +01:00
Nikolaj Bjorner
4e25bffab6 add range constructor to .NET API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-08 18:33:02 +01:00
Christoph M. Wintersteiger
9053e6eba6 Resolved merge conflicts. Added FPA API input validity checks. 2016-11-15 20:19:40 +00:00
Christoph M. Wintersteiger
c81ee05098 Fixes for .NET Core build 2016-11-02 13:36:29 +00:00
Christoph M. Wintersteiger
95d7b33ebb Added is_numeral_negative to .NET and Java APIs 2016-10-27 15:07:10 +01:00
Christoph M. Wintersteiger
c573a7446b Added FPA numeral predicates to .NET API 2016-10-26 18:44:25 +01:00
Christoph M. Wintersteiger
e381cef92c Marked .NET Z3Exception as serializable 2016-10-26 15:12:10 +01:00
Nikolaj Bjorner
461e88e34c additional robustness check for incremental sat solver core when it recieves interpreted constants, added PB equality to interface and special handling of equalities to adddress performance gap documented in #755
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-25 20:32:13 -07:00
Christoph M. Wintersteiger
abcb6040d4 Refactored FPA numeral accessors. 2016-10-24 12:53:57 +01:00
Christoph M. Wintersteiger
6b474adc8a Added accessors to extract sign/exponent/significand BV numerals from FP numerals. 2016-10-24 12:50:05 +01:00
Nikolaj Bjorner
e32e0d460d fix at-most-1 constraint compiler bug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-22 21:50:45 -07:00
Christoph M. Wintersteiger
9548b88e71 Added dummy code contracts for .NET Core/CoreCLR builds. 2016-10-06 16:24:49 +01:00
Nikolaj Bjorner
310c0f31a1 use type constrsaints for co-variant subtying to enable .net 3.5
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-30 12:07:06 +08:00
Christoph M. Wintersteiger
ff3c630207 .NET API: Added MkMul from IEnumerable. 2016-08-09 16:36:32 +01:00
Nikolaj Bjorner
cb2d8d2107 add detection of non-fixed variables to consequence finding
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 19:12:41 -07:00
Nikolaj Bjorner
074f1ad778 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-07-28 11:20:23 -07:00
Nikolaj Bjorner
14f29e7265 add basic built-in consequence finding
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 11:20:17 -07:00
Christoph M. Wintersteiger
7fefe40f21 Added/improved facilities for strong name signing of the .NET assembly. 2016-07-28 18:07:34 +01:00
Christoph M. Wintersteiger
0d83f99d8d Fixed comment 2016-07-28 18:06:26 +01:00
Christoph M. Wintersteiger
3587baaf24 Added full version strings and associated API functions. 2016-07-28 18:06:02 +01:00
Nikolaj Bjorner
5f5ef8b38d adding support for distinct for dt2bv, re-entry harness for ~Context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-27 09:02:56 -07:00
Nikolaj Bjorner
68c7d64d00 adding model-based opt facility
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-27 11:18:20 -07:00
Nikolaj Bjorner
d97bddc3b5 revert to legacy syntax to enable older versions of .NET
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-24 09:21:05 -07:00
Nikolaj Bjorner
643a87cb5b overloading support for C# expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-23 22:03:27 -07:00
Nikolaj Bjorner
662e43d264 overloading support for C# expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-23 15:50:30 -07:00
Nikolaj Bjorner
e4b7ac37f3 add overloading for arithmetical expressions in C# to handle common cases
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-22 13:58:02 -07:00
Nikolaj Bjorner
8d61d36c3f add documentation methods to param_descrs, add C++ API and example for param_descrs. Issue #443
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-02-12 11:45:00 +00:00
Christoph M. Wintersteiger
bd8a5982ad Added new items to .NET project file 2016-01-05 11:37:34 +00:00
Nikolaj Bjorner
c1ebf6b4fc seq + API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-04 18:01:48 -08:00
Nikolaj Bjorner
68a532d066 seq, API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-03 20:53:06 -08:00
Dan Liew
28eb21442e Bump the copyright year in `AssemblyInfo.cs.in`. Perhaps we should
automatically generate this year during the configure step with a
``@COPYRIGHT_END_YEAR@`` substitution instead?
2015-12-14 09:51:45 +00:00
Dan Liew
288fb3b7c1 Remove some trailing spaces in `AssemblyInfo.cs.in` 2015-12-14 09:51:45 +00:00
Dan Liew
81c98cf3ee Refactor `mk_all_assembly_infos() to use the configure_file()`
function. The old implementation was buggy under Python 3.5 and
unsafe (not using with statements on calls to ``open()``).
2015-12-14 09:51:45 +00:00
Christoph M. Wintersteiger
383d06b225 Bugfix for Expr.isInt in .NET, Java, ML.
Fixes #370
2015-12-10 15:13:55 +00:00
Nikolaj Bjorner
b5fcbd7099 Merge branch 'mono_dotnet_bindings' of https://github.com/delcypher/z3-1 2015-12-06 13:51:43 -08:00
Dan Liew
c8a2b6645a Teach the build system to generate and install a pkg-config file for the
".NET" bindings. This file is required for Monodevelop to find the
bindings because Monodevelop uses pkg-config to find packages
(it doesn't use the GAC).

For lack of a better name the GAC (and pkg-config) package name is now
``Microsoft.Z3.Sharp``. I don't want to call it ``Microsoft.Z3`` because
someone may want to create a ``Microsoft.Z3.pc`` file in the future for
the native Z3 library (i.e. C++ or C bindings).

In addition there is a new utility function ``configure_file()``
which reads a template file, applies some substitutions and writes
the result to another file. This very similar to what CMake does.

There is a new environment variable ``Z3_INSTALL_PKGCONFIG_DIR``
which allows pkgconfig directory to be controlled for the install.
2015-12-05 07:52:31 +00:00
Dan Liew
61d1cd524e Teach the build system to build and install the ".NET bindings"
under non Windows systems (i.e. Using mono).

Building these bindings is unfortunately on by default because
I didn't want to change the command line interface (i.e. ``--nodotnet``)
which people might be relying on. This should really be changed to
match the other binding flags (e.g. ``--java``) but I will leave
this for now.

To perform the build a C# compiler and the GAC utility are required.
The script will try to automatically detect them but the user can
override this by setting the ``CSC`` and ``GACUTIL`` environment
variables.

In order for the ".NET bindings" to be installed the assembly
(``Microsoft.Z3.dll``) needs to have a strong name which means
we need a Strong name key file which is what the
``Microsoft.Z3.mono.snk`` is for. This is the public and private
key so this key **must never** be used for checking integrity. Instead its
only purpose is to avoid any name clashes in the GAC.

It is also worth noting that slightly different flags needs to
be passed to the C# compiler on non Windows platforms. I don't
understand why some of the flags are being used on Windows but I left
a comment there that hopefully someone can fix...
2015-12-05 07:52:31 +00:00
Christoph M. Wintersteiger
cbda38ee80 Added finite domain expressions and numerals to the .NET, Java, and Python APIs.
Relates to #318
2015-12-02 17:01:52 +00:00
Christoph M. Wintersteiger
52bbd67cd3 Whitespace 2015-12-02 14:40:47 +00:00
Dan Liew
b0bc50a75c Fixed stray UTF-8 Byte order mark in `InterpolationContext.cs`.
Old versions of the mono compiler don't like it.
2015-11-30 15:02:02 +00:00