Copyright | (C) 2010-2015 Maximilian Bolingbroke 2015-2019 Oleg Grenrus |
---|---|
License | BSD-3-Clause (see the file LICENSE) |
Maintainer | Oleg Grenrus <oleg.grenrus@iki.fi> |
Safe Haskell | Safe |
Language | Haskell2010 |
Synopsis
- data Lifted a
- retractLifted :: BoundedJoinSemiLattice a => Lifted a -> a
- foldLifted :: b -> (a -> b) -> Lifted a -> b
Documentation
Graft a distinct bottom onto an otherwise unbounded lattice. As a bonus, the bottom will be an absorbing element for the meet.
Instances
Monad Lifted Source # | |
Functor Lifted Source # | |
Applicative Lifted Source # | |
Foldable Lifted Source # | |
Defined in Algebra.Lattice.Lifted fold :: Monoid m => Lifted m -> m Source # foldMap :: Monoid m => (a -> m) -> Lifted a -> m Source # foldMap' :: Monoid m => (a -> m) -> Lifted a -> m Source # foldr :: (a -> b -> b) -> b -> Lifted a -> b Source # foldr' :: (a -> b -> b) -> b -> Lifted a -> b Source # foldl :: (b -> a -> b) -> b -> Lifted a -> b Source # foldl' :: (b -> a -> b) -> b -> Lifted a -> b Source # foldr1 :: (a -> a -> a) -> Lifted a -> a Source # foldl1 :: (a -> a -> a) -> Lifted a -> a Source # toList :: Lifted a -> [a] Source # null :: Lifted a -> Bool Source # length :: Lifted a -> Int Source # elem :: Eq a => a -> Lifted a -> Bool Source # maximum :: Ord a => Lifted a -> a Source # minimum :: Ord a => Lifted a -> a Source # |
|
Traversable Lifted Source # | |
Defined in Algebra.Lattice.Lifted |
|
Eq a => Eq ( Lifted a) Source # | |
Data a => Data ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> Lifted a -> c ( Lifted a) Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c ( Lifted a) Source # toConstr :: Lifted a -> Constr Source # dataTypeOf :: Lifted a -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c ( Lifted a)) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c ( Lifted a)) Source # gmapT :: ( forall b. Data b => b -> b) -> Lifted a -> Lifted a Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> Lifted a -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> Lifted a -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> Lifted a -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> Lifted a -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> Lifted a -> m ( Lifted a) Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> Lifted a -> m ( Lifted a) Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> Lifted a -> m ( Lifted a) Source # |
|
Ord a => Ord ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
Read a => Read ( Lifted a) Source # | |
Show a => Show ( Lifted a) Source # | |
Generic ( Lifted a) Source # | |
Function a => Function ( Lifted a) Source # | |
Arbitrary a => Arbitrary ( Lifted a) Source # | |
CoArbitrary a => CoArbitrary ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
NFData a => NFData ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
Hashable a => Hashable ( Lifted a) Source # | |
Universe a => Universe ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
Finite a => Finite ( Lifted a) Source # | |
PartialOrd a => PartialOrd ( Lifted a) Source # | |
BoundedMeetSemiLattice a => BoundedMeetSemiLattice ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
Lattice a => BoundedJoinSemiLattice ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted |
|
Lattice a => Lattice ( Lifted a) Source # | |
Generic1 Lifted Source # | |
type Rep ( Lifted a) Source # | |
Defined in Algebra.Lattice.Lifted
type
Rep
(
Lifted
a) =
D1
('
MetaData
"Lifted" "Algebra.Lattice.Lifted" "lattices-2.1-Aj77JapAM1ZIiO74F5gL5i" '
False
) (
C1
('
MetaCons
"Bottom" '
PrefixI
'
False
) (
U1
::
Type
->
Type
)
:+:
C1
('
MetaCons
"Lift" '
PrefixI
'
False
) (
S1
('
MetaSel
('
Nothing
::
Maybe
Symbol
) '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
) (
Rec0
a)))
|
|
type Rep1 Lifted Source # | |
Defined in Algebra.Lattice.Lifted
type
Rep1
Lifted
=
D1
('
MetaData
"Lifted" "Algebra.Lattice.Lifted" "lattices-2.1-Aj77JapAM1ZIiO74F5gL5i" '
False
) (
C1
('
MetaCons
"Bottom" '
PrefixI
'
False
) (
U1
::
Type
->
Type
)
:+:
C1
('
MetaCons
"Lift" '
PrefixI
'
False
) (
S1
('
MetaSel
('
Nothing
::
Maybe
Symbol
) '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
)
Par1
))
|
retractLifted :: BoundedJoinSemiLattice a => Lifted a -> a Source #
Interpret
using the
Lifted
a
BoundedJoinSemiLattice
of
a
.