let prelude = [ (* Define functions for int / real conversions *) "(define to_int::(-> x::real (subtype (y::int) (and (<= y x) (< x (+ y 1))))))"; "(define to_real::(-> x::int (subtype (y::real) (= y x))))"; (* Define xor operator *) "(define xor :: (-> bool bool bool) (lambda (x::bool y::bool) (and (or x y) (not (and x y)) )))"; ]