如何使用Z3重命名变量?

时间:2012-09-01 12:41:17

标签: z3

给出表达式x'= x + 1,我希望将x'重命名为y。如何使用z3?

1 个答案:

答案 0 :(得分:2)

有许多API函数可以让您修改术语并替换旧子函数。它们在Modifiers部分描述,其中包含修饰符Z3_update_term,z3_substitute和Z3_substitute_vars(两个上下文之间还有Z3_translate到端口术语)。 这是链接:

http://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaa7497c70a827db2d61ba98889fe657b5

您还可以直接遍历术语并编写实用程序来修改术语。 display_ast示例显示了递归遍历术语的主要案例:

http://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi__ex.html#ga807b5fe0e26acdec09e52a77318208d0