License | BSD-3-Clause (see the file LICENSE) |
---|---|
Maintainer | Oleg Grenrus <oleg.grenrus@iki.fi> |
Safe Haskell | Safe |
Language | Haskell2010 |
- data FreeJoinSemiLattice a
- liftFreeJoinSemiLattice :: a -> FreeJoinSemiLattice a
- lowerFreeJoinSemiLattice :: FreeJoinSemiLattice a -> forall b. JoinSemiLattice b => (a -> b) -> b
- retractFreeJoinSemiLattice :: JoinSemiLattice a => FreeJoinSemiLattice a -> a
- data FreeMeetSemiLattice a
- liftFreeMeetSemiLattice :: a -> FreeMeetSemiLattice a
- lowerFreeMeetSemiLattice :: FreeMeetSemiLattice a -> forall b. MeetSemiLattice b => (a -> b) -> b
- retractFreeMeetSemiLattice :: MeetSemiLattice a => FreeMeetSemiLattice a -> a
- data FreeLattice a
- liftFreeLattice :: a -> FreeLattice a
- lowerFreeLattice :: FreeLattice a -> forall b. Lattice b => (a -> b) -> b
- retractFreeLattice :: Lattice a => FreeLattice a -> a
Free join-semilattices
data FreeJoinSemiLattice a Source #
liftFreeJoinSemiLattice :: a -> FreeJoinSemiLattice a Source #
lowerFreeJoinSemiLattice :: FreeJoinSemiLattice a -> forall b. JoinSemiLattice b => (a -> b) -> b Source #
retractFreeJoinSemiLattice :: JoinSemiLattice a => FreeJoinSemiLattice a -> a Source #
Free meet-semilattices
data FreeMeetSemiLattice a Source #
liftFreeMeetSemiLattice :: a -> FreeMeetSemiLattice a Source #
lowerFreeMeetSemiLattice :: FreeMeetSemiLattice a -> forall b. MeetSemiLattice b => (a -> b) -> b Source #
retractFreeMeetSemiLattice :: MeetSemiLattice a => FreeMeetSemiLattice a -> a Source #
Free lattices
data FreeLattice a Source #
Functor FreeLattice Source # | |
Universe a => Universe (FreeLattice a) Source # | |
Finite a => Finite (FreeLattice a) Source # | |
BoundedLattice a => BoundedLattice (FreeLattice a) Source # | |
BoundedMeetSemiLattice a => BoundedMeetSemiLattice (FreeLattice a) Source # | |
BoundedJoinSemiLattice a => BoundedJoinSemiLattice (FreeLattice a) Source # | |
Lattice (FreeLattice a) Source # | |
MeetSemiLattice (FreeLattice a) Source # | |
JoinSemiLattice (FreeLattice a) Source # | |
liftFreeLattice :: a -> FreeLattice a Source #
lowerFreeLattice :: FreeLattice a -> forall b. Lattice b => (a -> b) -> b Source #
retractFreeLattice :: Lattice a => FreeLattice a -> a Source #