3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 13:28:47 +00:00
Commit graph

16311 commits

Author SHA1 Message Date
Nikolaj Bjorner aec867586a updates to equality solving search
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-12-02 13:41:18 -08:00
Nikolaj Bjorner e6feb8423a sls: fix bug where unsat remains empty after a literal is flipped. The new satisfiable subset should be checked
refined interface between solvers to expose fixed variables for tabu objectives
2024-12-01 18:35:56 -08:00
Nikolaj Bjorner 24c3cd38d1 add v0 of equality solver 2024-11-30 17:25:49 -08:00
Nikolaj Bjorner 05e053247d add facility to solve for a linear term over API 2024-11-30 09:34:27 -08:00
Nikolaj Bjorner d2411567b5 add projection with witnesses
expose model based projection with witness creation
2024-11-27 10:26:34 -08:00
Nikolaj Bjorner b7b611d84b inherit from std::exception
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-27 10:26:34 -08:00
Nuno Lopes ab1be5c06e internalize the reduce_args_tactic to reduce the number of heap allocations 2024-11-27 12:35:40 +00:00
Nuno Lopes 1ccfba6a91 remove unreachble code 2024-11-27 12:09:16 +00:00
Nikolaj Bjorner 1e62029413 use ztring
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-25 17:36:42 -08:00
Nikolaj Bjorner fce377e1d7 add basic regex functions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-25 17:34:49 -08:00
Nikolaj Bjorner b143a954c5 add notes and additional functions to sls-seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-25 13:46:16 -08:00
Nikolaj Bjorner aed3279d7d add missing new_value_eh when repaired up
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-24 19:57:40 -08:00
Nikolaj Bjorner 1e839e5ac2 add missing new_value_eh when repaired up
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-24 19:42:13 -08:00
Nikolaj Bjorner 7ed185aa9e add comments
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-24 19:09:50 -08:00
Nikolaj Bjorner 4559b23caf add local search functionality to sls_seq_plugin
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-24 11:24:17 -08:00
Nikolaj Bjorner b4e768cfb0 adding plugin for local search strings 2024-11-22 13:56:03 -08:00
Nikolaj Bjorner 36725758eb fix typos POLING -> POLLING in setup.py and remove unused CFLAGS
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-21 11:32:38 -08:00
Nikolaj Bjorner 71bad7159b #7418 - circumvent use of timer threads to make WASM integration of z3 easier
The scoped_timer uses a std::therad. Spawning this thread fails in cases of WASM.
Instead of adapting builds and using async features at the level of WASM and the client, we expose a specialized version of z3 that doesn't use threads at all, neither for solvers nor for timers.
The tradeoff is that the periodic poll that checks for timeout directly queries the global clock each time.
We characterize it as based on polling.
2024-11-21 11:20:05 -08:00
Nikolaj Bjorner 8965123c0d fix type in setup.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-19 19:08:29 -08:00
Nikolaj Bjorner 10d9c81957 adapt for pyodide built
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-19 18:51:04 -08:00
Nikolaj Bjorner 012fc1b72b more detailed tracing of where unmaterialized exceptions happen
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-19 18:15:50 -08:00
Nikolaj Bjorner e855a50d9b add exception handling to easier diagnose #7418
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-19 11:46:54 -08:00
Nikolaj Bjorner 5168a13efa track exceptions in reason-unknown
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-19 09:29:23 -08:00
Nikolaj Bjorner 4b72e517b7 SLS: log clause , allow more frequent export of SLS state to SMT 2024-11-17 20:13:02 -08:00
Nikolaj Bjorner 84447b7031 remove incremental mode from EUF, include statistics about restart vs propagation calls to sls 2024-11-17 16:58:18 -08:00
Nikolaj Bjorner c7ea4964f2 bug fixes to sls 2024-11-17 13:07:38 -08:00
Nikolaj Bjorner 2310514e02 fix #7454 2024-11-16 18:20:06 -08:00
Nikolaj Bjorner 5fd1231ec0 incorporate ls during propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-16 15:28:28 -08:00
Nikolaj Bjorner 750dd68a14 enable par_then and par_or even if single threaded - fall back to sequential mode 2024-11-16 12:29:22 -08:00
Nikolaj Bjorner f64d077d2a fix re-entrancy bug during flip in arith_base 2024-11-16 12:29:03 -08:00
Nikolaj Bjorner b929996941 update to set single threaded
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-16 09:11:44 -08:00
Nikolaj Bjorner f39198d9a8 move build-env setting to correct place
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-16 08:32:47 -08:00
Nikolaj Bjorner 197951cad4 fixes to sls 2024-11-16 08:28:24 -08:00
Nikolaj Bjorner 7c5ff7c623 moving compile time flags to setup for pyodide 2024-11-16 08:28:24 -08:00
Nikolaj Bjorner ccbe6c33ae fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-15 09:29:30 -08:00
Nikolaj Bjorner ea590def47 remove breaking experiment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-15 08:03:57 -08:00
Nikolaj Bjorner 1d8a904e99 build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-14 22:10:59 -08:00
Nikolaj Bjorner 77eacef2ae build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-14 22:08:13 -08:00
Nikolaj Bjorner 3f407982f3 build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-14 21:55:44 -08:00
Nikolaj Bjorner 8e3b9f6686 add sequential option for SLS, fixes to import/export methods SLS<->SMT 2024-11-14 21:43:40 -08:00
Nikolaj Bjorner 6a9d5910cb add method for resetting limit 2024-11-14 21:43:40 -08:00
Nikolaj Bjorner 6eae3f0863 add cases for unconstrained sequences and strings 2024-11-14 21:43:40 -08:00
Nikolaj Bjorner 62db7642ec refine rewriting depth for lt constraints 2024-11-14 21:43:40 -08:00
Linus d3009dabfc
Proposed fix for #7451 (#7452) 2024-11-13 09:11:40 -08:00
Nikolaj Bjorner c0e748a51a fix #7446, by adding rewrite simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-11 19:16:11 -08:00
Nikolaj Bjorner 1cc808c58d fix #7446, by adding rewrite simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-11 19:08:11 -08:00
Nikolaj Bjorner 30ad22a4ef fix #7449 2024-11-11 15:45:18 -08:00
Nikolaj Bjorner 879bb4b1f0 avoid circular dependencies in justifications that get updated. fixes #7443 2024-11-10 19:35:01 -08:00
Nikolaj Bjorner 1856ab72d9 fix #7448 2024-11-10 14:40:28 -08:00
Nikolaj Bjorner 4f060dd2b1 fix #7445 2024-11-10 14:40:04 -08:00
Nikolaj Bjorner abd16740ce inherit more exceptions from std::exception
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 13:52:14 -08:00
Nikolaj Bjorner a38bf3e22f port to inherit from std::exception
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 13:25:14 -08:00
Nikolaj Bjorner 407bad3693 add noexcept
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 11:21:55 -08:00
Nikolaj Bjorner 42894f729a add noexcept for signature compatibility
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 11:13:49 -08:00
Audrey Dutcher 75e46778fa
Make build process work with pyodide (#7442) 2024-11-04 11:09:51 -08:00
Nikolaj Bjorner 92065462b4 use std::exception as base class to z3_exception
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 11:08:15 -08:00
Nikolaj Bjorner 1957b4d991 fix reporting on cancelation when based on cancel flag 2024-11-02 12:48:12 -07:00
Jonas Jongejan 604714ba40
js: Add pseudo-boolean high-level functions (#7426)
* js: Add pseudo-boolean high-level functions

* Add check for arg length
2024-11-02 12:34:15 -07:00
Nikolaj Bjorner 91dc02d862
Sls (#7439)
* reorg sls

* sls

* na

* split into base and plugin

* move sat_params to params directory, add op_def repair options

* move sat_ddfw to sls, initiate sls-bv-plugin

* porting bv-sls

* adding basic plugin

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add sls-sms solver

* bv updates

* updated dependencies

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* updated dependencies

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use portable ptr-initializer

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* move definitions to cpp

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use template<> syntax

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix compiler errors for gcc

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Bump docker/build-push-action from 6.0.0 to 6.1.0 (#7265)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.0.0...v6.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* set clean shutdown for local search and re-enable local search when it parallelizes with PB solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Bump docker/build-push-action from 6.1.0 to 6.2.0 (#7269)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix a comment for Z3_solver_from_string (#7271)

Z3_solver_from_string accepts a string buffer with solver
assertions, not a string buffer with filename.

* trigger the build with a comment change

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* remove macro distinction #7270

* fix #7268

* kludge to address #7232, probably superseeded by planned revision to setup/pypi

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add new ema invariant (#7288)

* Bump docker/build-push-action from 6.2.0 to 6.3.0 (#7280)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.2.0...v6.3.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* merge

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix unit test build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove shared attribute

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove stale files

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix build of unit test

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes and rename sls-cc to sls-euf-plugin

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* testing / debugging arithmetic

* updates to repair logic, mainly arithmetic

* fixes to sls

* evolve sls arith

* bugfixes in sls-arith

* fix typo

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* bug fixes

* Update sls_test.cpp

* fixes

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* refactor basic plugin and clause generation

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to ite and other

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* updates

* update

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix division by 0

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable fail restart

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable tabu when using reset moves

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* update sls_test

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add factoring

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to semantics

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* re-add tabu override

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* generalize factoring

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix bug

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove restart

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable tabu in fallback modes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* localize impact of factoring

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* delay factoring

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* flatten products

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* perform lookahead update + nested mul

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable nested mul

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable nested mul, use non-lookahead

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* make reset updates recursive

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* include linear moves

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* include 5% reset probability

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* separate linear update

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* separate linear update remove 20% threshold

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove linear opt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* enable multiplier expansion, enable linear move

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use unit coefficients for muls

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* disable non-tabu version of find_nl_moves

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove coefficient from multiplication definition

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reorg monomials

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add smt params to path

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* avoid negative reward

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use reward as proxy for score

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use reward as proxy for score

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use exponential decay with breaks

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use std::pow

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to bv

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to fixed

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixup repairs

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reserve for multiplication

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixing repair

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* include bounds checks in set random

* na

* fixes to mul

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix mul inverse

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to handling signed operators

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* logging and fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* gcm

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* peli

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Add .env to gitignore to prevent environment files from being tracked

* Add m_num_pelis counter to stats in sls_context

* Remove m_num_pelis member from stats struct in sls_context

* Enhance bv_sls_eval with improved repair and logging, refine is_bv_predicate in sls_bv_plugin

* Remove verbose logging in register_term function of sls_basic_plugin and fix formatting in sls_context

* Rename source files for consistency in `src/ast/sls` directory

* Refactor bv_sls files to sls_bv with namespace and class name adjustments

* Remove typename from member declarations in bv_fixed class

* fixing conca

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Add initial implementation of bit-vector SLS evaluation module in bv_sls_eval.cpp

* Remove bv_sls_eval.cpp as part of code cleanup and refactoring

* Refactor alignment of member variables in bv_plugin of sls namespace

* Rename SLS engine related files to reflect their specific use for bit-vectors

* Refactor SLS engine and evaluator components for bit-vector specifics and adjust memory manager alignment

* Enhance bv_eval with use_current, lookahead strategies, and randomization improvements in SLS module

* Refactor verbose logging and fix logic in range adjustment functions in sls bv modules

* Remove commented verbose output in sls_bv_plugin.cpp during repair process

* Add early return after setting fixed subterms in sls_bv_fixed.cpp

* Remove redundant return statement in sls_bv_fixed.cpp

* fixes to new value propagation

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Refactor sls bv evaluation and fix logic checks for bit operations

* Add array plugin support and update bv_eval in ast_sls module

* Add array, model value, and user sort plugins to SLS module with enhancements in array propagation logic

* Refactor array_plugin in sls to improve handling of select expressions with multiple arguments

* Enhance array plugin with early termination and propagation verification, and improve euf and user sort plugins with propagation adjustments and debugging enhancements

* Add support for handling 'distinct' expressions in SLS context and user sort plugin

* Remove model value and user sort plugins from SLS theory

* replace user plugin by euf plugin

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove extra file

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Refactor handling of term registration and enhance distinct handling in sls_euf_plugin

* Add TODO list for enhancements in sls_euf_plugin.cpp

* add incremental mode

* updated package

* fix sls build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* break sls build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix build

* break build again

* fix build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixing incremental

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* avoid units

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixup handling of disequality propagation

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fx

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* recover shift-weight loop

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* alternate

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* throttle save model

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* allow for alternating

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix test for new signature of flip

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* bug fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* restore use of value_hash

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding dt plugin

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* dt updates

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* added cycle detection

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* updated sls-datatype

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Refactor context management, improve datatype handling, and enhance logging in sls plugins.

* axiomatize dt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing factory plugins to model

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixup finite domain search

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixup finite domain search

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* redo dfs

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixing model construction for underspecified operators

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to occurs check

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixup interpretation building

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* saturate worklist

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* delay distinct axiom

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding model-based sls for datatatypes

* update the interface in sls_solver to transfer phase between SAT and SLS

* add value transfer option

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* rename aux functions

* Track shared variables using a unit set

* debugging parallel integration

* fix dirty flag setting

* update log level

* add plugin to smt_context, factor out sls_smt_plugin functionality.

* bug fixes

* fixes

* use common infrastructure for sls-smt

* fix build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix build

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove declaration of context

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add virtual destructor

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* build warnings

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reorder inclusion order to define smt_context before theory_sls

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* change namespace for single threaded

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* check delayed eqs before nla

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use independent completion flag for sls to avoid conflating with genuine cancelation

* validate sls-arith lemmas

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* bugfixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add intblast to legacy SMT solver

* fixup model generation for theory_intblast

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* mk_value needs to accept more cases where integer expression doesn't evalate

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use th-axioms to track origins of assertions

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing operator handling for bitwise operators

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing operator handling for bitwise operators

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* normalizing inequality

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add virtual destructor

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* rework elim_unconstrained

* fix non-termination

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use glue as computed without adjustment

* update model generation to fix model bug

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes to model construction

* remove package and package lock

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix build warning

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use original gai

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

---------

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sergey Bronnikov <estetus@gmail.com>
Co-authored-by: Lev Nachmanson <levnach@hotmail.com>
Co-authored-by: LiviaSun <33578456+ChuyueSun@users.noreply.github.com>
2024-11-02 12:32:48 -07:00
Nikolaj Bjorner ecdfab81a6 fix #7434
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-28 17:51:01 -07:00
Nikolaj Bjorner b0fef6429f
Add assert_and_track support to Optimize class in .NET binding (#7437)
Related to #7436

#7436

---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/Z3Prover/z3/issues/7436?shareId=XXXX-XXXX-XXXX-XXXX).
2024-10-26 01:33:09 -07:00
Nikolaj Bjorner 8b657f27aa add shortcut to retrieve kind of application
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-22 13:05:58 -07:00
Nikolaj Bjorner 78d1139ba0 add shortcut to retrieve kind of application
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-22 13:04:41 -07:00
Nikolaj Bjorner 0ebea1c298 remove debug out
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-22 11:58:16 -07:00
Nikolaj Bjorner 253f7d7675 fix non-termination bug in elim-unconstrained, add parameter validation to fix #7432 2024-10-22 09:59:20 -07:00
Nikolaj Bjorner d18831c8d5 Update sat_ddfw.cpp 2024-10-22 09:59:20 -07:00
Jonas Jongejan 45ef6d0109
js: Adding manual release methods (#7428)
* js: Adding manual release methods

* Add unregister token

* Add pointer assertion

* Add missing line
2024-10-22 09:15:49 -07:00
Nikolaj Bjorner a23a8cdfc5 add variables from definitions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-16 19:08:33 -07:00
Nikolaj Bjorner 92376e67f2 better model replay for loose entries 2024-10-16 13:07:18 -07:00
Nikolaj Bjorner 5a5e39ae74 fix incrementality bug for pre-processing: replay has to be invoked on every push regardless. 2024-10-16 13:07:18 -07:00
stormckey 8ff4036f68
update unit_lim to the correct value (#7423)
Co-authored-by: stormckey <chenhaogao123@gmail.com>
2024-10-16 10:23:13 -07:00
stormckey 3896e18227
fix the code to cube at the correct frequency (#7422)
Co-authored-by: stormckey <chenhaogao123@gmail.com>
2024-10-15 08:56:35 -07:00
Nikolaj Bjorner 5993735b34 simplify string patterns into prefix/suffix constraints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-14 14:32:39 -07:00
Nikolaj Bjorner 3a8195b9c3 #7419
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-12 11:48:37 -07:00
Nikolaj Bjorner efde656036 fix recursive self call for slice_solver check-sat-cc method
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-10 16:38:00 -07:00
Nikolaj Bjorner 54d30f26f7 add _0 to platform tag for pypi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-10 15:52:10 -07:00
Nikolaj Bjorner 00f1f1b83d fix typo in setup.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-09 14:19:10 -07:00
Nikolaj Bjorner fe71b75ffd remove : from setup.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-09 13:21:27 -07:00
Nikolaj Bjorner 48aa2f6988 setup python dist to remove internal build suffix for macos 2024-10-09 12:47:17 -07:00
Nikolaj Bjorner da614c65e5 remove m_level attribute, use s->get_scope_level directly 2024-10-08 19:56:57 -07:00
Nikolaj Bjorner 6bd46b0922 fix #7363. Replay relevancy on unit literals that are re-asserted during backtracking.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-08 19:40:37 -07:00
Nikolaj Bjorner cfd00ad672 add slice solver option to command context 2024-10-08 09:24:52 -07:00
Nikolaj Bjorner 8a95dd4d65 A slice solver option for interactive use case
A slice solver prunes the set of active assertions based on symbol occurrences in a goal that is tracked as a @query.
Ground assertions that have symbols intersecting with the query are included in the solver state, and quantifiers that with patterns that intersect with the slice are included. The slice is the fixedpoint of including symbols from all included assertions.
Enable the functionality for command-line use by setting solver.slice=true
2024-10-08 09:24:52 -07:00
Nikolaj Bjorner 0fec7efc7b micro-tuning 2024-10-08 09:24:52 -07:00
Nikolaj Bjorner c6cd25c822 mico-tuning 2024-10-08 09:24:52 -07:00
Nikolaj Bjorner 2ae4ac8d0a fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-04 08:38:52 -07:00
Nikolaj Bjorner b60e1a2ed2 fixup variables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-03 20:06:45 -07:00
Nikolaj Bjorner 969511ac00 fixup std-order / inv-order
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-03 19:35:16 -07:00
Nikolaj Bjorner 66bb310966 reset before manager is deallocated
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-03 18:19:14 -07:00
Nikolaj Bjorner a98c925069 optimize var_subst 2024-10-03 18:14:47 -07:00
Nikolaj Bjorner e58eb9f302 fix indentation for mbp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-03 12:47:12 -07:00
Nuno Lopes 3586b613f7 remove default destructors 2024-10-02 22:20:12 +01:00
Nikolaj Bjorner b170f10148 reorder template definition
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-02 13:41:02 -07:00
Nikolaj Bjorner d686e92bfa disambiguate
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-02 10:45:16 -07:00
Nikolaj Bjorner 93ff89bf98 add == for const_ref and ref to disambiguate equality. 2024-10-02 10:45:16 -07:00
Nikolaj Bjorner c7af97364a fixes for #7402
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-10-01 15:15:47 -07:00
Nikolaj Bjorner 328616b8b2 fix build warnings 2024-09-30 17:25:19 -07:00
Nikolaj Bjorner 8c39863019 fix typo in arch for setup.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-30 16:17:40 -07:00
Nikolaj Bjorner 4cefc513eb add sequoia to os versions #7407
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-30 16:05:53 -07:00
Nikolaj Bjorner 19f63cd6e3 add sequoia to os versions #7407
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-30 15:57:49 -07:00
Nikolaj Bjorner 86b97186b0 fix build warnings 2024-09-30 15:51:48 -07:00
Nikolaj Bjorner 551cc53a2f fix un-intialized variable warnings 2024-09-30 15:08:33 -07:00
Nikolaj Bjorner 2c94a3a1b3 fix build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-30 13:09:01 -07:00
Nikolaj Bjorner 7da58b9e84 fix build warnings 2024-09-30 10:34:26 -07:00
Nikolaj Bjorner 5413018d86 Update euf_ac_plugin.cpp 2024-09-30 08:43:17 -07:00
Nikolaj Bjorner 826835fd7c fixes to build warnings 2024-09-30 08:23:31 -07:00
Nikolaj Bjorner 11bb19d99b make default tactic cases lazy 2024-09-27 15:11:43 +01:00
Nikolaj Bjorner 40b0210dda fixes to lazy tactic uses
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-27 14:33:09 +01:00
Nikolaj Bjorner 01cf0427b4 fix #7404, relates to #7400. 2024-09-27 11:36:10 +01:00
Nikolaj Bjorner d047b86439 pypi publish
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-26 21:35:28 +01:00
Nikolaj Bjorner f4452a0348 pypi publish
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-26 21:34:55 +01:00
Nikolaj Bjorner 3df7299d1e update signature of operator==
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-26 14:47:51 +01:00
Kevin Gibbons 77aa5280df
wasm: increase timeout in tests (#7401) 2024-09-25 18:33:14 +01:00
Kevin Gibbons 103c5ad71c
wasm: attempt to GC in tests (#7400) 2024-09-25 15:53:36 +01:00
Nikolaj Bjorner eb5d036786 fix #7392
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-25 10:21:54 +01:00
Nikolaj Bjorner 2655301afc comment out simple proofs unit test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-24 23:01:12 +01:00
Páll Haraldsson 994056f347
C API now used by Julia. (#7387)
See: https://github.com/ahumenberger/Z3.jl/releases/tag/v1.0.0
2024-09-24 15:17:00 +01:00
Nikolaj Bjorner 716a815ce1 update lock file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-24 11:29:35 +01:00
Nikolaj Bjorner a831fe9609 fix some build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-24 11:15:47 +01:00
Nikolaj Bjorner afaa48d72a sample fix script
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-23 19:06:51 +01:00
Lev Nachmanson fa1a2cdc1e disable simple check in nlsat
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-09-23 10:10:46 -07:00
Nikolaj Bjorner 0604d23c57 Check if model_converter is non-null before initializing values in sat_tactic 2024-09-23 13:50:32 +01:00
Nikolaj Bjorner 5a6dc18d0d Override convert_initialize_value method in bit_blaster_model_converter.cpp 2024-09-23 13:46:50 +01:00
Nikolaj Bjorner 5c583299f1 Remove unnecessary const qualifiers from comparison operator overloads in z3++.h 2024-09-23 13:38:07 +01:00
Nikolaj Bjorner eb8c63080a Refactor and fix uninitialized variables and improve function consistency across multiple modules 2024-09-23 13:34:33 +01:00
Nuno Lopes 499ed5d844 remove unneeded iterator functions 2024-09-23 12:59:04 +01:00
Nuno Lopes 737c2208fa delete more default constructors
reduces code size by 0.1%
2024-09-23 12:59:04 +01:00
Nikolaj Bjorner 4b4a28239f Add const qualifiers to comparison operators and update iterator equality checks in various classes 2024-09-23 11:45:11 +01:00
Nuno Lopes a62fede64b remove a few default constructors 2024-09-23 08:17:58 +01:00
Nuno Lopes 22d9bfad35 fix warning with iterators due to non-const comparator 2024-09-23 08:10:56 +01:00
Nikolaj Bjorner 1e580a7f12 update to c++20, remove debug output
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-22 21:30:44 +01:00
Nikolaj Bjorner 96c1375786 #7391
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-22 19:35:03 +01:00
Nikolaj Bjorner a9f8ec1bcb updated handling of value initialization for bit-vectors 2024-09-22 21:30:11 +03:00
Nikolaj Bjorner ba5cec7704 additional rewrites for bv2int 2024-09-22 21:29:12 +03:00
Nikolaj Bjorner fa7fc8ef5e Refactor bv_rewriter functions using unified variable assignment and early break logic 2024-09-22 13:04:49 +03:00
Nikolaj Bjorner d66609ea14 fix #7389
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-22 02:41:11 +03:00
Nikolaj Bjorner 0c48a50d59 Add support for initializing variable values in solver and optimize contexts in Z3 2024-09-20 18:28:26 +03:00
Lev Nachmanson 342dccdc02 correctly process cancellation in gomory cuts
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-09-19 14:11:27 -07:00
Nikolaj Bjorner b99c4a47a4 Add override specifiers to methods in set_initial_value_cmd class for clarity and consistency 2024-09-19 15:11:59 +03:00
Nikolaj Bjorner 8349ee0069 Add support for const array in all logics as per issue #7383 2024-09-19 11:44:18 +03:00
Nikolaj Bjorner 4896edfb04 Add tracking of values size in scoped_state push method in opt_context 2024-09-19 11:27:17 +03:00
Nikolaj Bjorner a3f35b6830 Add command to set initial value hints for solver in various components 2024-09-18 17:48:03 +03:00
Nikolaj Bjorner 1c163dbad2 remove output
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-18 16:41:00 +03:00
Nikolaj Bjorner 0f896503a9 Add initial value setting API for solver and optimize contexts and update related function signatures 2024-09-18 16:18:47 +03:00
Nikolaj Bjorner 48712b4f60 Add initial value setting for variables in Z3 API, solver, and optimize modules 2024-09-18 16:13:15 +03:00
Nikolaj Bjorner 0ba306e7b3 y 2024-09-17 12:27:13 +03:00
Nikolaj Bjorner 99a9a4af03 fix #7372
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-12 10:37:56 -07:00
Nikolaj Bjorner 1ace3d0cf3 fix #7372
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-09-12 10:37:56 -07:00
Nuno Lopes 8061765574 remove default destructors & some default constructors
Another ~700 KB reduction in binary size
2024-09-04 22:30:23 +01:00
Audrey Dutcher 0837e3b8e8
Fix nightly (#7365)
- add some logic to setup.py to handle cross platform tagging correctly
  this adds a dependency on setuptools>=70
- rearrange the nightly CI to use these new builds correctly
2024-09-03 16:11:42 -07:00
Nikolaj Bjorner 5237e7def2 Adjust memory reallocation to consider SIZE_T_ALIGN in memory_manager 2024-09-03 11:17:47 -07:00
Nikolaj Bjorner db4176adf4 #6902
See discussion under #6902.
Add genaiscript for commit messages for future use.
2024-09-02 17:01:35 -07:00
Nuno Lopes ef58376c14 replace a few old-school constructors for a 0.5% reduction in code size
don't waste those 128 KB!
2024-09-02 16:13:46 +01:00
Nikolaj Bjorner a3eb2ff58d revert update to vector for testing #6902
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-30 17:43:15 -07:00
Nikolaj Bjorner a1bcf136a6 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-30 17:34:54 -07:00
Nikolaj Bjorner 01a419546f #7362
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-30 14:35:37 -07:00
Nikolaj Bjorner 9a87bb1097 #7362
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-30 14:30:14 -07:00
Nikolaj Bjorner 5360656440 fix expected
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-28 09:40:57 -07:00
Audrey Dutcher e1f1d677ff
New python packaging and tests (#7356)
* Simplify/modernize python packaging

* Modify azure CI to utilize new python packaging
2024-08-27 17:12:31 -07:00
Nikolaj Bjorner 349ebd0a5b #7344 2024-08-26 14:22:28 -07:00
Nikolaj Bjorner 84da614de3 make gcc linting happy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-26 11:40:01 -07:00
Nikolaj Bjorner b84b4e7f9a fix attribute order
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-26 11:38:27 -07:00
Nikolaj Bjorner 49ba3bc12f address compiler warnings gcc-13
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-26 11:33:54 -07:00
Kirill A. Korinsky cff1e9233f
Avoid broken stack at few places (#7353)
* Avoid broken stack by degree_lit_num_lt

* Avoid broken stack by fix_dl_var_tactic

---------

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-26 10:02:54 -07:00
Nikolaj Bjorner 6a68cc55bb #7353 - clear pointer when existing stack
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-26 09:59:56 -07:00
Zhang c1454dc31c
Fix building with Windows SDK and Clang-CL (#7337)
* Fix building with Windows SDK and Clang-CL

* Attempt to add Clang-CL to CI build configurations

* Fix typo

* Enable EHsc explicitly when using ClangCL due to it being default turned-off

* Override CMAKE_<LANG>_FLAGS instead due to Z3 resets the _INIT variants
2024-08-15 13:08:38 -07:00
Nikolaj Bjorner 656545564d fix #7343
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-14 09:17:05 -07:00
Nikolaj Bjorner ed17de56d2 fix #7343
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-14 08:51:24 -07:00
Lev Nachmanson bf34600f08 add release nodes and add the author reference in qfnra_tactic
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-12 08:49:55 -10:00
Lev Nachmanson f2d35ddc5e more cleanup 2024-08-12 08:32:01 -10:00
Lev Nachmanson 8999e1a340 use standard name conventions and add file headers
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-12 08:29:06 -10:00
Lev Nachmanson 33f0256e20 cleanup 2024-08-11 12:45:36 -10:00
Lev Nachmanson 752c999e0a cleanup
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson f81303f2f3 delete unused nlsat_symmetry_checker
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson f7905a5d69 remove printouts 2024-08-11 12:45:36 -10:00
Lev Nachmanson 518a8b2bdb fix the build
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 4b3a06a3c5 port hybridSMT
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 1a5bddb4f0 port more from hybridSMT
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 209366ba55 cleanup porting comments
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 839594ac12 remove option look_for_0_witness
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 0306eff692 port look for 0 witness
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson a09e412cf0 cleaning up
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Lev Nachmanson 6ce0fcd3ef port sample cell projection
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-08-11 12:45:36 -10:00
Nikolaj Bjorner 3e518b9e8b fix #7331 2024-08-06 03:54:25 -07:00
Nikolaj Bjorner 26b8d634a3 add max conflict throttle to SAT based QFNIA tactic #7329
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-03 11:34:28 -07:00
Nikolaj Bjorner 52f8eb21fb #7255 #7328
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-03 09:39:19 -07:00
Nikolaj Bjorner bc8fa67afc #7255 #7328
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-03 09:37:14 -07:00
Nikolaj Bjorner 51fcb10b2f shave some overhead from fingerprint hash function #7281 2024-08-02 20:04:50 -07:00
LiviaSun 7c30cbfe48
add scoped_vector invariants and unit tests (#7327)
* add scoped vector unit test

* fix dlist tests

* add new scoped vector invariants

* remove all loop invariants
2024-08-02 19:21:40 -07:00
LiviaSun d2fc085b8c
update heap unit tests (#7324)
* new heap invariants

* change ENSURE to SASSERT for unit test heap

* change SASSERT to VERIFY

* update heap tests

* update

* remove one invariant
2024-08-02 18:29:50 -07:00
LiviaSun fce4b36dad
add apply_permutation tests (#7322)
* add permutation unit tests

* update test

* update

* Update permutation.cpp

fix macos build

* add apply_permutation tests

* update test

* Update permutation.cpp

* fix permutation tests

---------

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-02 18:29:33 -07:00
Nikolaj Bjorner ea9fa17f86 add static
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-02 11:38:03 -07:00
Nikolaj Bjorner 23e7dc0356 assert -> SASSERT
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-02 11:36:04 -07:00
LiviaSun fe594618e6
fix dlist tests (#7323) 2024-08-01 16:56:54 -07:00
LiviaSun 6ba25b888b
add permutation unit tests (#7300)
* add permutation unit tests

* update test

* update

* Update permutation.cpp

fix macos build

---------

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-08-01 12:56:26 -07:00
Philip Zucker e7382d6ff9
Added "&lambda;" pretty printing to python (#7320) 2024-07-31 08:14:16 -07:00
Hari Govind V K 0c16d34eb0
fix #7292 (#7316) 2024-07-30 11:35:33 -07:00
Nikolaj Bjorner 5fcc50f606
Revert "add scoped vector unit test (#7307)" (#7317)
This reverts commit 2ae3d87b21.
2024-07-30 11:34:02 -07:00
LiviaSun 2ae3d87b21
add scoped vector unit test (#7307)
* add scoped vector unit test

* fix dlist tests

* add new scoped vector invariants
2024-07-29 11:08:54 -07:00
David Seifert 2ce89e5f49
Gcc 15 two phase (#7313)
* Fix `-Wclass-memaccess`

* Fix for GCC 15 two-phase lookup

* GCC 15 is more aggressive about checking dependent names:
  https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=r15-2117-g313afcfdabeab3

Bug: https://bugs.gentoo.org/936634
2024-07-29 11:07:10 -07:00
Nikolaj Bjorner 25e683e4e1 fix finalize method
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-28 19:10:30 -07:00
Nikolaj Bjorner ac7014a68b expose public
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-29 03:18:20 +02:00
Nikolaj Bjorner f94500c3ca fix #7309 2024-07-28 13:18:08 +02:00
Nikolaj Bjorner 5f6bb3db3e fix #7311
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-27 08:26:47 +02:00
Nikolaj Bjorner b535509cca remove crashing test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-22 08:43:22 -07:00
Nikolaj Bjorner 966c9a3764
Revert "new heap invariants (#7298)" (#7303)
This reverts commit 80ac7b3438.
2024-07-21 21:07:09 -07:00
LiviaSun 3d014f8b33
add new hashtable unit tests (#7297)
* add new hashtable unit tests

* add copyright

* use VERIFY instead of assert
2024-07-19 20:34:29 -07:00
LiviaSun 49dc1bb721
add new permutation class invariant (#7299)
* new heap invariants

* change ENSURE to SASSERT for unit test heap

* change SASSERT to VERIFY

* new permutation invariant

* remove heap changes

* use bool_vector
2024-07-19 19:27:23 -07:00
Nikolaj Bjorner 5003d41cdb
Revert "New invariant for dlist (#7294)" (#7301)
This reverts commit cf4d0e74a5.
2024-07-19 19:11:54 -07:00
LiviaSun 80ac7b3438
new heap invariants (#7298)
* new heap invariants

* change ENSURE to SASSERT for unit test heap

* change SASSERT to VERIFY
2024-07-19 14:03:21 -07:00
LiviaSun bc636d7ee0
new hashtable.h invariants (#7296)
* add copyright for dlist unit test

* new hashtable invariants

* add copyright
2024-07-19 14:01:42 -07:00
Nikolaj Bjorner 08b6338061 fix signature
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-18 10:19:57 -07:00
Nikolaj Bjorner 458d8b033a remove wsp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-18 10:11:15 -07:00
LiviaSun 9803e9ef6e
unit tests for dlist.h (#7293) 2024-07-18 10:08:41 -07:00
LiviaSun cf4d0e74a5
New invariant for dlist (#7294)
* unit tests for dlist.h

* new invariant for dlist: should be circular. avoid infinite loop

* remove dlist test commit

* format

* format

* Update dlist.h

---------

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-18 10:06:58 -07:00
LiviaSun b0069010f8
add new ema invariant (#7288) 2024-07-15 13:07:12 -07:00
Nikolaj Bjorner 374609bd46 kludge to address #7232, probably superseeded by planned revision to setup/pypi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-08 16:54:09 -07:00
Nikolaj Bjorner af1f0e3184 fix #7268 2024-07-08 14:50:38 -07:00
Nikolaj Bjorner 6e069c1f41 remove macro distinction #7270 2024-07-08 13:56:34 -07:00
Lev Nachmanson 18b6087b72 trigger the build with a comment change
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-07-08 11:43:24 -07:00
Sergey Bronnikov 1da132005a
Fix a comment for Z3_solver_from_string (#7271)
Z3_solver_from_string accepts a string buffer with solver
assertions, not a string buffer with filename.
2024-07-02 07:09:33 -07:00
Nikolaj Bjorner 8de2544abb set clean shutdown for local search and re-enable local search when it parallelizes with PB solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-06-30 16:06:51 -07:00
Nikolaj Bjorner 8e482df62a fix #7264 2024-06-21 08:37:23 -07:00
Nikolaj Bjorner 3bf2b3f741 fix #7260
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-06-19 15:37:20 -07:00
dependabot[bot] 758d886fac
Bump braces from 3.0.2 to 3.0.3 in /src/api/js (#7261)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-19 15:29:38 -07:00
Lev Nachmanson bf3615d4fb fix lemma logging in nlsat
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-06-17 13:14:31 -07:00
Lev Nachmanson e4b3df2189 remove unused column_info.h
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-06-17 12:58:16 -07:00
Nikolaj Bjorner ef86f5fcc2 add partial evaluation cases for algebraic data-types for recursive functions. 2024-06-16 16:07:16 -07:00
Nikolaj Bjorner 81ebd52f61 #7207
the utility that computes case analysis is brittle when the body of a function contains ite expressions that are not relevant to recursive unfolding.
The fold-rec occurrences that get inserted to harness large case splits work against throttling case generation: they get treated as recursive functions that have to be guarded.
2024-06-16 15:04:42 -07:00
Nikolaj Bjorner 972d35204c reshuffle priorities on multiplication allow non-determinism. 2024-06-15 10:47:10 -07:00
Nikolaj Bjorner 01e47bfe26 fix #7245 2024-06-15 02:29:32 -07:00
Nikolaj Bjorner a6b502779b fix #7252
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-06-13 17:52:17 -07:00
Nikolaj Bjorner 35c1cacf44 fix #7248 2024-06-12 14:26:35 -07:00
Nikolaj Bjorner b831a589e5 fixes to #7250 2024-06-12 08:50:24 -07:00
Nikolaj Bjorner 49610f5159 fix #7246
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-06-06 08:11:19 +02:00
Nikolaj Bjorner 770c51ad2b add m_replay_qhead to the trail 2024-05-31 11:54:50 +04:00
Nikolaj Bjorner c0a7af4420 fix bugs with tracking premises in user propagator in sat/smt 2024-05-31 11:25:09 +04:00
Bruce Mitchener 904a50fe49
Fix compilation error in column_info (#7235)
Reference to `m_low_bound` should be `m_lower_bound`.
2024-05-27 09:19:29 +04:00
Jakob Rath e454ae275c
intblast: fix translation of sign_ext (#7230) 2024-05-18 19:01:35 -07:00
Nuno Lopes 18a95d89c6 fix assertion failure when printing stats
It would crash when number of bin_lemmas == 0
2024-05-18 16:30:26 +01:00
Nikolaj Bjorner cb50dcabda fix #7229 2024-05-17 18:28:08 -07:00
Nuno Lopes 552068a71e let the replayer stop when it encounters a C command with invalid args 2024-05-17 11:10:09 +01:00
Nikolaj Bjorner 8fe357f1f2
Nlsat simplify (#7227)
* dev branch for simplification

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* bug fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* bugfixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix factorization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* separate out simplification functionality

* reorder initialization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reorder initialization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Update README.md

* initial warppers for seq-map/seq-fold

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* expose fold as well

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add C++ bindings for sequence operations

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add abs function to API

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add parameter validation to ternary and 4-ary functions for API #7219

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add pre-processing and reorder

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add pre-processing and reorder

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

---------

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-14 22:19:33 -07:00
Nikolaj Bjorner e036a5bd9b add parameter validation to ternary and 4-ary functions for API #7219
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-11 18:06:18 -07:00
Nikolaj Bjorner efc893263a add abs function to API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-09 20:54:39 -07:00
Nikolaj Bjorner b120745078 add C++ bindings for sequence operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-09 20:20:05 -07:00
Nikolaj Bjorner c7529d0b25 expose fold as well
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-09 14:56:18 -07:00
Nikolaj Bjorner fc6c4c98e2 initial warppers for seq-map/seq-fold
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-09 14:52:49 -07:00
Nikolaj Bjorner 8f4ffc7caf add logging for first conflict
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-01 20:50:52 -07:00
Nikolaj Bjorner 2f02278227 add virtual destructor to z3::object class
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-01 16:35:25 -07:00
Nikolaj Bjorner 19eb7225ea add virtual destructor to z3::object class
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-01 16:20:05 -07:00
Nikolaj Bjorner 231a985bf9 add virtual destructor to z3::object class
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-01 16:17:06 -07:00
Nikolaj Bjorner 04c55c34e5 fix unsoundness bug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-05-01 14:45:15 -07:00
Nikolaj Bjorner 869643a551 fix memory leak 2024-05-01 10:07:37 -07:00
Nikolaj Bjorner 1ef4354080 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-30 17:52:00 -07:00
Nikolaj Bjorner aa1a596394 add doc-string 2024-04-30 17:05:40 -07:00
Nikolaj Bjorner 29e724f787 add gc to lemmas, convert bounds constraints to lemmas, add simplification pre-processing beyond equality extraction 2024-04-30 17:05:21 -07:00
Nikolaj Bjorner b0222cbdaa temper warning messages from uninitalized pointers 2024-04-30 17:00:49 -07:00
Nikolaj Bjorner 4c070f9e76 add extra fields to nlsat-clause 2024-04-30 17:00:05 -07:00
Nikolaj Bjorner 39dc8861ee expose comparisons with polynomials, incremental way to extract variables 2024-04-30 16:59:50 -07:00
Nikolaj Bjorner bc577b93ae refine precision before taking closest integral value. 2024-04-30 16:58:22 -07:00
Nikolaj Bjorner 2ad9f220f2 add logging 2024-04-30 16:57:59 -07:00
Nikolaj Bjorner bebcd94703 enable logging nla lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-25 10:29:34 -04:00
Nikolaj Bjorner 2a4f0e785b tidy 2024-04-20 18:04:10 -04:00
Nikolaj Bjorner cbef183ae5 type check equality injectivity axiom
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-20 14:57:04 -04:00
Nikolaj Bjorner e184a9a711 fix translation of bvudiv 2024-04-20 07:32:52 -04:00
Nikolaj Bjorner 0368b52716 add missing expr
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-17 15:16:11 +02:00
Nikolaj Bjorner 2682c2ef2b sls updates
- add SINGLE_THREAD mode
- add interface to retrieve "best" model so far
2024-04-13 16:42:26 +02:00
Nikolaj Bjorner 43dd6a5436 include mutex
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-11 18:19:58 +02:00
Nikolaj Bjorner c0bdc7cdd6 enable concurrent sls with new solver core
allow using sls engine (for bit-vectors) with the new core.

Examples

z3 sat.smt=true tactic.default_tactic=smt /v:1 smt.sls.enable=true smt.bv.solver=0 /st C:\QF_BV_SAT\bench_10.smt2
z3 sat.smt=true tactic.default_tactic=smt /v:1 smt.sls.enable=true smt.bv.solver=2 /st C:\QF_BV_SAT\bench_10.smt2
z3 C:\QF_BV_SAT\bench_11100.smt2 sat.smt=true tactic.default_tactic=smt /v:1 smt.sls.enable=true smt.bv.solver=2 /st
2024-04-11 10:49:30 +02:00
Nikolaj Bjorner 510534dbd4 cleanup 2024-04-10 19:09:30 -07:00
Nikolaj Bjorner 974ea7b68d maintain ownership of dependency 2024-04-10 17:57:14 -07:00
Nikolaj Bjorner 7b8980f82d fix regression introduced when testing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-09 11:17:03 -07:00
Nikolaj Bjorner 8d0e66b3e3 fix regression introduced when testing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-09 11:16:34 -07:00
Nikolaj Bjorner 9a681b1a37 reorg sls
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-04-09 10:44:53 -07:00
Nikolaj Bjorner bab7ca2b70 fixes to bv-sls 2024-04-07 14:24:13 -07:00
Nikolaj Bjorner d7c0e17f96 fixes to tighten-range 2024-04-02 21:12:09 -07:00
Nikolaj Bjorner 2ce202db75 add special handling of lshr, ashr 2024-04-02 21:09:18 -07:00
Nuno Lopes 918ac2b176 fix #7196: make the code C++23 compatible
Nikolaj is now more bleeding edge than I am...
I must be getting old? (˘・_・˘)
2024-04-01 17:25:50 +01:00
Nikolaj Bjorner 84092cbd96 add engine-init to control model transfer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-30 15:12:32 -07:00
Nikolaj Bjorner 51f1e2655c updates to sls
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-30 12:59:05 -07:00
Steven Moy 111fcb9366
Implement API to set exit action to exception (#7192)
* Implement API to set exit action to exception

* Turn on exit_action_to_throw_exception upon API context creation
2024-03-27 19:06:58 -07:00
Nikolaj Bjorner c18a42cf5b change signed projection to include root object. 2024-03-23 16:14:24 -04:00
Nikolaj Bjorner 6455de9dd3 fix #7179
Ensure that flat associative rewriting is disabled if rewriter.flat is set to false.
2024-03-21 09:39:13 -07:00
Nikolaj Bjorner 530c6fc625 fix ##7175 - don't add user macros/functions when smtlib2_compliant=true
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-20 22:05:30 -07:00
Nikolaj Bjorner f840d5d965 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-20 21:29:13 -07:00
Nikolaj Bjorner 70d2263a85 cast, updated nlexplain 2024-03-20 21:29:08 -07:00
Lev Nachmanson 730f9ad9b7 Nikolaj's fix in add_zero_assumption
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2024-03-20 09:39:20 -10:00
向阳 a9054bc73b
fix warning C4244 in util.h (#7171)
Add a static cast to avoid warning C4244 on MSVC
2024-03-20 09:31:23 +00:00
cctv130 18365907a2
Update util.h (#7169) 2024-03-17 20:29:27 -07:00
Nikolaj Bjorner b8a69987c3 fix #7165 2024-03-17 16:33:40 -07:00
Jakob Rath 5704e8d154
fix intblast is_bounded (#7163) 2024-03-14 08:48:38 -07:00
Nikolaj Bjorner 0b3bbc2972 #7158
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-11 18:19:43 -07:00
someplaceguy 7bbe3fb2b6
fix (get-proof) command to respect option pp.simplify_implies (#7157) 2024-03-09 15:13:42 -08:00
Nikolaj Bjorner 361e04a18e port fixes to intblast
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-09 10:27:12 -08:00
Nikolaj Bjorner dcaacf5e9b add rewrite glue for instantiating equalities, #7154
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-07 15:21:26 -08:00
Nikolaj Bjorner 620efbb67b add aacrhc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-06 13:53:47 -08:00
Steven Moy e8c8d8aa7d
Put in workaround to rename manylinux_arm64 to manylinux_aarch64 (#7149) 2024-03-05 13:38:12 -08:00
Nikolaj Bjorner d6f522e205 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 531bda39ac fix alias bug 2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 657aaf9a0f na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 8679c08010 fix test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 22616da63b updates 2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 5be8872d6a na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner dfd5c27fec na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 803f0f0c65 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 5455603910 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 9888d87294 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner f46c3782d6 bugfixes 2024-03-05 12:28:31 -08:00
Nikolaj Bjorner d774f07eb3 add eval field to sls-valuation to track temporary values. 2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 8f139e862c updates to multiplication 2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 2590d672f4 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 58474df438 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:31 -08:00
Nikolaj Bjorner 0e5b504c30 remove bw setting 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner a328366c7d move to single path mode for search
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 8f85df05ed fb
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner c451e4e50b na 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 63804c5296 na 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 74e73f2b84 reorg to use datatypes 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 48026edd7f move to hide bits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner acc9c21653 move to hide bits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner cfa6bd4534 update python build dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 5379fabf9d include thread
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner b14499f230 prepare for sls experiment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner cf72a916f8 bugfixes, adding plugin solver 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 659e384ee7 bugfixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner cd6382f1c8 fix alias bug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 9cde4f7e05 bugfixes 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner d7e419b7ed fixes and checks
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-05 12:28:30 -08:00
Nikolaj Bjorner ab0459e5aa bugfixes 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 7dc4ce8259 use tuned gcd to compute mult inverse 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 4391c90960 na 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 991537836b fixes based on unit tests 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 046db662f9 na 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 388b2f5eec n/a 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner ddf2d28350 add tests for evaluation 2024-03-05 12:28:30 -08:00
Nikolaj Bjorner 1cf008dd0a updates 2024-03-05 12:28:29 -08:00
Nikolaj Bjorner bd323d6fab save 2024-03-05 12:28:29 -08:00
Nikolaj Bjorner f39756c74b initial stab at new bv-sls based on repair actions 2024-03-05 12:28:29 -08:00
Nikolaj Bjorner 10687082f1
Revert "For many linux build, use aarch64 instead of arm64 (#7147)" (#7148)
This reverts commit 7694bca5f4.
2024-03-05 12:25:31 -08:00
Steven Moy 7694bca5f4
For many linux build, use aarch64 instead of arm64 (#7147) 2024-03-05 11:27:43 -08:00
Nikolaj Bjorner 77a07bb791 detect arm64 for manylinux setup
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-03-04 21:14:19 -08:00
Nuno Lopes 57c20be6eb fix #7143: type punning in test 2024-03-04 14:34:02 +00:00
zapashcanon 91886dafca
some code cleaning and complexity improvements (#7133)
* do not use `and` for non mutually recursive types

* use List.init, fix complexity of a few operations and make some code
more readable

* explicit some parameters to make working without LSP/Merlin easier

* use fold_left instead of filteri because it is not available on old
OCaml versions
2024-02-29 08:54:53 -08:00
Bruce Mitchener 143a35d370
Fix typos. (#7137) 2024-02-22 09:35:15 -08:00
Nikolaj Bjorner 79b7d8a9e2 throttle squash-store #7134
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-21 10:00:11 -08:00
Thomas Haas a3d00ce356
Improved Java phantom references (#7131)
* Reworked phantom reference handling.
 - Replaced IDecRefQueue with a new Z3ReferenceQueue class
 - Z3ReferenceQueue manages custom subclasses of phantom references in a doubly-linked list
 - Replaced all subclasses of IDecRefQueue with subclasses of Z3ReferenceQueue.Reference. These custom reference classes are embedded in the class they reference count.
 - Context now owns a single Z3ReferenceQueue for all types of references.

* Made Statistics.Entry a static subclass

* Made Context.close idempotent (as recommended)

* Update CMakeLists.txt for building the Java API.

* Updated CMakeLists.txt again.

* Use correct SuppressWarning annotation to silence the compiler

* Formatting
2024-02-21 08:39:58 -08:00
Cal Jacobson 199ef30e0c
conditionally depend on importlib_resources (#7116)
In python >= 3.9, it's available as part of the stdlib.
2024-02-18 12:20:24 +07:00
Nikolaj Bjorner 84d592c1f2 fix #7121
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-16 09:59:57 +07:00
Nikolaj Bjorner 2b14793213 #7117
probably overflow of unsigned for large capacity
2024-02-14 17:08:09 +07:00