3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-04-21 11:23:30 +00:00

Fixed couple of regex problems [there are still others]

This commit is contained in:
CEisenhofer 2026-03-18 14:28:53 +01:00
parent b1bae695e6
commit ab53889c10
11 changed files with 392 additions and 382 deletions

View file

@ -250,7 +250,7 @@ struct smt_params : public preprocessor_params,
symbol m_string_solver;
unsigned m_nseq_max_depth = 0;
unsigned m_nseq_max_nodes = 0;
bool m_nseq_parikh = true;
bool m_nseq_parikh = false;
bool m_nseq_regex_precheck = true;
smt_params(params_ref const & p = params_ref()):

View file

@ -125,7 +125,7 @@ def_module_params(module_name='smt',
('string_solver', SYMBOL, 'seq', 'solver for string/sequence theories. options are: \'z3str3\' (specialized string solver), \'seq\' (sequence solver), \'auto\' (use static features to choose best solver), \'empty\' (a no-op solver that forces an answer unknown if strings were used), \'none\' (no solver), \'nseq\' (Nielsen-based string solver)'),
('nseq.max_depth', UINT, 0, 'maximum Nielsen search depth for theory_nseq (0 = unlimited)'),
('nseq.max_nodes', UINT, 0, 'maximum number of DFS nodes explored by theory_nseq per solve() call (0 = unlimited)'),
('nseq.parikh', BOOL, True, 'enable Parikh image checks in nseq solver'),
('nseq.parikh', BOOL, False, 'enable Parikh image checks in nseq solver'),
('nseq.regex_precheck', BOOL, True, 'enable regex membership pre-check before DFS in theory_nseq: checks intersection emptiness per-variable and short-circuits SAT/UNSAT for regex-only problems'),
('core.validate', BOOL, False, '[internal] validate unsat core produced by SMT context. This option is intended for debugging'),
('seq.split_w_len', BOOL, True, 'enable splitting guided by length constraints'),