-- definitions def intToBool : Int -> Bool := \(x : Int) if x = 0 then false else true; def boolToInt : Bool -> Int := \(x : Bool) if x then 1 else 0; def not : Bool -> Bool := \(x : Bool) if x then false else true; def and : Bool -> Bool -> Bool := \(x : Bool) \(y : Bool) if x then y else false; \(x : Int) \(y : Int) boolToInt (and (not (intToBool x)) (not (not (intToBool y))))