3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-05 15:33:59 +00:00
Commit graph

1641 commits

Author SHA1 Message Date
Nikolaj Bjorner
d43c12413d add disambiguation, avoid uninitialzed variable passing in debug mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 15:27:42 -07:00
Nikolaj Bjorner
f12f83af83 fix warnings, avoid class qualification in static function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 14:56:38 -07:00
Nikolaj Bjorner
c5f1f8ba59 missing files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 14:14:58 -07:00
Nikolaj Bjorner
905cf08e5d missing files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 14:11:33 -07:00
Nikolaj Bjorner
911b24784a merge LRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 10:46:11 -07:00
Nikolaj Bjorner
085d31dca2 mpq/mpz features from LRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:18:59 -07:00
Nikolaj Bjorner
60725f5384 use vector fixes from LRA branch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:13:27 -07:00
Nikolaj Bjorner
42ea2d1ea5 LRA changes to rational
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:06:41 -07:00
Nikolaj Bjorner
b915f78281 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-07 17:05:57 -07:00
Murphy Berzish
ede6d7bb2b add iterator accessors to obj_pair_set 2017-05-03 14:55:22 -04:00
Nikolaj Bjorner
8205b45839 initial integration of opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-27 19:13:00 -07:00
Nikolaj Bjorner
c637240c40 parallel verison of ccc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-25 16:56:39 -07:00
Nikolaj Bjorner
d052155f6e parallelizing ccc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-23 14:46:46 -07:00
Nikolaj Bjorner
e65f106a83 ccc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-19 08:59:49 -07:00
Christoph M. Wintersteiger
f8d022a180 Non-windows build fix 2017-03-24 15:25:18 +00:00
Christoph M. Wintersteiger
fb105afac2 Windows build fix 2017-03-24 15:22:33 +00:00
Christoph M. Wintersteiger
7f9c37e19d VS2017 SSE4 intrinsics build fix 2017-03-24 14:23:39 +00:00
Christoph M. Wintersteiger
e9cd4d1057 Build fix for systems that don't come with SSE4.1 support by default 2017-03-24 11:51:36 +00:00
Nikolaj Bjorner
e47e8c67c0 introducing scoped detacth/attach of clauses to enforce basic sat solver invariants. Part of investigating #939:
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-22 14:12:47 -07:00
Nuno Lopes
8ac060c549 fix build with VS 2017 2017-03-20 09:12:41 +00:00
Nikolaj Bjorner
5c6cef4735 fix local search
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-14 13:47:01 -07:00
Dan Liew
2cb4223979 [CMake] Support including Git hash and description into the build.
CMake will automatically pick up changes in git's HEAD so that
the necessary code is rebuilt when the build system is invoked.

Two new options `INCLUDE_GIT_HASH` and `INCLUDE_GIT_DESCRIBE` have been
added that enable/disable including the git hash and the output of `git
describe` respectively. By default if the source tree is a git
repository both options are on, otherwise they are false by default.

To support the `Z3GITHASH` macro a different implementation is used from
the old build system. In that build system the define is passed on the
command line. This would not work well for CMake because CMake
conservatively (and correctly) rebuilds *everything* if the flags given
to the compiler change. This would result in the entire project being
rebuilt everytime git's `HEAD` changed.  Instead in this implementation
a CMake specific version of `version.h.in` (named `version.h.cmake.in`)
is added that uses the `#cmakedefine` feature of CMake's
`configure_file()` command to define `Z3GITHASH` if it is available and
not define it otherwise. This way only object files that depend on
`version.h` get re-built rather than the whole project.

It is unfortunate that the build systems now have different `version.h`
file templates. However they are very simple and I don't want to
modify how templates are handled in the python/Makefile build system.
2017-03-12 22:11:59 +00:00
Nikolaj Bjorner
05c5b3b07b merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 22:45:52 +01:00
Nikolaj Bjorner
5f5819f029 fix xor handling, and defaults for cardinality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 22:44:41 +01:00
Nikolaj Bjorner
854bb2197f include recursive functions to models. Issue #898
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-08 21:41:24 -08:00
Nikolaj Bjorner
db9e8d96d4 working on lookahead solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-23 16:00:20 -08:00
Nikolaj Bjorner
cb050998e5 Merge branch 'opt' of https://github.com/nikolajbjorner/z3 into opt 2017-02-19 11:35:46 -08:00
Nikolaj Bjorner
2885ca7714 tune cardinalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-19 11:35:31 -08:00
Nikolaj Bjorner
dc588b54f7 add sorting-based pb encoding in the style of minisat+
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-19 11:31:34 -08:00
Nikolaj Bjorner
a412a554eb merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-30 09:39:23 -08:00
Nikolaj Bjorner
37ee4c95c3 adding parallel threads
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-30 02:09:08 -08:00
Nikolaj Bjorner
0123b63f8a experimenting with cardinalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-27 16:12:46 -08:00
Nikolaj Bjorner
46df31babf Merge branch 'master' of https://github.com/Z3Prover/z3 2016-12-22 20:54:14 -08:00
Nikolaj Bjorner
1787fa8296 remove redundant disjunction in compilation of at-most-1 constraints, log mutexes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-22 20:54:09 -08:00
Dan Liew
b5aa6d5eb5 Fix issue with bd1f07f864 pointed out by
@nunolopes .

If `pthread_cond_signal()` is called while `m_mutex` is held then the
timing thread might be woken up twice due to waking up from
`pthread_cond_timeout()` (due to being signaled) but then being forced
to sleep again because the thread calling `~imp()` is still holding
`m_mutex` (which the timing thread needs to acquire).
2016-12-19 22:36:42 +00:00
Nikolaj Bjorner
0c6c104f9a Merge pull request #841 from delcypher/scope_timer_spurious_wakes
Make `scoped_timer` robust to spurious wakes under Linux.
2016-12-19 08:22:03 -08:00
Christoph M. Wintersteiger
6ce903b1d6 Style, whitespace. 2016-12-16 20:04:29 +00:00
Dan Liew
bd1f07f864 Fix implementation of scoped_timer under Linux where it was
incorrectly assumed that `pthread_cond_timedwait()` would exit
due to a condition variable being signaled or a timeout occuring.

According to the documentation `pthread_cond_timedwait()` might
spuriously wake so we introduce a new variable `m_signal_sent` (that is
guarded by an existing mutex) that is used as the variable to check that
the thread wake was not spurious.

This is intended to partially fix #839 .
2016-12-11 23:12:36 +00:00
Christoph M. Wintersteiger
16b32ecf12 Bugfix for special-case handling in fp.fma.
Thanks to Florian Schanda for reporting this bug.

(+reversed accidental debug code commit).
2016-12-09 15:03:31 +00:00
Christoph M. Wintersteiger
9df5c31485 Whitespace 2016-12-09 13:40:46 +00:00
Martin Nowack
762e5fd093 Do not request time stamp if not needed
If no timeout is needed for solving queries, time stamps do not
need to be acquired.
2016-11-23 16:38:21 +01:00
Nikolaj Bjorner
d3fe015ff5 Merge pull request #796 from rickyz/nondependent_name
Fix GCC/Clang compilation.
2016-11-20 06:29:37 -08:00
Nikolaj Bjorner
650a719298 fix crash in new clique code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-20 06:20:22 -08:00
Ricky Zhou
9939d07827 Fix GCC/Clang compilation.
The calls to negate use a non-dependent name, so GCC and Clang do not
examine dependent base classes when looking up the name. Adds a using
declaration as suggested at
https://isocpp.org/wiki/faq/templates#nondependent-name-lookup-members.
2016-11-20 05:09:30 -08:00
Nikolaj Bjorner
df0e3a100c tune initialization for wmax and sortmax
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-19 08:04:06 -08:00
Nikolaj Bjorner
ea601dd403 fix and coallesce clique functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-19 03:55:48 -08:00
Nikolaj Bjorner
e9db934f1a improving perf of mutex finding, revert semantics of 0 timeout to no-timeout. Issue #791
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-17 04:26:17 +02:00
Nikolaj Bjorner
ff75f88c4f fix memory abuse in internalization in inc-sat-solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-31 22:25:58 +01:00
Nikolaj Bjorner
7d7e03e377 rewind qhead to ensure re-propagation after cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 16:23:33 -07:00
Nikolaj Bjorner
41deae52c6 fix enum2bv to handle singleton enumeration types, differentiate disequality conflicts for theories that handle disequalities vs. theories that don't
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 13:35:53 -07:00