I'm using the Z3 Python API and I have the following code to get unsatisfiable cores:
for idx, constr in enumerate(z3constrs):
solver.assert_and_track(constr, f'tracker{idx}')
However, the model's solution contains the tracker variables:
>>> print(solver.model())
[tracker71 = True,
tracker229 = True,
rect11_x1 = 35,
...]
Is there any way to remove these variables from the solution (while keeping it a ModelRef object) without running the solver twice?