numBits = 32 #
theorem ISize.toBitVec32_min {a b : ISize} (h : System.Platform.numBits = 32) :
(min a b).toBitVec32 h = if (a.toBitVec32 h).sle (b.toBitVec32 h) = true then a.toBitVec32 h else b.toBitVec32 h
theorem ISize.toBitVec32_max {a b : ISize} (h : System.Platform.numBits = 32) :
(max a b).toBitVec32 h = if (a.toBitVec32 h).sle (b.toBitVec32 h) = true then b.toBitVec32 h else a.toBitVec32 h
theorem ISize.toBitVec32_ofBitVec (n : BitVec System.Platform.numBits) (h : System.Platform.numBits = 32) :
numBits = 64 #
theorem ISize.toBitVec64_min {a b : ISize} (h : System.Platform.numBits = 64) :
(min a b).toBitVec64 h = if (a.toBitVec64 h).sle (b.toBitVec64 h) = true then a.toBitVec64 h else b.toBitVec64 h
theorem ISize.toBitVec64_max {a b : ISize} (h : System.Platform.numBits = 64) :
(max a b).toBitVec64 h = if (a.toBitVec64 h).sle (b.toBitVec64 h) = true then b.toBitVec64 h else a.toBitVec64 h
theorem ISize.toBitVec64_ofBitVec (n : BitVec System.Platform.numBits) (h : System.Platform.numBits = 64) :