semiring-0.1: NLP/Semiring/Boolean.hs
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module NLP.Semiring.Boolean where
import NLP.Semiring
import qualified Data.Boolean as B
import Data.Boolean ((&&*),(||*))
newtype Boolean = Boolean Bool
deriving (Eq, Show, B.Boolean)
instance Multiplicative Boolean where
one = B.true
times = (&&*)
instance Monoid Boolean where
mempty = B.false
mappend = (||*)
instance Semiring Boolean