connections-0.0.3: Partial orders, Galois connections, and lattices.

Safe HaskellSafe
LanguageHaskell2010

Data.Semilattice.Top

Synopsis

Documentation

type Bottom a = Maybe a Source #

type Bounded a = Bottom (Top a) Source #

type Lifted a = Nan (Top a) Source #

type Lowered a = Nan (Bottom a) Source #

type Extended a = Nan (Bounded a) Source #

data Top a Source #

Constructors

Fin a 
Top 
Instances
Functor Top Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

fmap :: (a -> b) -> Top a -> Top b #

(<$) :: a -> Top b -> Top a #

Foldable Top Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

fold :: Monoid m => Top m -> m #

foldMap :: Monoid m => (a -> m) -> Top a -> m #

foldr :: (a -> b -> b) -> b -> Top a -> b #

foldr' :: (a -> b -> b) -> b -> Top a -> b #

foldl :: (b -> a -> b) -> b -> Top a -> b #

foldl' :: (b -> a -> b) -> b -> Top a -> b #

foldr1 :: (a -> a -> a) -> Top a -> a #

foldl1 :: (a -> a -> a) -> Top a -> a #

toList :: Top a -> [a] #

null :: Top a -> Bool #

length :: Top a -> Int #

elem :: Eq a => a -> Top a -> Bool #

maximum :: Ord a => Top a -> a #

minimum :: Ord a => Top a -> a #

sum :: Num a => Top a -> a #

product :: Num a => Top a -> a #

Traversable Top Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

traverse :: Applicative f => (a -> f b) -> Top a -> f (Top b) #

sequenceA :: Applicative f => Top (f a) -> f (Top a) #

mapM :: Monad m => (a -> m b) -> Top a -> m (Top b) #

sequence :: Monad m => Top (m a) -> m (Top a) #

TripRatio Integer (Extended Int8) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Integer (Extended Int16) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Integer (Extended Int32) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Integer (Extended Int64) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Integer (Extended Integer) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Natural (Lifted Natural) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Natural (Lifted Word8) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Natural (Lifted Word16) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Natural (Lifted Word32) Source # 
Instance details

Defined in Data.Connection.Ratio

TripRatio Natural (Lifted Word64) Source # 
Instance details

Defined in Data.Connection.Ratio

Show a => Show (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

showsPrec :: Int -> Top a -> ShowS #

show :: Top a -> String #

showList :: [Top a] -> ShowS #

Generic (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Associated Types

type Rep (Top a) :: Type -> Type #

Methods

from :: Top a -> Rep (Top a) x #

to :: Rep (Top a) x -> Top a #

(Meet - Semigroup) a => Semigroup (Meet (Top a)) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

(<>) :: Meet (Top a) -> Meet (Top a) -> Meet (Top a) #

sconcat :: NonEmpty (Meet (Top a)) -> Meet (Top a) #

stimes :: Integral b => b -> Meet (Top a) -> Meet (Top a) #

(Join - Semigroup) a => Semigroup (Join (Top a)) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

(<>) :: Join (Top a) -> Join (Top a) -> Join (Top a) #

sconcat :: NonEmpty (Join (Top a)) -> Join (Top a) #

stimes :: Integral b => b -> Join (Top a) -> Join (Top a) #

Semigroup a => Semigroup (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

(<>) :: Top a -> Top a -> Top a #

sconcat :: NonEmpty (Top a) -> Top a #

stimes :: Integral b => b -> Top a -> Top a #

(Meet - Semigroup) a => Monoid (Meet (Top a)) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

mempty :: Meet (Top a) #

mappend :: Meet (Top a) -> Meet (Top a) -> Meet (Top a) #

mconcat :: [Meet (Top a)] -> Meet (Top a) #

(Join - Monoid) a => Monoid (Join (Top a)) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

mempty :: Join (Top a) #

mappend :: Join (Top a) -> Join (Top a) -> Join (Top a) #

mconcat :: [Join (Top a)] -> Join (Top a) #

Monoid a => Monoid (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

mempty :: Top a #

mappend :: Top a -> Top a -> Top a #

mconcat :: [Top a] -> Top a #

Prd a => Maximal (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

maximal :: Top a Source #

Minimal a => Minimal (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

minimal :: Top a Source #

Prd a => Prd (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Methods

(<=) :: Top a -> Top a -> Bool Source #

(>=) :: Top a -> Top a -> Bool Source #

(<) :: Top a -> Top a -> Bool Source #

(>) :: Top a -> Top a -> Bool Source #

(?~) :: Top a -> Top a -> Bool Source #

(=~) :: Top a -> Top a -> Bool Source #

(/~) :: Top a -> Top a -> Bool Source #

(~~) :: Top a -> Top a -> Bool Source #

(!~) :: Top a -> Top a -> Bool Source #

pcompare :: Top a -> Top a -> Maybe Ordering Source #

Lattice a => Lattice (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

Generic1 Top Source # 
Instance details

Defined in Data.Semilattice.Top

Associated Types

type Rep1 Top :: k -> Type #

Methods

from1 :: Top a -> Rep1 Top a #

to1 :: Rep1 Top a -> Top a #

type Rep (Top a) Source # 
Instance details

Defined in Data.Semilattice.Top

type Rep (Top a) = D1 (MetaData "Top" "Data.Semilattice.Top" "connections-0.0.3-DlJXNVSUPF02JVkbDQVocy" False) (C1 (MetaCons "Fin" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Top" PrefixI False) (U1 :: Type -> Type))
type Rep1 Top Source # 
Instance details

Defined in Data.Semilattice.Top

type Rep1 Top = D1 (MetaData "Top" "Data.Semilattice.Top" "connections-0.0.3-DlJXNVSUPF02JVkbDQVocy" False) (C1 (MetaCons "Fin" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) Par1) :+: C1 (MetaCons "Top" PrefixI False) (U1 :: Type -> Type))

fin :: a -> Bounded a Source #

toTop :: Prd a => LowerBoundedLattice b => (a -> b) -> Bounded a -> Top b Source #

toBottom :: Prd a => UpperBoundedLattice b => (a -> b) -> Bounded a -> Bottom b Source #

topped :: (a -> b) -> b -> Top a -> b Source #

lifted :: Semifield b => (a -> b) -> Lifted a -> b Source #

bounded :: b -> (a -> b) -> b -> Bounded a -> b Source #

bounded' :: BoundedLattice b => (a -> b) -> Bounded a -> b Source #

Interpret Bounded a using the BoundedLattice of a.

This map is monotone when f is.

extended :: b -> b -> (a -> b) -> b -> Extended a -> b Source #

extended' :: Field b => (a -> b) -> Extended a -> b Source #

liftTop :: Maximal a => (a -> b) -> a -> Top b Source #

liftTop' :: Maximal a => (a -> b) -> a -> Bounded b Source #

liftBottom :: Minimal a => (a -> b) -> a -> Bottom b Source #

liftBottom' :: Minimal a => (a -> b) -> a -> Bounded b Source #

liftBounded :: Bound a => (a -> b) -> a -> Bounded b Source #

liftExtended :: Bound a => Field a => (a -> b) -> a -> Extended b Source #