Further model-based combination transitions

Further model-based combination transitions#

Status: Open lead. Owner: unassigned.

Investigate the remaining steps toward the full DPLL(T^M) framework of Leonardo de Moura and Nikolaj Bjørner, Model-based Theory Combination, ENTCS 198(2), 2008, pp. 37–49, §4 and Appendix A. No broader transition implementation has been selected. The retained transition checklist records the earlier investigation and its dated implementation stages.

Implemented baseline#

Primo already has a general component driver, model projections, reversible equality choices, and a mutation protocol. Its production EUF/LIA adapters currently use equality decisions rather than implementing that mutation protocol. The dedicated Real route additionally uses scratch LRA diversification and EUF model reconciliation. The combination chapter describes these implemented subsets and their acceptance checks.

Questions to resolve#

Map the paper’s model state and M-Propagate/M-Mutate operations to current component ownership and SAT callbacks. Identify which transitions the existing interfaces already support and which need actual component implementations. Specify invalidation after backtracking, model revision and assignment freshness, dynamic literal creation, and progress across repeated choices or mutations. CaDiCaL continues to own propositional search.

The paper leaves mutation scheduling open. A proposed schedule must therefore state when models are required, when mutation is attempted, and what bounds unproductive work. Compare it with the current Real schedule. Model coincidences remain choices; only explained consequences may become theory lemmas.

Choose a bounded component/logic scope before implementing. Require transition and rollback regressions, the correctness gates, independent SAT-model validation, and paired measurements against the existing route. Migrating QF_UFLRA to the general driver is a separate consolidation; completing it alone would not establish the full paper framework.