Exemple #1
0
 def main(self, a):
     if z3.is_expr(a):
         return self.pp_expr(a, 0, [])
     elif z3.is_sort(a):
         return self.pp_sort(a)
     elif z3.is_func_decl(a):
         return self.pp_decl(a)
     elif isinstance(a, z3.Goal) or isinstance(a, z3.AstVector):
         return self.pp_seq(a, 0, [])
     elif isinstance(a, z3.Solver):
         return self.pp_seq(a.assertions(), 0, [])
     elif isinstance(a, z3.Fixedpoint):
         return a.sexpr()
     elif isinstance(a, z3.Optimize):
         return a.sexpr()
     elif isinstance(a, z3.ApplyResult):
         return self.pp_seq_seq(a, 0, [])
     elif isinstance(a, z3.ModelRef):
         return self.pp_model(a)
     elif isinstance(a, z3.FuncInterp):
         return self.pp_func_interp(a)
     elif isinstance(a, list) or isinstance(a, tuple):
         return self.pp_list(a)
     else:
         return to_format(self.pp_unknown())
Exemple #2
0
 def main(self, a):
     if z3.is_expr(a):
         return self.pp_expr(a, 0, [])
     elif z3.is_sort(a):
         return self.pp_sort(a)
     elif z3.is_func_decl(a):
         return self.pp_name(a)
     elif isinstance(a, z3.Goal) or isinstance(a, z3.AstVector):
         return self.pp_seq(a, 0, [])
     elif isinstance(a, z3.Solver):
         return self.pp_seq(a.assertions(), 0, [])
     elif isinstance(a, z3.Fixedpoint):
         return a.sexpr()
     elif isinstance(a, z3.Optimize):
         return a.sexpr()
     elif isinstance(a, z3.ApplyResult):
         return self.pp_seq_seq(a, 0, [])
     elif isinstance(a, z3.ModelRef):
         return self.pp_model(a)
     elif isinstance(a, z3.FuncInterp):
         return self.pp_func_interp(a)
     elif isinstance(a, list) or isinstance(a, tuple):
         return self.pp_list(a)
     else:
         return to_format(self.pp_unknown())
Exemple #3
0
def is_z3(v):
    return z3.is_expr(v) or z3.is_sort(v)
Exemple #4
0
 def add_engine_object(self, elem):
     if z3.is_sort(elem):
         self._engine_objects[MUZ] = elem
     else:
         raise Exception(f"unknown Type object {type(elem)}")