9052 def apply(self, goal, *arguments, **keywords):
9053 """Apply tactic `self` to the given goal or Z3 Boolean expression using the given options.
9054
9055 >>> x, y = Ints('x y')
9056 >>> t = Tactic('solve-eqs')
9057 >>> t.apply(And(x == 0, y >= x + 1))
9058 [[y >= 1]]
9059 """
9060 if z3_debug():
9061 _z3_assert(isinstance(goal, (Goal, BoolRef)), "Z3 Goal or Boolean expressions expected")
9062 goal = _to_goal(goal)
9063 if len(arguments) > 0 or len(keywords) > 0:
9064 p = args2params(arguments, keywords, self.ctx)
9065 return ApplyResult(
Z3_tactic_apply_ex(self.ctx.ref(), self.tactic, goal.goal, p.params), self.ctx)
9066 else:
9067 return ApplyResult(
Z3_tactic_apply(self.ctx.ref(), self.tactic, goal.goal), self.ctx)
9068
Z3_apply_result Z3_API Z3_tactic_apply_ex(Z3_context c, Z3_tactic t, Z3_goal g, Z3_params p)
Apply tactic t to the goal g using the parameter set p.
Z3_apply_result Z3_API Z3_tactic_apply(Z3_context c, Z3_tactic t, Z3_goal g)
Apply tactic t to the goal g.