如何在 boolector 中使用 64 位整数
How to use 64 bit integers with boolector
我正在尝试使用 boolector but I cannot find a way to represent a 64 bit integer. In fact, the number is always truncated to 32 bit. I think this is due to the fact that I'm using boolector_int
which has an uint32
as a parameter ( see the doc )
创建模型
任何人都可以建议我一种表示这样一个数字的方法吗?老实说,目前我看不出为什么可以创建 64 位的 boolector_bitvec_sort
而 boolector_int
只接受 uint32
.
的原因
谢谢
boolector_int
函数用于从实际的 int32_t
转换。同样,boolector_unsigned_int
用于从实际 uint32_t
.
转换而来
对于您的用例,请使用以下功能之一:
boolector_const
boolector_constd
boolector_consth
它基本上接受字符串作为参数来放入常量。参见:https://github.com/Boolector/boolector/blob/ae2a749b858b42c06d436353d8c1857b05021b2e/src/boolector.h#L707-L743
有点迂回,但本质上你会先将常量转换为字符串,然后将其传递。 (不同的变体本质上允许二进制、十进制和十六进制表示。)这样您就不必担心常量的实际宽度,因为这些函数也将目标 sort
作为参数。
我正在尝试使用 boolector but I cannot find a way to represent a 64 bit integer. In fact, the number is always truncated to 32 bit. I think this is due to the fact that I'm using boolector_int
which has an uint32
as a parameter ( see the doc )
任何人都可以建议我一种表示这样一个数字的方法吗?老实说,目前我看不出为什么可以创建 64 位的 boolector_bitvec_sort
而 boolector_int
只接受 uint32
.
谢谢
boolector_int
函数用于从实际的 int32_t
转换。同样,boolector_unsigned_int
用于从实际 uint32_t
.
对于您的用例,请使用以下功能之一:
boolector_const
boolector_constd
boolector_consth
它基本上接受字符串作为参数来放入常量。参见:https://github.com/Boolector/boolector/blob/ae2a749b858b42c06d436353d8c1857b05021b2e/src/boolector.h#L707-L743
有点迂回,但本质上你会先将常量转换为字符串,然后将其传递。 (不同的变体本质上允许二进制、十进制和十六进制表示。)这样您就不必担心常量的实际宽度,因为这些函数也将目标 sort
作为参数。