{-@ LIQUID "--no-totality" @-}

module Fractional where

data Frac a

{-@ test :: x:Frac a -> y:{Frac a | y /= 0} -> {v:Frac a | v = x / y } @-} 
test :: Frac a -> Frac a -> Frac a 
test x y = x / y 


{-@ test1 :: x:a -> y:{a | y /= 0} -> {v:a | v = x / y } @-} 
test1 :: Fractional a => a -> a -> a  
test1 x y = x / y 

instance Num (Frac a) where
instance Fractional (Frac a) where
