def test_undefined_node(self): varA = Symbol("At", INT) dag_walker = DagWalker() with self.assertRaises(UnsupportedOperatorError): dag_walker.walk(varA) tree_walker = TreeWalker() with self.assertRaises(UnsupportedOperatorError): tree_walker.walk(varA)
def test_undefined_node(self): varA = Symbol("At", INT) dag_walker = DagWalker() with self.assertRaises(NotImplementedError): dag_walker.walk(varA) tree_walker = TreeWalker() with self.assertRaises(NotImplementedError): tree_walker.walk(varA)
""" (set-logic QF_LIA) (declare-const p Int) (declare-const q Int) (declare-const x Bool) (declare-const z Bool) (define-fun .def_1 () Bool (! (and x z) :cost 1)) (assert (=> x (> p q))) (check-sat) (push) (assert (=> z (> q p))) (check-sat) (assert .def_1) (check-sat) (pop) (check-sat) """ parser = SmtLibParser() script = parser.get_script(cStringIO(DEMO_SMTLIB)) buf_out = cStringIO() f = DagWalker() for cmd in script: if cmd.name != "define-fun": continue for args in cmd.args: if isinstance(args, pysmt.fnode.FNode): print(args) print(f.iter_walk(args))