from z3 import * p, q = Bools('p q') s = Solver() s.add(Not(q)) s.assert_and_track(q, "p1") s.assert_and_track(p, "p2") print(s.check()) print(s.unsat_core())