Safe Haskell | None |
---|---|
Language | Haskell2010 |
Propositions and combinators for conveniently constructing them.
Synopsis
- type Prop = HFree LogicOp
- type Prop' ops v = Prop (HFree' ops v)
- expr :: expr a -> Prop expr a
- plit :: Bool -> Prop expr Bool
- pnot :: Prop expr Bool -> Prop expr Bool
- (*&&) :: Prop expr Bool -> Prop expr Bool -> Prop expr Bool
- (*||) :: Prop expr Bool -> Prop expr Bool -> Prop expr Bool
- (*->) :: Prop expr Bool -> Prop expr Bool -> Prop expr Bool
- (*<->) :: Prop expr Bool -> Prop expr Bool -> Prop expr Bool
- propAnd :: [Prop expr Bool] -> Prop expr Bool
- propOr :: [Prop expr Bool] -> Prop expr Bool
- data LogicOp t a where
Proposition Types
type Prop' ops v = Prop (HFree' ops v) Source #
Propositions over expressions with the given list of operators.
DSL
HTraversable
data LogicOp t a where Source #
Logical operations
LogLit :: Bool -> LogicOp t Bool | |
LogNot :: t Bool -> LogicOp t Bool | |
LogAnd :: t Bool -> t Bool -> LogicOp t Bool | |
LogOr :: t Bool -> t Bool -> LogicOp t Bool | |
LogImpl :: t Bool -> t Bool -> LogicOp t Bool | |
LogEquiv :: t Bool -> t Bool -> LogicOp t Bool |