def test_named_still_sat(self):
     v = datatypes.new_variable()
     s1 = "Same Name"
     s2 = "Same Name"
     pred1 = atomic_predicate.Named(v, s1)
     pred2 = atomic_predicate.Named(v, s2)
     status = solver.quick_check(
         z3.And(pred1._assert(self.submodel, self.interpretation),
                pred2._assert(self.submodel, self.interpretation)))
     self.assertTrue(status)
Beispiel #2
0
 def test_quick_check_pushes_and_pops(self):
     self.assertTrue(solver.check())
     self.assertFalse(solver.quick_check(z3False))
     self.assertTrue(solver.check())
 def assertUnsat(self, pred):
     asserted = pred._assert(self.submodel, self.interpretation)
     check = solver.quick_check(asserted)
     self.assertFalse(check)
Beispiel #4
0
 def test_quick_check_true(self):
     self.assertTrue(solver.quick_check(z3True))
Beispiel #5
0
 def test_quick_check_false(self):
     self.assertFalse(solver.quick_check(z3False))
Beispiel #6
0
 def check_sat(self):
     # returns a boolean
     return solver.quick_check(self.get_predicate())
Beispiel #7
0
 def check_implies(self, other_predicate):
     # check that this predicate implies other_predicate
     p1 = self.get_predicate()
     p2 = other_predicate.get_predicate()
     pred = z3.Implies(p1, p2)
     return solver.quick_check(pred)
Beispiel #8
0
 def test_quick_check_pushes_and_pops(self):
     self.assertTrue(solver.check())
     self.assertFalse(solver.quick_check(z3False))
     self.assertTrue(solver.check())
Beispiel #9
0
 def test_quick_check_false(self):
     self.assertFalse(solver.quick_check(z3False))
Beispiel #10
0
 def test_quick_check_true(self):
     self.assertTrue(solver.quick_check(z3True))
Beispiel #11
0
 def check_implies(self, other_predicate):
     # check that this predicate implies other_predicate
     p1 = self.get_predicate()
     p2 = other_predicate.get_predicate()
     pred = z3.Implies(p1, p2)
     return solver.quick_check(pred)
Beispiel #12
0
 def check_sat(self):
     # returns a boolean
     return solver.quick_check(self.get_predicate())