mirror of
https://github.com/Z3Prover/z3
synced 2025-10-07 00:11:55 +00:00
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
This commit is contained in:
parent
0fec7efc7b
commit
8a95dd4d65
4 changed files with 465 additions and 0 deletions
25
src/solver/slice_solver.h
Normal file
25
src/solver/slice_solver.h
Normal file
|
@ -0,0 +1,25 @@
|
|||
/*++
|
||||
Copyright (c) 2023 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
slice_solver.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Implements a solver that slices assertions based on the query.
|
||||
|
||||
Author:
|
||||
|
||||
Nikolaj Bjorner (nbjorner) 2024-10-07
|
||||
|
||||
--*/
|
||||
#pragma once
|
||||
|
||||
#include "util/params.h"
|
||||
|
||||
class solver;
|
||||
class solver_factory;
|
||||
|
||||
solver * mk_slice_solver(solver * s);
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue