Files
why3/examples_in_progress/mean.mlw
2023-03-08 12:26:34 +00:00

13 lines
227 B
Plaintext

module M
use int.Int
use int.EuclideanDivision as ED
use int.ComputerDivision
let mean (x:int) (y:int)
requires { 0 <= x <= y }
ensures { result = ED.div (x + y) 2 = div (x + y) 2 }
= x + div (y - x) 2
end