mirror of
https://github.com/Z3Prover/z3
synced 2025-04-27 10:55:50 +00:00
add push/pop to optimization context for convenience
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
75c114feab
commit
31f16d7aa4
5 changed files with 77 additions and 2 deletions
|
@ -6382,6 +6382,14 @@ class Optimize(Z3PPObject):
|
|||
"""Add objective function to minimize."""
|
||||
return OptimizeObjective(Z3_optimize_minimize(self.ctx.ref(), self.optimize, arg.as_ast()))
|
||||
|
||||
def push(self):
|
||||
"""create a backtracking point for added rules, facts and assertions"""
|
||||
Z3_optimize_push(self.ctx.ref(), self.optimize)
|
||||
|
||||
def pop(self):
|
||||
"""restore to previously created backtracking point"""
|
||||
Z3_optimize_pop(self.ctx.ref(), self.optimize)
|
||||
|
||||
def check(self):
|
||||
"""Check satisfiability while optimizing objective functions."""
|
||||
return CheckSatResult(Z3_optimize_check(self.ctx.ref(), self.optimize))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue