3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-16 05:48:44 +00:00
Commit graph

435 commits

Author SHA1 Message Date
Arie Gurfinkel 66108085fa removing pragmas to make travis happy 2017-07-31 22:51:28 -04:00
Nikolaj Bjorner c506f3ddc9 fix build errors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 18:39:35 -07:00
Arie Gurfinkel ffff16632d updating includes 2017-07-31 17:30:11 -04:00
Arie Gurfinkel f465a2225a fixing include paths 2017-07-31 17:14:43 -04:00
Arie Gurfinkel 97c5ab30d5 small improvements to bmc engine
courtesy of Marc Brockschmidt
2017-07-31 17:04:36 -04:00
Arie Gurfinkel 7168451201 eager quantifier instantiation for quantified array properties 2017-07-31 17:04:16 -04:00
Arie Gurfinkel 2c7a39d580 Optionally blast arrays
This changes the default behavior of always blasting arrays.
The old behavior can be restored using

   fixedpoint.xform.array_blast=true
2017-07-31 17:03:18 -04:00
Arie Gurfinkel f5fa6b0bcb optionally disable subsumption checker 2017-07-31 17:03:18 -04:00
Arie Gurfinkel 33c81524d2 optionally disable propagate variable equivalences in interp_tail_simplifier 2017-07-31 17:03:18 -04:00
Arie Gurfinkel c3d433ede0 implemented spacer-specic muz API 2017-07-31 17:03:18 -04:00
Arie Gurfinkel 1530a39a96 stubs for spacer-specific API 2017-07-31 17:03:18 -04:00
Arie Gurfinkel ffa4957362 do not use array_der when simplifying rules 2017-07-31 17:02:29 -04:00
Arie Gurfinkel a73023da97 preserve rule names when changing rules 2017-07-31 17:02:29 -04:00
Arie Gurfinkel 5b9bf74787 Spacer engine for HORN logic
The algorithms implemented in the engine are described in the following papers

Anvesh Komuravelli, Nikolaj Bjørner, Arie Gurfinkel, Kenneth L. McMillan:
Compositional Verification of Procedural Programs using Horn Clauses over Integers and Arrays. FMCAD 2015: 89-96

Nikolaj Bjørner, Arie Gurfinkel:
Property Directed Polyhedral Abstraction. VMCAI 2015: 263-281

Anvesh Komuravelli, Arie Gurfinkel, Sagar Chaki:
SMT-Based Model Checking for Recursive Programs. CAV 2014: 17-34
2017-07-31 17:02:29 -04:00
Arie Gurfinkel b269e6b35b comments on proof_utils 2017-07-31 17:01:47 -04:00
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Nikolaj Bjorner 18e9e4f4ac fixes #1169
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 09:25:01 -07:00
Nikolaj Bjorner a0a8bc2a62 fixes to #1155 and partial introduction of SMTLIB 2.6 datatype format
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 09:12:43 -07:00
Nikolaj Bjorner 5714f830b0 fix check for finite sorts #1122
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-08 13:37:24 -07:00
Nikolaj Bjorner 253870c6d7 fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 13:08:23 -07:00
Nikolaj Bjorner 08524a2d90 cleanup for warning message
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-01 11:47:17 -07:00
Arie Gurfinkel c7fbab0c11 propagate rule names during xform 2017-06-23 09:38:04 -04:00
Arie Gurfinkel 0dead22dca fix missing initialization 2017-06-23 09:38:04 -04:00
Dan Liew 229fd3dc3e [CMake] Fix dependencies for generating install_tactic.cpp.
Previously CMake was not aware of which headers files the generation
of `install_tactic.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declared tactics/probes changed.
* New tactics/probes were added to new header files.

Now the `z3_add_component()` CMake function has been modifed to take an
optional `TACTIC_HEADERS` argument which allows the headers that declare
tactics/probes to be explicitly listed. The necessary component
declarations have been modified to declare their tactic/probe header
files.

With this information CMake will now regenerate `install_tactic.cpp`
correctly.

This required the `mk_install_tactic_cpp_internal()` function to be
changed to take a list of header files rather than a list of component
source directories. The two consumers (CMake and Python/Makefile build
systems) of this function have been modified to work with this change.

This partially fixes #1030.
2017-06-21 23:03:48 +01:00
Arie Gurfinkel af28057980 preserve dl rule names during xforms 2017-06-20 22:23:55 -04:00
Arie Gurfinkel 50f794c4f5 api for accessing dl_rule name 2017-06-20 22:23:55 -04:00
Arie Gurfinkel 7840f6cead typo in a comment 2017-06-20 22:23:55 -04:00
Dan Liew 4b517b96df [CMake] Move CMake files into their intended location so the
`contrib/cmake/bootstrap.py` script no longer needs to be executed.

The previous location of the CMake files was a compromise proposed
by @agurfinkel in #461. While this has served us well (allowing progress
to be made) over time limitations of this approach have appeared.

The main problem is that doing many git operations (e.g. pull, rebase)
means the CMake files don't get updated unless the user remembers to
run the script. This can lead to broken and confusing build system
behaviour.

This commit only does the file moving and necessary changes to
`.gitignore`. Other changes will be done in subsequent commits.
2017-06-12 11:59:00 +01:00
Christoph M. Wintersteiger 596652ed36 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-31 18:35:52 +01:00
Christoph M. Wintersteiger a7d5bb7b36 Tabs 2017-05-31 12:18:00 +01:00
Nikolaj Bjorner 2cbeedec69 accept hereditarily finite sorts in datalog engine
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-22 19:32:43 -07:00
Nikolaj Bjorner aff02ca905 include 'stopwatch.h' to avoid ODR warnings, #994 2017-04-30 11:28:11 -07:00
Christoph M. Wintersteiger 27a1758857 Added rewriter.ignore_patterns_on_ground_qbody option to disable simplification of quantifiers that have their universals appear only in patterns, but otherwise have a ground body. 2017-04-07 21:19:20 +01:00
Nikolaj Bjorner d754aa2dc4 disable ackerman reduction when head contains a non-constant/non-variable. #947
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-17 10:12:32 -07:00
Nikolaj Bjorner c4c9de0838 fix memory leaks from cancellations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-15 20:09:27 -08:00
Nikolaj Bjorner 4bcf1bf2f6 fix debug build, unused variable warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-21 10:44:49 -08:00
Nikolaj Bjorner df492e200f merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-21 10:04:02 -08:00
Nikolaj Bjorner 8d18fd075e remove sources for unused variable warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-21 09:54:45 -08:00
Nikolaj Bjorner c1480b4389 handle model generation from issue #748. Deal with warnings from #836
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-12 00:40:52 +01:00
Nikolaj Bjorner 0765eea486 add suggestions from #835
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 05:45:40 +01:00
Nikolaj Bjorner 32c63ce4cd address other warnings per input from delcypher
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 17:23:59 +01:00
Nikolaj Bjorner 6594c3a046 add virtual destructor to intermediary class in case this helps for #835
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 13:58:39 +01:00
Nikolaj Bjorner dea3b8ddf7 address warnings from #836
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 13:14:36 +01:00
Nikolaj Bjorner 8e078cf9e2 address #835
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 07:52:00 +01:00
Nikolaj Bjorner fe10f2d244 address #835
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 07:51:16 +01:00
Nikolaj Bjorner 6a9b5ea3af fix unsoundness reported in issue #777, disable ematching on recursive function definition axioms exposed in #793
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-19 15:29:43 -08:00
Nikolaj Bjorner 2ff5af7d42 fix bug incorrect clearing of goals during node creation. Issue #777
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-19 10:06:16 -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 e21bd8dacc fix lexicographic combinations for wmax: pb constrsaints were not interpreted in Boolean benchmarks. #782
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-15 15:07:05 +02:00