Nuno Lopes
40159a3a96
fix single-thread build
2020-11-19 21:46:32 +00:00
John Regehr
0fa88efc2b
scoped_timer: wait for timer thread before main thread continues ( #4803 )
2020-11-19 21:42:55 +00:00
Christoph M. Wintersteiger
eadf755628
Fix bonus subtraction in fp.rem. Fixes #4564 . Fixes most of #2381 .
2020-11-06 20:54:10 +00:00
Nikolaj Bjorner
ab199dedf9
debug arith/mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-11-02 12:13:19 -08:00
Christoph M. Wintersteiger
c03c395267
Add missing assertion. Fixes #4642 .
2020-10-30 14:09:51 +00:00
Nuno Lopes
1730bc7c7f
fix #4763 : shell not finishing before hard timeout
...
The timer thread for the hard timeout was leaking and thus the thread only exited on timeout
2020-10-30 10:01:09 +00:00
Nikolaj Bjorner
f354671465
add parameter for scenario from #4743
2020-10-30 01:14:34 -07:00
Nikolaj Bjorner
0de3149634
fix #4763
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-29 11:15:53 -07:00
Nikolaj Bjorner
8d76470a8a
fixes to mostly solver arith/euf and backtracking scopes
2020-10-26 11:06:41 -07:00
Nikolaj Bjorner
1ee2ba2a9b
mbqi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-26 11:06:40 -07:00
Nuno Lopes
aaa1af5b28
fix debug build
2020-10-24 13:05:25 +01:00
Nuno Lopes
4e9035d4b9
cleanup thread pool of scoped_timer on memory finalize
...
but keep it alive on Z3_memory_reset()
2020-10-24 12:46:50 +01:00
Nuno Lopes
0213af3c61
replace remaining volatiles with atomic<>
...
volatiles are now deprecated in recent C++
2020-10-24 11:47:45 +01:00
Nikolaj Bjorner
a4aa87b6c9
revert to STL allocated memory to be orthogonal to memory manager behavior
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-22 12:12:32 -07:00
Nikolaj Bjorner
9bd7df7e19
add stub for finalize
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-22 11:07:05 -07:00
John Regehr
a95c35dadb
thread pool for scoped_timer ( #4748 )
...
creating a fresh thread for every scoped_timer has significant overhead
in some use cases. this patch creates a persistent pool of worker threads
to do this job, resulting in 20-30% speedup of some alive2 jobs on a
large multicore
2020-10-22 18:25:01 +01:00
Nuno Lopes
0c354c7aab
obj_map: fix move constructor
2020-10-22 12:13:58 +01:00
Nikolaj Bjorner
72d407a49f
mbp ( #4741 )
...
* adding dt-solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move mbp to self-contained module
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* Create CMakeLists.txt
* dt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* rename to bool_var2expr to indicate type class
* mbp
* na
* add projection
* na
* na
* na
* na
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* deps
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* testing arith/q
* na
* newline for model printing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-21 15:48:40 -07:00
Nikolaj Bjorner
44679d8f5b
arith_solver ( #4733 )
...
* porting arithmetic solver
* integrating arithmetic
* lp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-16 10:49:46 -07:00
Nikolaj Bjorner
fa58a36b9f
model refactor ( #4723 )
...
* refactor model fixing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing cond macro
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add macros dependency
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* deps and debug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add dependency to normal forms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* build issues
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* compile
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix leal regression
* complete model fixer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fold back private functionality to model_finder
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* avoid duplicate fixed callbacks
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-05 14:13:05 -07:00
Nikolaj Bjorner
45103637ad
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-29 14:34:24 -07:00
Nikolaj Bjorner
ee909b6374
random compiler nits
2020-09-29 13:43:51 -07:00
Nikolaj Bjorner
a216bee647
updated notes, fixes to dual solver
2020-09-29 13:43:50 -07:00
Nikolaj Bjorner
15f6124fbd
remove files
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-29 13:43:50 -07:00
Nikolaj Bjorner
4562c07ceb
redo egraph
2020-09-29 13:43:49 -07:00
Nikolaj Bjorner
367e5fdd52
delay internalize ( #4714 )
...
* adding array solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use default in model construction
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* debug delay internalization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* get rid of implied values and bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* redo egraph
* remove out
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-28 19:24:16 -07:00
Nikolaj Bjorner
7c2bdfe3fb
delay internalization, relevancy ( #4707 )
...
* delay evaluation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* Update bv_solver.cpp
* delay internalize
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove gc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add bv delay option
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-23 17:12:01 -07:00
Nikolaj Bjorner
b7ec4489a6
bv fixes and tuning ( #4703 )
...
* heap size information
* bv tuning
* fix #4701
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* throw on set-has-size #4700
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-21 19:54:53 -07:00
Nikolaj Bjorner
6a4261d1af
debugging bv
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-15 15:37:31 -07:00
Nikolaj Bjorner
796e2fd9eb
arrays ( #4684 )
...
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fill
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update drat and fix euf bugs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* const qualifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reorg ba
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reorg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-13 19:29:59 -07:00
Nikolaj Bjorner
cfa7c733db
fixing #4670 ( #4682 )
...
* fixing #4670
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* init
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-10 04:35:11 -07:00
Nikolaj Bjorner
7327023c88
add variable replay, remove MacOS from Travis ( #4681 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* drat and fresh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move ackerman functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* towards debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove csp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* replay variables created by solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove old function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix scoped-limit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-08 05:57:07 -07:00
Margus Veanes
af54a79acc
fixing issue #4651 ( #4666 )
...
* fixing issue #4651
* regression fix
* fix #4662
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reenabled lift_ites_throttled with an additional filter, without the filter finding the model in report #4651 goes from .02s to 20s, also updated pretty printing of regexes to be more accurate
* removing temp testing variable
* Allow to skip System.loadLibrary() calls from Java Native class (#4667 )
* using intended utility methods for sort detection
* adding ack/model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add smt params dependency
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* deps
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* order
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* persist fields
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reset caches
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* sr
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix cmake build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* shuffle dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* warnings /errors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update include
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing cmakelists
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update cmake
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add depend
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add depend
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* path
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move parameters from ast/rewriter to params
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move fpa
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove pragma
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* updated sat_smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4651
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* encoding options #4665
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* expose name inclusion as optional
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix misc issues around #4661 introduced when adding lazy push/pop to selected theories
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove lazy push from theory_lra
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix dotnet build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* release nodes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* free memory in egraph
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* avoid duplicate class names frame in sat_scc and sat_smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* adding euf
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* elaborate on smt/drat format outline, expose euf mode as config
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* mk-var during copy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move theory_var_list into id_var_list and utilities from smt-enode into it, prepare for theory variables in egraph
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* with bounded
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* Remove duplicate binary condition. Fixes #4668 .
* butterfly effect on fp?
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for theory plugins
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* build fix
* remove SMTFD
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* SMTFD is back (#4676 )
* fixing issue #4651
* regression fix
* reenabled lift_ites_throttled with an additional filter, without the filter finding the model in report #4651 goes from .02s to 20s, also updated pretty printing of regexes to be more accurate
* removing temp testing variable
* using intended utility methods for sort detection
* misc edits related to nonground regexes
* bug fix of state id off by 1 calculation error and improved pretty printing with regex tooltip generated in dgml state graph
* removed unused method declaration
* improved id to regex value map info in generated dgml
* reorgd callback function for state pretty printer
* updated some comments
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Co-authored-by: Sergey Vladimirov <vlsergey@gmail.com>
Co-authored-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
Co-authored-by: Arie Gurfinkel <arie.gurfinkel@gmail.com>
2020-09-08 04:13:18 -07:00
Nikolaj Bjorner
d02b0cde7a
running updates to bv_solver ( #4674 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* drat and fresh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move ackerman functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* towards debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove csp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-07 20:35:32 -07:00
Christoph M. Wintersteiger
527bf72d42
Remove duplicate binary condition. Fixes #4668 .
2020-09-01 15:22:01 +00:00
Nikolaj Bjorner
ecddaeae66
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-01 07:15:13 -07:00
Nikolaj Bjorner
d4e92d4aca
move theory_var_list into id_var_list and utilities from smt-enode into it, prepare for theory variables in egraph
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-01 04:26:31 -07:00
Nikolaj Bjorner
4d41db3028
adding euf
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-31 14:36:16 -07:00
Nikolaj Bjorner
4244ce4aad
adding ack/model
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-28 12:55:47 -07:00
Nuno Lopes
a7b51d04cd
remove unused file
2020-08-25 15:10:41 +01:00
Arie Gurfinkel
22b5daf85e
fix rlimit for clang-10 ( #4658 )
2020-08-21 10:34:10 -07:00
Nikolaj Bjorner
ecb43ccca2
update smt logging format to follow SAT solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-20 20:00:20 -07:00
Nikolaj Bjorner
2611484525
fix #4642
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-17 08:35:15 -07:00
Nikolaj Bjorner
f0308436b5
use lazy scopes to avoid push/pop overhead
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-17 08:07:06 -07:00
Caleb Stanford
2c02264a94
Regex solver updates ( #4636 )
...
* std::cout debugging statements
* comment out std::cout debugging as this is now a shared fork
* convert std::cout to TRACE statements for seq_rewriter and seq_regex
* add cases to min_length and max_length for regexes
* bug fix
* update min_length and max_length functions for REs
* initial pass on simplifying derivative normal forms by eliminating redundant predicates locally
* add seq_regex_brief trace statements
* working on debugging ref count issue
* fix ref count bug and convert trace statements to seq_regex_brief
* add compact tracing for cache hits/misses
* seq_regex fix cache hit/miss tracing and wrapper around is_nullable
* minor
* label and disable more experimental changes for testing
* minor documentation / tracing
* a few more @EXP annotations
* dead state elimination skeleton code
* progress on dead state elimination
* more progress on dead state elimination
* refactor dead state class to separate self-contained state_graph class
* finish factoring state_graph to only work with unsigned values, and implement separate functionality for expr* logic
* implement get_all_derivatives, add debug tracing
* trace statements for debugging is_nullable loop bug
* fix is_nullable loop bug
* comment out local nullable change and mark experimental
* pretty printing for state_graph
* rewrite state graph to remove the fragile assumption that all edges from a state are added at a time
* start of general cycle detection check + fix some comments
* implement full cycle detection procedure
* normalize derivative conditions to form 'ele <= a'
* order derivative conditions by character code
* fix confusing names m_to and m_from
* assign increasing state IDs from 1 instead of using get_id on AST node
* remove elim_condition call in get_dall_derivatives
* use u_map instead of uint_map to avoid memory leak
* remove unnecessary call to is_ground
* debugging
* small improvements to seq_regex_brief tracing
* fix bug on evil2 example
* save work
* new propagate code
* work in progress on using same seq sort for deriv calls
* avoid re-computing derivatives: use same head var for every derivative call
* use min_length on regexes to prune search
* simple implementation of can_be_in_cycle using rank function idea
* add a disabled experimental change
* minor cleanup comments, etc.
* seq_rewriter cleanup for PR
* typo noticed by Nikolaj
* move state graph to util/state_graph
* re-add accidentally removed line
* clean up seq_regex code removing obsolete functions and comments
* a few more cleanup items
* oops, missed merge change to fix compilation
* disabled change to lift unions to the top level and treat them seperately in seq_regex solver
* added get_overapprox_regex to over-approximate regex membership constraints
* replace calls to is_epsilon with a centrally available method in seq_decl_plugin
* simplifications and modifications in get_overapprox_regex and related
* added approximation support for sequence expressions that use ite
* removed is_app check that was redundant
* tweak differences with upstream
* rewrite derivative leaves
* enable Antimorov-style derivatives via lifting unions in the solver
* TODO placeholders for outputting state graph
* change order in seq_regex propagate_in_re
* implement a more restricted form of Antimorov derivatives via a special op code to indicate lifting unions
* minor
* new Antimorov optimizations based on BDD compatibility checking
* seq regex tracing for # of derivatives
* fix get_cofactors (currently this fix is buggy)
* partially revert get_cofactors buggy change
* re-implement get_cofactors to more efficiently explore nodes in the derivative expression
* dgml generation for state graph
* fix release build
* improved dgml output
* bug fixes in dgml generation
* dot output support for state_graph and moved dgml and dot output under CASSERT
* updated tracing of what regex corresponds to what state id with /tr:state_graph
* clean up & document Antimorov derivative support
* remove op cache tracing
* remove re_rank experimental idea
* small fix
* fix Antimorov derivative (important change for the good performance)
* remove unused and unnecessary code
* implemented simpler efficient get_cofactors alternative mk_deriv_accept
* simplifications in propagate_accept, and trace unusual cases
* document the various seq_regex tracing & debugging command-line options
* fix debug build (broken tracing)
* guard eager Antimorov lifting for possible disabling
* fix bug in propagate_accept Rule 1
* disable eager version of Antimorov lifting for performance reasons
* remove some remaining obsolete comments
Co-authored-by: calebstanford-msr <t-casta@microsoft.com>
Co-authored-by: Margus Veanes <margus@microsoft.com>
2020-08-13 12:47:36 -07:00
Nikolaj Bjorner
c63ad2e834
enable ranges for bit-vectors
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-13 10:53:37 -07:00
Margus Veanes
e5693b8a98
added support for saving state graph in dot format ( #4621 )
...
* added support for saving state graph in dot format
* moved write_dgml and write_dot under CASSERT
* updated dgml and dot generation a bit so that a state that is both and alive state is detected as having green background but red border when the invariant is vioalted
2020-08-09 14:53:29 -07:00
Rocco Salvia
3852d4516d
modular Axiom Profiler ( #4619 )
...
* Rocco first commit
* Rocco: clean the log
* Rocco: version 0.1 beta of the causality graph
* Rocco: minimal fix to separate lines
* Rocco: fix the enodes
* Rocco: our trace has to reflect same behaviour of the native trace for what concern used_enodes
* Rocco: disable trace when dummy instantiations
* Rocco: fix to enodes
* Update README.md
* Rocco: remove causality details and add the pattern (trigger)
* Rocco: add ; at the end of the bindings
* Rocco: add triggers as separate trace
* Rocco README file
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Rocco: bug in tout flush
* Update README.md
* Update README.md
* Rocco: clean code
* Ready for pull request
* Remove commented line bindings
* Add space between // and first char
* Substitute or with || for compatibility; Add space around >
2020-08-08 12:09:24 -07:00
Margus Veanes
934f87a336
dgml output generation for regex state graphs ( #4620 )
...
* dgml output generation for regex state graphs
* fixed issue in header file
2020-08-08 09:40:20 -07:00
Caleb Stanford
976e4c91b0
Integrate new regex solver ( #4602 )
...
* std::cout debugging statements
* comment out std::cout debugging as this is now a shared fork
* convert std::cout to TRACE statements for seq_rewriter and seq_regex
* add cases to min_length and max_length for regexes
* bug fix
* update min_length and max_length functions for REs
* initial pass on simplifying derivative normal forms by eliminating redundant predicates locally
* add seq_regex_brief trace statements
* working on debugging ref count issue
* fix ref count bug and convert trace statements to seq_regex_brief
* add compact tracing for cache hits/misses
* seq_regex fix cache hit/miss tracing and wrapper around is_nullable
* minor
* label and disable more experimental changes for testing
* minor documentation / tracing
* a few more @EXP annotations
* dead state elimination skeleton code
* progress on dead state elimination
* more progress on dead state elimination
* refactor dead state class to separate self-contained state_graph class
* finish factoring state_graph to only work with unsigned values, and implement separate functionality for expr* logic
* implement get_all_derivatives, add debug tracing
* trace statements for debugging is_nullable loop bug
* fix is_nullable loop bug
* comment out local nullable change and mark experimental
* pretty printing for state_graph
* rewrite state graph to remove the fragile assumption that all edges from a state are added at a time
* start of general cycle detection check + fix some comments
* implement full cycle detection procedure
* normalize derivative conditions to form 'ele <= a'
* order derivative conditions by character code
* fix confusing names m_to and m_from
* assign increasing state IDs from 1 instead of using get_id on AST node
* remove elim_condition call in get_dall_derivatives
* use u_map instead of uint_map to avoid memory leak
* remove unnecessary call to is_ground
* debugging
* small improvements to seq_regex_brief tracing
* fix bug on evil2 example
* save work
* new propagate code
* work in progress on using same seq sort for deriv calls
* avoid re-computing derivatives: use same head var for every derivative call
* use min_length on regexes to prune search
* simple implementation of can_be_in_cycle using rank function idea
* add a disabled experimental change
* minor cleanup comments, etc.
* seq_rewriter cleanup for PR
* typo noticed by Nikolaj
* move state graph to util/state_graph
* re-add accidentally removed line
* clean up seq_regex code removing obsolete functions and comments
* a few more cleanup items
* remove experimental functionality for integration
* fix compilation
* remove some tracing and TODOs
* remove old comment
* update copyright dates to 2020
* feedback from Nikolaj
* use [] for map access
* make state_graph methods constant
* avoid recursion in mark_dead_recursive and mark_live_recursive
* a possible bug fix in propagate_nonempty
* write down list of invariants in state_graph
* implement partial invariant check and insert CASSERT statements
* expand on invariant check and tracing
* finish state graph invariant check
* minor tweaks
* regex propagation: convert first two axioms to propagations
* remove obsolete regex solver functionality
Co-authored-by: calebstanford-msr <t-casta@microsoft.com>
2020-07-30 13:54:49 -07:00
Nikolaj Bjorner
c7704ef9af
pass algebraic manager to arith-plugin mk-numeral because rational check may overwrite the argument using the current manager deals with crash as part of #4532
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-26 17:52:28 -07:00
Nikolaj Bjorner
105f97d3ee
#4582 again
2020-07-25 15:12:25 -07:00
Nikolaj Bjorner
2d4839f89e
#4582 again
2020-07-25 15:09:30 -07:00
Nikolaj Bjorner
1059f6d3b8
#4582 again
2020-07-25 11:54:05 -07:00
Nikolaj Bjorner
963daab268
#4582 again
2020-07-25 11:18:20 -07:00
Nikolaj Bjorner
ed58175e1b
issue #4582
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-21 18:23:41 -07:00
Christoph M. Wintersteiger
d3ae40130a
Fix rounding bug in mpf_manager. Fixes #2970 .
2020-07-16 12:39:12 +00:00
Nuno Lopes
b7caabbd0f
fix crashes with MSVC 2019
2020-07-14 13:14:44 +01:00
Nuno Lopes
d1a0e83423
fix crash
2020-07-13 14:25:12 +01:00
Nuno Lopes
122f5a1464
remove unused field
2020-07-12 23:12:00 +01:00
Nuno Lopes
90fc8d854f
add rval methods to scoped_vector
2020-07-12 22:16:24 +01:00
Nuno Lopes
f30e8ccec3
fix crashes due to my last commit
2020-07-12 19:53:22 +01:00
Nuno Lopes
bb26f219fe
remove unneeded constructors (last round)
2020-07-12 17:41:57 +01:00
Nuno Lopes
23e6adcad3
fix a couple hundred deref-after-free bugs due to .c_str() on a temporary string
2020-07-11 20:24:45 +01:00
Nuno Lopes
ca97bfb4b8
fix build
2020-07-05 11:44:12 +01:00
Nikolaj Bjorner
006418e027
build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 23:34:21 -07:00
Nikolaj Bjorner
f380d4cf83
mpfx
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 18:25:32 -07:00
Nikolaj Bjorner
51d43c04ea
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 17:13:04 -07:00
Nikolaj Bjorner
bf14444f7d
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 17:07:07 -07:00
Nikolaj Bjorner
d0e20e44ff
booyah
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Nikolaj Bjorner
10d0404175
add rec decl/def to ML #4563
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:38:32 -07:00
Nikolaj Bjorner
38d6771a5e
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-22 12:23:42 -07:00
Nuno Lopes
38d4418f94
simplify string_buffer::append
2020-06-18 19:55:34 +01:00
Nikolaj Bjorner
7387fc9dec
avoid some bignum overhead in addmul
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-14 11:20:05 -07:00
Nuno Lopes
ec1e733ef2
fix crash in qe_array ref counting due to wrong assignment operator of ptr_vector being called
...
thanks to Arie Gurfinkel for reporting this
2020-06-09 10:02:27 +01:00
Nikolaj Bjorner
9ca5b3f304
fix #4449
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 21:10:07 -07:00
Nuno Lopes
e844aef896
remove a few more copy constructors, though still not enough to enable the assertion in vector
...
I give up for now; there are too many copies left for little return..
2020-06-03 20:32:13 +01:00
Nuno Lopes
7ac2791482
remove a bunch of constructors to avoid copies
...
still not enough to guarantee that vector::expand doesnt copy (WIP)
2020-06-03 17:09:27 +01:00
Nuno Lopes
98b5abb1d4
buffer: require a move constructor to avoid copies
...
remove unneded copy constructors from several classes
2020-06-03 11:57:49 +01:00
Nuno Lopes
3d98bccc33
fix mem leak in buffer and remove copies in interval ( #4458 )
2020-06-03 10:26:00 +01:00
Nuno Lopes
6a45c5d17c
fix build with prehistorical compilers because of pip/manylinux
2020-05-30 11:42:27 +01:00
Nuno Lopes
d8cea7c8d5
fix a few warnings & simplify debug.h header
2020-05-26 13:49:13 +01:00
Nuno Lopes
7a12cebd41
remove unused file
2020-05-24 00:10:40 +01:00
Nuno Lopes
903725314c
fix gcc 9/10 warnings
2020-05-23 16:39:09 +01:00
Nuno Lopes
232f1b5fbe
fix a gcc 10 warning
2020-05-19 14:44:14 +01:00
Nikolaj Bjorner
5844964d95
rename temporary macro
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 17:17:51 -07:00
Nikolaj Bjorner
8e8e9be25f
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 16:49:43 -07:00
Nikolaj Bjorner
c2a59a89af
thanks to https://github.com/Z3Prover/z3/pull/4382#issuecomment-630468832_
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:32:23 -07:00
Nikolaj Bjorner
801eb47fae
remove thread dependency in symbol.cpp on single thread #4382
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:16:08 -07:00
Nikolaj Bjorner
ff10afd226
remove thread dependency in symbol.cpp on single thread #4382
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:11:24 -07:00
Nikolaj Bjorner
1072bf1536
deal with unsigned / bignum #4361
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 14:42:06 -07:00
Daniel Peebles
7e34925035
Improve UX for unreachable/unimplemented errors ( #4094 )
...
This should replace several "segfaults" and "illegal instruction" errors
with messages that contain a bit more context. I also put in a link to
the bug tracker to make users' lives a bit easier.
For context, `__builtin_unreachable`'s behavior is undefined and is
intended only as a mechanism to help the compiler see that code will not
return. I do still include it in the new code because if I don't,
compilation produces a lot more warnings as it can't see that
`NOT_IMPLEMENTED_YET` and `UNREACHABLE` cannot return.
2020-04-28 19:54:31 -07:00
Nikolaj Bjorner
4f462925a0
fix #4116
...
delta has to be computed based on Simplex tableau not on difference graph.
2020-04-27 17:07:12 -07:00
Nikolaj Bjorner
5434f3e31d
fix #4105
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-26 22:59:19 -07:00
Nikolaj Bjorner
a884201d62
remove using insert_if_not_there2
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-25 15:08:51 -07:00
Nikolaj Bjorner
9ea1cf3c5c
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-25 13:13:25 -07:00
Nikolaj Bjorner
cc8cd2cc2f
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-23 21:28:19 -07:00
Nikolaj Bjorner
9c3f0190f4
fix #4069
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-23 20:53:13 -07:00
Nikolaj Bjorner
95a78b2450
updates to seq and bug fixes ( #4056 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4037
* nicer output for skolem functions
* more overhaul of seq, some bug fixes
* na
* added offset_eq file
* na
* fix #4044
* fix #4040
* fix #4045
* updated ignore
* new rewrites for indexof based on #4036
* add shortcuts
* updated ne solver for seq, fix #4025
* use pair vectors for equalities that are reduced by seq_rewriter
* use erase_and_swap
* remove unit-walk
* na
* add check for #3200
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* name a type
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove fp check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove unsound axiom instantiation for non-contains
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix rewrites
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4053
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4052
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-22 13:18:55 -07:00
Nikolaj Bjorner
3e9479d01a
a lot of seq churn
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-17 18:21:40 -07:00
Nikolaj Bjorner
2e1e9c9082
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-15 12:25:07 -07:00
Nikolaj Bjorner
3845e0859c
fix #3878
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-15 12:23:18 -07:00
Nikolaj Bjorner
dff5071598
compile
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-05 17:03:26 -07:00
Nikolaj Bjorner
b889b110ee
bool_vector, some spacer tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-05 12:59:04 -07:00
Nikolaj Bjorner
eacde16b3e
fix #3199
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 23:55:44 -07:00
Nikolaj Bjorner
031b3a55ef
fix #3733 persist uninterpreted atoms across calls to incremental sat solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 13:11:39 -07:00
Nikolaj Bjorner
31e16c7d60
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 20:20:33 -07:00
Nikolaj Bjorner
f4472927c0
play nice with sanitizers
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 17:39:22 -07:00
Nikolaj Bjorner
a6e7ed039c
fix #3587
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 15:18:37 -07:00
Nikolaj Bjorner
e263f9b238
fix #3559
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 14:00:30 -07:00
Nikolaj Bjorner
fd54408629
fix leaks exposed by #3383
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-17 13:01:46 -07:00
Nikolaj Bjorner
7452e55698
fix #3190 fix #3168
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-08 12:54:03 +01:00
Nikolaj Bjorner
f501380e89
fix #3169 - set cancellation timeout and limit during push. Also expose internalization outside of scope that disables cancellation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-06 23:36:04 +01:00
Nikolaj Bjorner
f29b455611
fix #2949 fix #2955 experiment with cut selection
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-08 10:34:14 -08:00
Nikolaj Bjorner
2d59b81353
delay evaluation of model, throttle propagation, introduce LUT results into cutset
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-05 12:33:42 -08:00
Nikolaj Bjorner
32968fa41c
fix #2935
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-03 19:57:20 -08:00
Nikolaj Bjorner
abbee32ddc
fixup use of SYNC/SYNCH for mpz
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-01 11:18:36 -08:00
Nikolaj Bjorner
5f89ead54b
adding t-smt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-31 17:08:53 -08:00
Nikolaj Bjorner
5f2720562b
adding threads to smt core
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-31 17:08:53 -08:00
Nikolaj Bjorner
ff5bdd6f1f
speed up freedom interval computation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 15:21:39 -08:00
Lev Nachmanson
33cbd29ed0
mv util/lp to math/lp
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b6513b8e2d
fix the merge
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3b9b4d973b
do not print external names in nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
58c8f3f118
remove the generate_simple_tangent_lemma()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f20a028f7b
hook up generate_simple_tangent_lemma()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b2b4193afa
avoid empty lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
40cc8c31e5
generate simple_sign_lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d3bd55d0cf
remove m_mons_to_rehash, fix a bug in emonomials::after_merge_eh(), generate order and tangent lemmas on any monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
45b72d7790
use union_find in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d78cc4975a
use incremental vector
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
94e3078920
making var_eqs into a template
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
50d3e67e61
adding commments
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
a2e23377ba
remove some typedefs
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
fe4847cd56
remove rooted monomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0c214ec465
some renaming in var_eqs
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
821886b94b
cleanup and adding an assert in emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2b5e8e9652
change in a comment
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
ee91d73a82
add a todo comment on using generate_simple_tangent_lemma on each factorization
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2dbfb2edc2
run tangent and ordered lemmas only on canonical monomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
5352a5fb85
fix the factorization sign to be equal to the monomial sign
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
375027d195
fix the factorization sign to be equal to the monomial sign
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
df5f3f9722
debug tangent lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0c50971b57
add nla_params and settings, make m_emons private
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
eb657a322a
fix bool sign usage
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c35b561496
fix in basic_lemma_for_mon_zero_model_based()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e9a4a60fbc
call do_canonize() in is_canonised
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b85b27d7bb
fix the usage of sign flag
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
495161fe5c
operate with sign as a boolean
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
6d5fd5d980
getting rid of from_index_dummy
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
59e8382909
fix ordered lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
54ba889b7b
debug order lemma, introduce sign for factors
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
218e155603
fix feasibility tracking in lar_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c74893016a
change lar_term into a class and make lar_terms::m_coeffs private
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f170d80d38
fixes in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d32e50bc3c
fix the build
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
e234bede4c
fixes ( #96 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b32f2703d4
fix in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
25edc98f36
fixes ( #95 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8cdf754990
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
82bf62f5fa
removed calls to settings.random_next() from assert statements
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
aeef6fd2d4
make factorization_factory.m_vars an alias
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
bdabd52fb9
fix in m_cg_table.find()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8303d8c9ae
fix bugs related to emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f78a2058fc
fix order lemmas for emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9d6bf016fc
fix order lemmas for emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
150d3769fb
debug new monomials on order lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
02379417a6
renam vvr to val
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
11e3e1b463
debug refactor of smon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9411911cf3
debug refactor of smon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
53cc8048f7
merge smon with monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e73296fbe5
renaming the smon fields to distingush them from monomial fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7eeba3a917
renaming the smon fields to distingush them from monomial fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
4cbb586947
unite smon and mon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
c327f8799b
code review of tangent lemmas ( #94 )
...
* code reviewing order lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* code review monotonity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* cr tangent
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* cr tangent
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c97a6dd7cb
fix referencen to vvr()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
49c2d991ca
use pp_mon to print a monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
ed3bfcdea9
code reviewing order lemmas ( #93 )
...
* code reviewing order lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* code review monotonity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1ab3957eea
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
ef6fd1cf8e
Emons ( #92 )
...
* fix loop in equiv_monomials
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* pp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix prev/next update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* generalize factors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
7e67e1ce99
fix loop in equiv_monomials ( #91 )
...
* fix loop in equiv_monomials
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e6561c983f
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
884a2628de
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
e28e83a25e
port to emonomials ( #90 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b52e79b648
emons branch
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
14f00b3749
remove a test
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
be5170fc3b
hook up more lp_params
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c96c37e878
fix an assert
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c557743be4
fix in rounding rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7f12dfbbe8
fix in rounding rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2d12874f30
fix errors in cube rounding
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
43758cbc66
more efficiend handling of rounded in cube heuristic rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b47e0cd4fb
fix tableau's Ax=b after cube heuristic
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
48fcd66bb9
refactor tests from nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
facf0b80c0
refactor monotone lemmas out of core
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8331207b81
clean up nla_core.h
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
25198c91b3
clean up nla_core.h
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2e9b4f643a
fix a reference to random
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1a0d68e1b7
remove shadow m_core fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9e82e6965c
refactoring nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7fa4371d96
remove a method
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00