{-# language TypeSynonymInstances #-}
{-# language FlexibleInstances #-}

module Satchmo.SMT.Exotic.Semiring.Rational where

import Data.Ratio
import Satchmo.SMT.Exotic.Semiring.Class    

instance Semiring Rational where    
    strictness _ = Full
    nonnegative x = x >= 0 ; strictly_positive x = x >= 1 
    ge = (>=) ; gt = (>)
    plus = (+) ; zero = 0 ; times = (*) ; one = 1