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

Safe HaskellSafe
LanguageHaskell2010

Data.Prd.Top

Synopsis

Documentation

type Bottom a = Maybe a Source #

type Bound a = Bottom (Top a) Source #

type Lifted a = Nan (Top a) Source #

type Lowered a = Nan (Bottom a) Source #

type Extended a = Nan (Bound a) Source #

data Top a Source #

Constructors

Fin a 
Top 
Instances
Functor Top Source # 
Instance details

Defined in Data.Prd.Top

Methods

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

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

Triple Double (Extended Int8) Source # 
Instance details

Defined in Data.Connection

Triple Double (Extended Int16) Source # 
Instance details

Defined in Data.Connection

Triple Double (Extended Int32) Source # 
Instance details

Defined in Data.Connection

Triple Float (Extended Int8) Source # 
Instance details

Defined in Data.Connection

Triple Float (Extended Int16) Source # 
Instance details

Defined in Data.Connection

Triple Int (Bound Integer) Source # 
Instance details

Defined in Data.Connection

Triple Int8 (Bound Integer) Source # 
Instance details

Defined in Data.Connection

Triple Int16 (Bound Integer) Source # 
Instance details

Defined in Data.Connection

Triple Int32 (Bound Integer) Source # 
Instance details

Defined in Data.Connection

Triple Int64 (Bound Integer) Source # 
Instance details

Defined in Data.Connection

Triple Rational (Extended Int8) Source # 
Instance details

Defined in Data.Connection

Triple Rational (Extended Int16) Source # 
Instance details

Defined in Data.Connection

Triple Rational (Extended Int32) Source # 
Instance details

Defined in Data.Connection

Triple Rational (Extended Int64) Source # 
Instance details

Defined in Data.Connection

Triple Rational (Extended Integer) Source # 
Instance details

Defined in Data.Connection

Triple Word (Top Natural) Source # 
Instance details

Defined in Data.Connection

Triple Word8 (Top Natural) Source # 
Instance details

Defined in Data.Connection

Triple Word16 (Top Natural) Source # 
Instance details

Defined in Data.Connection

Triple Word32 (Top Natural) Source # 
Instance details

Defined in Data.Connection

Triple Word64 (Top Natural) Source # 
Instance details

Defined in Data.Connection

Triple Positive (Lifted Natural) Source # 
Instance details

Defined in Data.Connection

Triple Positive (Lifted Word8) Source # 
Instance details

Defined in Data.Connection

Triple Positive (Lifted Word16) Source # 
Instance details

Defined in Data.Connection

Triple Positive (Lifted Word32) Source # 
Instance details

Defined in Data.Connection

Triple Positive (Lifted Word64) Source # 
Instance details

Defined in Data.Connection

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

Defined in Data.Prd.Top

Methods

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

show :: Top a -> String #

showList :: [Top a] -> ShowS #

Generic (Top a) Source # 
Instance details

Defined in Data.Prd.Top

Associated Types

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

Methods

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

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

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

Defined in Data.Prd.Top

Methods

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

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

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

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

Defined in Data.Prd.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.Prd.Top

Methods

maximal :: Top a Source #

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

Defined in Data.Prd.Top

Methods

minimal :: Top a Source #

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

Defined in Data.Prd.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 #

Generic1 Top Source # 
Instance details

Defined in Data.Prd.Top

Associated Types

type Rep1 Top :: k -> Type #

Methods

from1 :: Top a -> Rep1 Top a #

to1 :: Rep1 Top a -> Top a #

Connection a b => Connection (Top a) (Top b) Source # 
Instance details

Defined in Data.Connection

Methods

connection :: Conn (Top a) (Top b) Source #

Connection a b => Connection (Extended a) (Extended b) Source # 
Instance details

Defined in Data.Connection

Connection a b => Connection (Bound a) (Bound b) Source # 
Instance details

Defined in Data.Connection

Methods

connection :: Conn (Bound a) (Bound b) Source #

type Rep (Top a) Source # 
Instance details

Defined in Data.Prd.Top

type Rep (Top a) = D1 (MetaData "Top" "Data.Prd.Top" "connections-0.1.0-ICZ79hH9J5S6hHwlSGyIo2" 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.Prd.Top

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

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

fin :: a -> Bound a Source #

bound :: b -> b -> (a -> b) -> Bound a -> b Source #

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

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

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

Interpret Bound a using the BoundLattice of a.

This map is monotone when f is.

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

toTop :: Minimal b => (a -> b) -> Bound a -> Top b Source #

toBottom :: Maximal b => (a -> b) -> Bound a -> Bottom b Source #

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

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

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

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

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

liftExtended :: Bounded a => Floating a => (a -> b) -> a -> Extended b Source #