3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-07-15 03:25:43 +00:00

nlsat: disable levelwise (lws) by default to fix QF_NIA SIGSEGV

The experimental levelwise single-cell projection (nlsat.lws) crashes
non-deterministically (~40%) with a SIGSEGV inside the root-function
partition sort during conflict explanation. Default it off; the explain
path falls back to add_all_coeffs projection, eliminating the crash.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Lev Nachmanson 2026-06-28 15:58:36 -07:00 committed by GitHub
parent ef66acc6b5
commit 980772f40f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -22,7 +22,7 @@ def_module_params('nlsat',
('add_all_coeffs', BOOL, False, "add all polynomial coefficients during projection."),
('zero_disc', BOOL, False, "add_zero_assumption to the vanishing discriminant."),
('known_sat_assignment_file_name', STRING, "", "the file name of a known solution: used for debugging only"),
('lws', BOOL, True, "apply levelwise."),
('lws', BOOL, False, "apply levelwise."),
('lws_spt_threshold', UINT, 4, "minimum both-side polynomial count to apply spanning tree optimization; < 2 disables spanning tree"),
('lws_witness_subs_lc', BOOL, True, "try substitute the non-nullified witness by the lc"),
('lws_witness_subs_disc', BOOL, True, "try substitute the non-nullified witness by the discriminant"),