Copyright | (c) Masahiro Sakai 2012-2014 |
---|---|
License | BSD-style |
Maintainer | masahiro.sakai@gmail.com |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Type classes for lattices and boolean algebras.
- class MonotoneBoolean a where
- class Complement a where
- notB :: a -> a
- class (MonotoneBoolean a, Complement a) => Boolean a where
Boolean algebra
class MonotoneBoolean a where Source
MonotoneBoolean Bool | |
MonotoneBoolean (GenFormula a) | |
MonotoneBoolean (DNF lit) | |
MonotoneBoolean (BoolExpr a) | |
MonotoneBoolean (Formula c) | |
MonotoneBoolean a => MonotoneBoolean (b -> a) | |
(MonotoneBoolean a, MonotoneBoolean b) => MonotoneBoolean (a, b) |
class Complement a where Source
types that can be negated.
Complement Bool | |
Complement Lit | |
Complement (GenFormula a) | |
Complement (GenLit a) | |
Complement lit => Complement (DNF lit) | |
Complement (BoolExpr a) | |
Complement (Formula a) | |
Complement (ArithRel c) | |
Complement a => Complement (b -> a) | |
(Complement a, Complement b) => Complement (a, b) |
class (MonotoneBoolean a, Complement a) => Boolean a where Source
types that can be combined with boolean operations.
Nothing