繁体   English   中英

在SMT-LIB 2中像C一样截断整数

Truncate Integers Like C in SMT-LIB 2

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在将SMT-LIB 2格式的符号执行引擎的符号输出传递给Z3。 我需要它像在C中那样截断整数。因此(assert (= 1 (/ 3 2)))将是SAT

这些公式也可能有浮点数,因此并非所有的除法都应截断。 只是整数的除法。

如何做到这一点?

1 个回复

整数除法简称为div

(assert (= 1 (div 3 2)))
(check-sat)

这将产生:

sat
1 在 SMT-LIB 中表示 C 结构

我正在尝试使用 Z3 求解器(在 SMT-LIB 上工作)来推理涉及结构的 C 程序。 我想要某种方式来表示该结构是一个包含 SMT-LIB 中其他变量的变量,但我找不到这样做的方法。 有人知道在 SMT-LIB 中表示 C 结构的方法吗? ...

2020-09-28 02:20:41 1 39   c/ smt
2 如何在SMT-LIB中定义谓词

我将如何定义一个谓词,例如even: Int -> Bool ,它接受一个整数并输出它是否为偶数? 我尝试了类似的东西 我想知道如何声明,例如, even(2)是真实的。 ...

3 如何统一SMT-LIB中的变量

我试图在SMT-LIB中执行此操作,在包含以下表达式的脚本上运行z3 -smt2 script.smt2 : 我想统一这些变量。 例如,我希望能够通过分配x=f , a=d和b=e来统一变量。 甚至有可能在z3或SMT-LIB执行此操作? 还是我应该使用其他语言来做到这一点 ...

4 SMT-LIB 基准

我想对一些 SMT 求解器进行基准测试,SMT-LIB Benchmark 存储库 [1,2] 似乎是一个不错的起点。 但是,该链接已关闭至少几天。 有谁知道我可以在其他任何地方找到这些基准? [1] http://www.smtlib.org/ [2] http://smtexec.or ...

5 提取SMT-LIB公式

有什么方法可以从C ++ API的Solver / Model / context类提取SMT-LIB公式,包括所有声明,定义和约束到.smt2文件中。 即与“ Z3_parse_smtlib2_string”功能相反。 ...

2014-10-31 02:20:44 1 204   z3
6 处理SMT-LIB / Z3中的溢出

我正在尝试使用SMT a + b - c - d对以下表达式进行建模,所有常量a,b,c,d都是相同大小的bitvecs,并受以下断言a + b >= c + d约束。 我想以不会发生上溢/下溢的方式对其进行建模。 到目前为止,这是我尝试过的: 但是我不确定约束是否足够。 ...

2018-06-14 21:16:13 1 66   z3/ smt
7 如何调试 SMT-Lib 输出中缺失的变量?

基于这个非常有用的答案,我重写了我的solver-for-a-stateful-program 来使用Query monad 和一个不断增加的代表输入的SMT 变量列表。 我期望由此产生的两个结果之一:要么第一部分(生成 SMTLib 输出)被加速并变得可用,要么它仍然如此缓慢以至于它可能无法正常工 ...

8 SMT-Lib 中是否有不等式运算符?

我知道我可以用 simple (not (= ab))断言不等式,但我想知道是否有直接执行此操作的运算符。 我已经尝试了所有想到的东西,包括!= 、 <> 、 \\= (这不会解析)、 /= 、 =/= 、 neq并且它们都不起作用。 是否有专门的功能,还是我需要用否定来组合相等? ...

10 如何在 SMT-lib 中使用元组?

我很确定应该可以使用 SMT-lib 语法来描述元组,尤其是对于 Z3 求解器。 但是,我真的找不到这样做的方法。 我唯一找到的是这个文档页面,但我不知道如何在z3 -in使用它。 到目前为止我的挣扎: (declare-const t (Prod Int Bool)) (error "line ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM