ocaml - 代入 Z3 表达式中的操作
问题描述
我有一个形式的 Z3 公式(> Expr1 Expr2)
,我想将其更改为(< Expr1 Expr2)
,同时保留Expr1
and的结构Expr2
。据我了解,substitute
用其他人替换变量是有帮助的;但我不确定如果可能的话,我应该给出哪些参数来更改运算符。是否可以使用substitute
或通过其他方法?
我正在使用 OCaml 绑定。
提前感谢您的回答:)
解决方案
您可以只创建一个新表达式,例如,
let ult_of_ugt ctxt exp = match Expr.get_args exp with
| [x; y] -> BitVector.mk_ult ctxt x y
| _ -> invalid_arg "expected two operands"
推荐阅读
- python - 在正则表达式 Python 中倒退
- ios - 我的自定义形状后面的颜色已填充,我想将其设为白色
- go - 如何使用通道流式传输命令输出?
- r - rpy2:最新版本在 Ubuntu 上不起作用
- c - 文件中的换行符 strtok 问题
- r - 当条形图在ggplotly中按值排序时如何在条形图工具提示上显示变量名称
- php - PHP cUrl 请求转义问题(HTTP 错误 400。请求格式错误。)
- vuejs2 - v-for 循环中的条件“@click”
- python - 正则表达式在链接中查找特定字母
- java - SERVLET_MAPPING Struts1 中的 .do 后缀到 Spring Boot 迁移