Z3py get_vars(f)等效于Java

时间:2015-07-17 19:01:18

标签: java z3

跟进this帖子: 有一个示例实现如何使用python here获取自由变量,我希望在Java中重新实现。我如何访问Expr的孩子?我没有找到吸气剂或访客。

1 个答案:

答案 0 :(得分:1)

您可以通过递归以下三种情况来访问子表达式:

  1. 表达式可以是变量Expr.isVar()
  2. 表达式可以是量词Quantifier.isUniversal()/ isExistential(),调用getBody()来获取子句。
  3. 表达式可以是应用程序Expr.isApp(),使用Expr.getArgs()来访问子项。