3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-22 19:17:53 +00:00

Add virtual translate method to solver_factory class (#7780)

* Initial plan

* Add virtual translate method to solver_factory base class and all implementations

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Add documentation for the translate method in solver_factory

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
Copilot 2025-08-14 11:54:34 -07:00 committed by GitHub
parent 237891c901
commit eb7fd9efaa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 32 additions and 0 deletions

View file

@ -60,6 +60,10 @@ public:
auto s = mk_tactic2solver(m, t, p, proofs_enabled, models_enabled, unsat_core_enabled, logic);
return s;
}
solver_factory* translate(ast_manager& m) override {
return alloc(smt_nested_solver_factory);
}
};
tactic * mk_tactic_for_logic(ast_manager & m, params_ref const & p, symbol const & logic) {
@ -185,6 +189,10 @@ public:
mk_solver_for_logic(m, p, l),
p);
}
solver_factory* translate(ast_manager& m) override {
return alloc(smt_strategic_solver_factory, m_logic);
}
};
solver_factory * mk_smt_strategic_solver_factory(symbol const & logic) {