Z3py get_vars(f) 相当于 Java
Z3py get_vars(f) equivalent for Java
跟进 this post:
有一个示例实现如何使用 python here 获取自由变量,我想在 Java 中 re-implement。如何访问 Expr 的 children?我没有找到 getter 或访客。
您可以通过以下三种情况递归访问子表达式:
- 一个表达式可以是一个变量Expr.isVar()
- 表达式可以是量词Quantifier.isUniversal()/isExistential(),调用getBody()得到child.
- 一个表达式可以是一个应用程序,Expr.isApp(),使用Expr.getArgs()访问children.
跟进 this post: 有一个示例实现如何使用 python here 获取自由变量,我想在 Java 中 re-implement。如何访问 Expr 的 children?我没有找到 getter 或访客。
您可以通过以下三种情况递归访问子表达式:
- 一个表达式可以是一个变量Expr.isVar()
- 表达式可以是量词Quantifier.isUniversal()/isExistential(),调用getBody()得到child.
- 一个表达式可以是一个应用程序,Expr.isApp(),使用Expr.getArgs()访问children.