morphisms-objects-0.1.3: Algebraic structures

Safe HaskellSafe
LanguageHaskell2010

Control.Object.Semilattice

Synopsis

Documentation

class Infimum a where Source #

When providing a new instance, you should ensure it satisfies the three laws:
* Associativity: x /\ (y /\ z) ≡ (x /\ y) /\ z
* Commutativity: x /\ y ≡ y /\ x
* Idempotency: x /\ x ≡ x

Minimal complete definition

(/\)

Methods

(/\) :: a -> a -> a Source #

class Supremum a where Source #

When providing a new instance, you should ensure it satisfies the three laws:
* Associativity: x \/ (y \/ z) ≡ (x \/ y) \/ z
* Commutativity: x \/ y ≡ y \/ x
* Idempotency: x \/ x ≡ x

Minimal complete definition

(\/)

Methods

(\/) :: a -> a -> a Source #

type family Semilattice constraint where ... Source #

Equations

Semilattice Infimum = () 
Semilattice Supremum = ()