Lev Nachmanson
008e9229a5
use std_vector more and getting NOT_IMPLEMENTING in C:\dev\z3\src\math\lp\dioph_eq.cpp
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2025-02-11 12:23:00 -10:00
Nikolaj Bjorner
bdb9106f99
Api ( #7097 )
...
* rename ul_pair to column
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* t
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* simple test passed
* remove an assert
* relax an assertion
* remove an obsolete function
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* access a term by the term column
* remove the column index from colunm.h
* remove an unused method
* remove debug code
* fix the build of lp_tst
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
---------
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
Co-authored-by: Lev Nachmanson <levnach@hotmail.com>
2024-01-24 16:05:18 -08:00
Nikolaj Bjorner
4a9b38e531
clean up nla_grobner
2023-12-04 17:08:17 -08:00
Nikolaj Bjorner
de75692cb0
install importlib-resources for ubuntu doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-04 10:32:02 -08:00
Nikolaj Bjorner
f7415bb677
install importlib-resources for ubuntu doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-04 10:32:02 -08:00
Nikolaj Bjorner
7eab26e3ef
try with missed bounds
2023-12-02 10:48:40 -08:00
Nikolaj Bjorner
f97dd34028
tests
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-30 14:54:04 -07:00
Nikolaj Bjorner
160971df60
fix #6969 , again
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-29 19:10:46 -07:00
Nikolaj Bjorner
589024aa1c
fix #6969
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-29 17:44:00 -07:00
Nikolaj Bjorner
20c54048f7
use cone of influence reduction before calling nlsat.
2023-10-25 16:19:23 -07:00
Nikolaj Bjorner
c9d298e57f
enable propagate-linear-equations and extend to monomials
2023-10-21 19:57:41 -07:00
Nikolaj Bjorner
97058b0d5d
allow for propagations the trigger make-feasible check
2023-10-19 16:08:44 -07:00
Nikolaj Bjorner
37fe9cc764
add Horner saturation to Grobner conflict detection
...
- throttle Grobner
- add (disabled) propagate_linear_equation to prepare for additional propagation.
- add validation code is_nla_conflict/add_nla_conflict to establish missed conflicts
2023-10-17 21:19:57 -07:00
Nikolaj Bjorner
ba881d9c9b
add facility to experiment with nla justified conflicts from Grobner equations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-16 00:40:43 -07:00
Nikolaj Bjorner
18fc6914d3
add facility to experiment with nla justified conflicts from Grobner equations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-10-16 00:40:24 -07:00
Nikolaj Bjorner
bdac86501d
add facility to check for missing propagations
2023-10-15 20:33: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
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
a6a5985f8e
fix #6341
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-13 17:19:48 -07:00
Nikolaj Bjorner
6c5747a80e
guard against lemmas that are already true
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-15 10:03:31 -07:00
Nikolaj Bjorner
b29cdca936
integrate factorization to Grobner
2022-07-14 21:24:27 -07:00
Nikolaj Bjorner
7c177584f3
add propagators to grobner
2022-07-14 15:45:07 -07:00
Nikolaj Bjorner
981c82c814
fix initialization order
2022-07-13 18:11:18 -07:00
Nikolaj Bjorner
894fb836e2
fix build break (debug assertion) and isolate gomory functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-13 17:26:56 -07:00
Nikolaj Bjorner
b81f70f6fc
split nla_grobner to separate file
2022-07-13 13:05:57 -07:00
Lev Nachmanson
496a8c17aa
remove nex grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
361964f173
fix arith errors add_row for nex grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e8f29b3144
fix init for nex_grobner()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c6e5d434b2
create scalars for fixed variables in rows for grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
dd9935de7d
preparing a call to pdd_grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
22bec010ba
use dep_intervals inside of nla_intervals
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0039b68ca3
merged dependency.h from main repo
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
48f7e69d0e
only run grobner when horner fails, introduce concat instead copy
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
919946b567
revert the last commit with freeing the memory
...
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
13ff96b40b
more agressive freeing memory from nla_grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
62dc731b5b
remove some debug code
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
0535e24dd1
consolidate parameters, add comment ( #102 )
...
* updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* code review of nla_intervals: combine functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* tidy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* formatting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add comments
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge issue
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* tired of looking at compiler warning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
580f229a16
free memory in nex_creator during GB init
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
26956cafb0
limit the size of expressions in Grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7ddcfcafad
limit explosiion of expressions in Grobner, allow rows containing free vars to Grobner
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
fb69139daa
minor ( #100 )
...
* streamline type conversions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* revert creation time allocation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix assertion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* separate grobner_core
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* grobner_core simplifications
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* * -> &, remove unused functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* m_allocated isn't used
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* neither is m_tmp_var_set
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove eq_stat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* const qualifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* mostly -> to .
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
efe4d6c53c
fix the build and restore the nex_pow gt() comparison
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f17c3c3b12
fix ubuntu's build
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
b46c67ce14
more code review ( #99 )
...
* streamline type conversions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* revert creation time allocation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix assertion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* separate grobner_core
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* grobner_core simplifications
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* * -> &, remove unused functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* m_allocated isn't used
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* neither is m_tmp_var_set
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove eq_stat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* const qualifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
14094bb052
code review ( #98 )
...
* streamline type conversions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* use fixed array allocation for sum
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* revert creation time allocation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix assertion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* separate grobner_core
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* grobner_core simplifications
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9661f75246
add an assert test_find_b_c()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2fbb4cac9d
a fix in nex comparison and impovement of grobner stats
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00