Ejemplo n.º 1
0
 def pp_map(self, a, d, xs):
     r  = []
     sz = 0
     f  = z3.get_map_func(a)
     r.append(to_format(f.name()))
     for child in a.children(): 
         r.append(self.pp_expr(child, d+1, xs))
         sz = sz + 1
         if sz > self.max_args:
             r.append(self.pp_ellipses())
             break
     return seq1(self.pp_name(a), r)
Ejemplo n.º 2
0
 def pp_map(self, a, d, xs):
     r  = []
     sz = 0
     f  = z3.get_map_func(a)
     r.append(to_format(f.name()))
     for child in a.children(): 
         r.append(self.pp_expr(child, d+1, xs))
         sz = sz + 1
         if sz > self.max_args:
             r.append(self.pp_ellipses())
             break
     return seq1(self.pp_name(a), r)
Ejemplo n.º 3
0
def translate_head_func_decl(expr):
    decl = expr.decl()
    assert isinstance(decl,z3.FuncDeclRef)
    s = str(decl)
    if s == '==': return '='
    elif z3.is_K(expr): #s == 'K':
        # Const array => Must include type
        return '(as const {})'.format(smt_sort_str(decl.range()))
    elif z3.is_map(expr):
        # FIXME: Not general enough for data maps?
        return '(_ map {})'.format(str(z3.get_map_func(expr)).lower())
    else: return s.lower()
Ejemplo n.º 4
0
 def pp_map(self, a, d, xs):
     f = z3.get_map_func(a)
     return self.pp_fdecl(f, a, d, xs)
Ejemplo n.º 5
0
 def pp_map(self, a, d, xs):
     f  = z3.get_map_func(a)
     return self.pp_fdecl(f, a, d, xs)