liquidhaskell-0.9.0.2.1: tests/pos/T1560B.hs
{-@ LIQUID "--ple" @-}
{-@ LIQUID "--reflection" @-}
{-@ LIQUID "--extensionality" @-}
module T1560B where
k :: a -> b -> b
k _ b = b
{-@ reflect f @-}
f :: Int -> Int
f x = x + 1
{-@ reflect g @-}
g :: Int -> Int -> Int
g x = f
{-@ fgeqxy :: x:Int -> y:Int -> {f y = g x y} @-}
fgeqxy :: Int -> Int -> ()
fgeqxy x y = g x y `k` f y `k` ()
{-@ fgeqx :: x:Int -> {f = g x} @-}
fgeqx :: Int -> ()
fgeqx x = f `k` g x `k` ()