why3 - Need help defining a machine integer -
i'm using mach.int library in specification (see this question), , i'm trying define constant of type int32:
let constant_out1: int32 = 1 in … however, when analyzing this, why3 returns message:
this term has type int, expected have type int32
i noticed bounded_int (which int32 instantiates type int32) has following in it:
val of_int (n:int) : t requires { "expl:integer overflow" in_bounds n } ensures { to_int result = n } however, not seem able use cast 1 int32. example, if use:
let constant_out1: int32 = int32.of_int(1) in … i message unbound symbol 'int32.of_int'. i've tried many permutations of this, without success. can provided guidance how tell why3 want 1 of type int32?
Comments
Post a Comment