mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
fix rule inlining, add WithParams to pass parameters directly to python API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
a2f907c7d1
commit
54b00f357b
3 changed files with 35 additions and 37 deletions
|
@ -7447,6 +7447,20 @@ def With(t, *args, **keys):
|
|||
p = args2params(args, keys, t.ctx)
|
||||
return Tactic(Z3_tactic_using_params(t.ctx.ref(), t.tactic, p.params), t.ctx)
|
||||
|
||||
def WithParams(t, p):
|
||||
"""Return a tactic that applies tactic `t` using the given configuration options.
|
||||
|
||||
>>> x, y = Ints('x y')
|
||||
>>> p = ParamsRef()
|
||||
>>> p.set("som", True)
|
||||
>>> t = With(Tactic('simplify'), p)
|
||||
>>> t((x + 1)*(y + 2) == 0)
|
||||
[[2*x + y + x*y == -2]]
|
||||
"""
|
||||
ctx = keys.pop('ctx', None)
|
||||
t = _to_tactic(t, ctx)
|
||||
return Tactic(Z3_tactic_using_params(t.ctx.ref(), t.tactic, p.params), t.ctx)
|
||||
|
||||
def Repeat(t, max=4294967295, ctx=None):
|
||||
"""Return a tactic that keeps applying `t` until the goal is not modified anymore or the maximum number of iterations `max` is reached.
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue