手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

z3(python)表达式操作入门

时间:2024-10-13 08:17:29

1、首先,如图这段代码定义了一个名为expr的表达式,并且使用print_expr函数来显示表达式的详细信息。

z3(python)表达式操作入门

2、执行结果如图所示,通过该例子可以知晓如何获取运算符,参数个数,以及参数(子表达式)等。

z3(python)表达式操作入门

3、如图编写了一个visit_expr函数,用于递归地访问表达式,并显示各个子表达式的信息。

z3(python)表达式操作入门

4、运行效果如图所示,从上到下为从叶节点到根节点。注意到Not/And的操作符名称是对应的小写not和and。

z3(python)表达式操作入门

5、编写如图一个简单的函数,用于手动将一个表达式变换为原来的非(将And变为Or,并将各个子式变为原来的非)。

z3(python)表达式操作入门

6、使用所编写的求函数,构造出一个新的表达式打印如图。注意不等号操作符名称为distinct,而等号屏顿幂垂==的名称是=。

z3(python)表达式操作入门

7、我们可以用ctx-solver-simplify用求解器进行化简,可以看到表达式取反的结果是正确的。

z3(python)表达式操作入门
© 手抄报圈