是否可以选择将位向量精美打印为带符号的小数?

时间:2011-11-23 18:24:53

标签: z3

如何在Z3中将位向量精美打印为带符号的小数?

1 个答案:

答案 0 :(得分:3)

您可以使用命令(set-option :pp-bv-literals false)强制Z3以基于十进制的格式显示位向量文字。实际上,它将使用SMT 2.0格式显示它们:(_ bv<decimal> <size>)。请考虑以下示例:

(simplify #x00f8)
(set-option :pp-bv-literals false)
(simplify #x00f8)

Z3将打印

#x00f8
(_ bv248 16)

Z3不支持带符号的小数。如果n的最高位为1,我们可以添加一个选项以将位向量(bvneg (_ bv<decimal> <size>)显示为n。这是否足够用于您的目的?