morphisms-objects-0.1.3: Algebraic structures

Safe HaskellSafe
LanguageHaskell2010

Control.Object.Setoid

Synopsis

Documentation

data Boolean Source #

Constructors

True 
False 

(&&) :: Boolean -> Boolean -> Boolean infixr 3 Source #

(||) :: Boolean -> Boolean -> Boolean infixr 9 Source #

bool :: a -> a -> Boolean -> a Source #

class Setoid a where Source #

When providing a new instance, you should ensure it satisfies the four law:
* Reflexivity: x == x ≡ True
* Symmetry: x == y ≡ y == x
* Transitivity: x == y && y == z ≡ True ===> x == z ≡ True
* Negation: x /= y ≡ not (x == y)

Minimal complete definition

(==)

Methods

(==) :: a -> a -> Boolean infix 4 Source #

(/=) :: a -> a -> Boolean infix 4 Source #