Nikolaj Bjorner
5622fd1362
initialize delay bound
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-26 03:26:41 -07:00
Nikolaj Bjorner
20c54048f7
use cone of influence reduction before calling nlsat.
2023-10-25 16:19:23 -07:00
Nikolaj Bjorner
e2db2b864b
add hook for in-processing simplification for NLA
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-25 15:09:21 -07:00
Nikolaj Bjorner
55775bdc20
incremnet log level for debug output on cancelation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-25 13:15:15 -07:00
Nikolaj Bjorner
53ce18ef34
update backoff for bounded_nla
2023-10-21 19:57:06 -07:00
Nikolaj Bjorner
97058b0d5d
allow for propagations the trigger make-feasible check
2023-10-19 16:08:44 -07:00
Nikolaj Bjorner
c9c5dbc347
#6523
2023-10-16 09:27:22 -07:00
Nikolaj Bjorner
4a870966ad
add code to enable unit propagation of bounds
...
set UNIT_PROPAGATE_BOUNDS 1 to use the unit propagation version. It applies unit propagation eagerly (does not depend on checking LIA consistency before final check) and avoid creating new literals in most cases
2023-10-09 16:04:39 +09:00
Lev Nachmanson
edd1761ff3
restore the scheme of m_columns_with_changed_bounds
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-10-04 11:06:24 -07:00
Lev Nachmanson
7de06c4350
merging master to unit_prop_on_monomials
2023-10-02 16:42:59 -07:00
Lev Nachmanson
a297a2b25c
fixes in lar_solver around nl unit propagation
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-10-01 11:39:58 -07:00
Lev Nachmanson
b64fdef41f
better tracking changinc rows and monomials
2023-09-29 15:27:22 -07:00
Lev Nachmanson
f30a2c13be
propagate only one non-fixed monomial intrernally
...
lar_solver
2023-09-28 17:24:34 -07:00
Lev Nachmanson
29b5c47a8d
track changed monics efficiently
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-09-27 09:09:38 -07:00
Nikolaj Bjorner
e8fcc876c9
Merge branch 'master' into unit_prop_on_monomials
2023-09-26 20:14:06 -07:00
Nikolaj Bjorner
ec2937e2de
port over moving m_nla_lemmas into nla_core from the linear monomial propagation branch
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-26 20:08:30 -07:00
Lev Nachmanson
6ff4856e38
throttle monomial unit prop and and nl params
2023-09-25 16:47:34 -07:00
Nikolaj Bjorner
0a1ade6f95
move m_nla_lemma_vector to be internal to nla_core
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-25 12:40:52 -07:00
Lev Nachmanson
26a9b776c6
clean m_nla_lemma_vector in nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-09-25 12:10:59 -07:00
Nikolaj Bjorner
886d3f4351
indentation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-22 16:55:34 -07:00
Nikolaj Bjorner
eac54ba084
indentation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-22 16:54:12 -07:00
Nikolaj Bjorner
940775d12d
indentation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-22 16:48:40 -07:00
Lev Nachmanson
caa929f01f
do not use lemmase in monomial propagation
2023-09-22 14:27:26 -07:00
Lev Nachmanson
f423642e9b
try the lemma scheme
2023-09-21 12:18:21 -07:00
Lev Nachmanson
e31cecf5db
transfer propagate monomial bounds to nla_solver
2023-09-21 11:27:53 -07:00
Lev Nachmanson
c5cfd62e0a
remove dead code related to nla unit propagation
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-09-19 10:56:09 -07:00
Lev Nachmanson
c309d52283
runs a simple test
2023-09-13 08:12:00 -07:00
Lev Nachmanson
c050af922f
fixing the bugs
2023-09-07 15:59:20 -07:00
Lev Nachmanson
47b64e689c
restore the lemma scheme
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-09-07 11:33:14 -07:00
Lev Nachmanson
41f59cb1ed
propagate monomial is nla
2023-09-05 18:49:59 -07:00
Lev Nachmanson
318d7d7564
fixes a bug
2023-09-01 11:32:26 -07:00
Lev Nachmanson
d3258e7084
propagate lineal monomial
2023-09-01 11:18:03 -07:00
Lev Nachmanson
5509b468e9
handle monomial_bounds::unit_propagate()
2023-08-31 17:35:41 -07:00
Nikolaj Bjorner
ff3268e636
move unit propagation into monomial_bounds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-08-31 14:32:05 -07:00
Nikolaj Bjorner
c2cbe72b64
sketch linear monomial propagation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-08-31 11:49:05 -07:00
Nikolaj Bjorner
38b131386d
add stubs for monomial unit propagation
2023-08-30 17:21:48 -07:00
Nikolaj Bjorner
e8929041b8
fixing calls, signs
2023-08-22 09:29:12 -07:00
Lev Nachmanson
61a7c6b28d
init m_literal_vec
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-08-21 17:11:55 -07:00
Lev Nachmanson
9aeaed8f53
Merge branch 'master' into nl_branches
2023-08-21 16:15:20 -07:00
Lev Nachmanson
9b672bc5cc
remove tracking of bounds
2023-08-20 10:10:48 -07:00
Nikolaj Bjorner
5e3df9ee77
Arith min max ( #6864 )
...
* prepare for dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* snapshot
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more refactoring
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more refactoring
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* pass in u_dependency_manager
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* address NYIs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more refactoring names
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* eq_explanation update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add outline of bounds improvement functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix unit tests
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove unused structs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* convert more internals to use u_dependency instead of constraint_index
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* convert more internals to use u_dependency instead of constraint_index
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remember to push/pop scopes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use the main function for updating bounds
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 reset of shared dep manager
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* disable improve-bounds, add statistics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
---------
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-08-19 17:44:09 -07:00
Lev Nachmanson
610313946d
split free vars in nla
2023-08-18 12:36:14 -07:00
Lev Nachmanson
252a30e727
use param_ref in nla_solver ( #6862 )
...
* use param_ref in nla_solver
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* add parameters
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add parameters
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* replace nla_setting by command line parameters
* delete nla_setting.h
---------
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-08-17 18:44:27 -07:00
Lev Nachmanson
f58b703ac5
u_set replaced by indexed_uint_set ( #6841 )
...
* replace u_set by indexed_uint_set
* replace u_set by indexed_uint_set
* create insert-fresh and insert for indexed_uint_set to make use cases with non-fresh inserts easier
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update nightly to pull arm
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update nightly to pull arm
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fixing the build of lp_tst
* update nightly to pull arm
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* replace u_set by indexed_uint_set
* replace u_set by indexed_uint_set
* fixing the build of lp_tst
* remove unnecessery call to contains() before
insert to indexed_uint_set
* formatting, no check for contains()
in indexed_uint_set, always init m_touched_rows to nullptr
---------
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-08-03 16:01:27 -07:00
Lev Nachmanson
e091a2e775
remove the line with clang-format off
2023-07-10 12:05:59 -07:00
Lev Nachmanson
5ed2a82893
set clang format off for lp files ( #6795 )
...
* adding // clang-format off
* set clang-format off at the beginning of lp files
* set clang-format off
* remove dead code
2023-07-03 17:35:16 -07:00
Nikolaj Bjorner
b2c035ea3f
missing negation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-06-26 18:46:03 -07:00
Nikolaj Bjorner
7221c84156
fix #6783
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-06-25 21:21:06 -07:00
Lev Nachmanson
32ec02778e
use heap to track infeasible columns. ( #6771 )
...
* use heap to track infeasible columns
* fix the formatting
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
---------
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-06-19 13:50:14 -07:00
Nikolaj Bjorner
3dc91de531
fix #6582
2023-02-13 13:21:30 -08:00