kdrag.solvers.scryer
Functions
|
Translate a scryer term to a z3 expression. |
|
|
|
|
|
|
|
- kdrag.solvers.scryer.from_scryer(term: Term, decls: dict[str, FuncDeclRef]) tuple[list[ExprRef], ExprRef]
Translate a scryer term to a z3 expression.
>>> x,y = smt.Ints("x y") >>> decls = {"f": smt.Function("f", smt.IntSort(), smt.IntSort())} >>> from_scryer(Compound("f", [Var("x")]), decls) ([x], f(x)) >>> from_scryer(Compound("=", [Compound("f", [Var("x")]), Var("y")]), decls) ([x, y], f(x) == y)
- Parameters:
term (Term)
decls (dict[str, FuncDeclRef])
- Return type:
tuple[list[ExprRef], ExprRef]
- kdrag.solvers.scryer.in_term(term: Term, tags: set[Term]) set[Term]
- Parameters:
term (Term)
tags (set[Term])
- Return type:
set[Term]
- kdrag.solvers.scryer.subterms(term: Term) set[Term]
- Parameters:
term (Term)
- Return type:
set[Term]
- kdrag.solvers.scryer.to_scryer_str(expr: BoolRef) str
- Parameters:
expr (BoolRef)
- Return type:
str
- kdrag.solvers.scryer.to_term(vs: list[ExprRef], expr: ExprRef) Term
>>> x,y = smt.Ints("x y") >>> str(to_term([], x + y)) '+(x, y)'
- Parameters:
vs (list[ExprRef])
expr (ExprRef)
- Return type:
Term