需要帮助定义机器整数

时间:2017-07-27 23:20:26

标签: why3

我在规范中使用mach.int library(另请参阅this question),我尝试定义int32类型的常量:< / p>

let constant_out1: int32 = 1 in
…

但是,在分析时,why3会返回消息:

This term has type int, but is expected to have type int32

我注意到Bounded_intInt32实例化类型int32)中包含以下内容:

  val of_int (n:int) : t
    requires { "expl:integer overflow" in_bounds n }
    ensures  { to_int result = n }

但是,我似乎无法使用此功能将1投射到int32。例如,如果我使用:

let constant_out1: int32 = Int32.of_int(1) in
…

我收到消息unbound symbol 'Int32.of_int'。我已经尝试了很多这方面的排列,但都没有取得任何成功。任何人都可以提供指导,告诉我为什么我希望1属于int32类型吗?

0 个答案:

没有答案