module Test0 () where

{-@ type GeNum a N = {v: a | N <= v} @-}

{-@ type PosInt = GeNum Int {0} @-}

{-@ myabs :: Int -> PosInt @-}
myabs :: Int -> Int
myabs x = if (x > 0) then x else (0 - x)

{-@ incr :: x:Int -> GeNum Int {x} @-}
incr :: Int -> Int
incr x = x + 1

