data-category-0.7.2: Category theory

LicenseBSD-style (see the file LICENSE)
Maintainersjoerd@w3future.com
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Category.Boolean

Description

2, or the Boolean category. It contains 2 objects, one for true and one for false. It contains 3 arrows, 2 identity arrows and one from false to true.

Documentation

data Fls Source #

Instances
type BinaryCoproduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Fls Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Fls = a

data Tru Source #

Instances
type BinaryCoproduct Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Tru Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Tru = b

data Boolean a b where Source #

Constructors

Fls :: Boolean Fls Fls 
F2T :: Boolean Fls Tru 
Tru :: Boolean Tru Tru 
Instances
Category Boolean Source #

Boolean is the category with true and false as objects, and an arrow from false to true.

Instance details

Defined in Data.Category.Boolean

Methods

src :: Boolean a b -> Obj Boolean a Source #

tgt :: Boolean a b -> Obj Boolean b Source #

(.) :: Boolean b c -> Boolean a b -> Boolean a c Source #

HasBinaryCoproducts Boolean Source #

Disjunction is the binary coproduct in the Boolean category.

Instance details

Defined in Data.Category.Boolean

Associated Types

type BinaryCoproduct Boolean x y :: Type Source #

HasBinaryProducts Boolean Source #

Conjunction is the binary product in the Boolean category.

Instance details

Defined in Data.Category.Boolean

Associated Types

type BinaryProduct Boolean x y :: Type Source #

HasInitialObject Boolean Source #

False is the initial object in the Boolean category.

Instance details

Defined in Data.Category.Boolean

Associated Types

type InitialObject Boolean :: Type Source #

HasTerminalObject Boolean Source #

True is the terminal object in the Boolean category.

Instance details

Defined in Data.Category.Boolean

Associated Types

type TerminalObject Boolean :: Type Source #

CartesianClosed Boolean Source #

Implication makes the Boolean category cartesian closed.

Instance details

Defined in Data.Category.Boolean

Associated Types

type Exponential Boolean y z :: Type Source #

Category k => HasColimits Boolean k Source #

The colimit of a functor from the Boolean category is the target of the arrow it points to.

Instance details

Defined in Data.Category.Boolean

Methods

colimit :: Obj (Nat Boolean k) f -> Cocone f (Colimit f) Source #

colimitFactorizer :: Obj (Nat Boolean k) f -> Cocone f n -> k (Colimit f) n Source #

Category k => HasLimits Boolean k Source #

The limit of a functor from the Boolean category is the source of the arrow it points to.

Instance details

Defined in Data.Category.Boolean

Methods

limit :: Obj (Nat Boolean k) f -> Cone f (Limit f) Source #

limitFactorizer :: Obj (Nat Boolean k) f -> Cone f n -> k n (Limit f) Source #

type InitialObject Boolean Source # 
Instance details

Defined in Data.Category.Boolean

type TerminalObject Boolean Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryCoproduct Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type BinaryProduct Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

type ColimitFam Boolean k f Source # 
Instance details

Defined in Data.Category.Boolean

type ColimitFam Boolean k f = f :% Tru
type LimitFam Boolean k f Source # 
Instance details

Defined in Data.Category.Boolean

type LimitFam Boolean k f = f :% Fls
type Exponential Boolean Tru Tru Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Tru Fls Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Fls Tru Source # 
Instance details

Defined in Data.Category.Boolean

type Exponential Boolean Fls Fls Source # 
Instance details

Defined in Data.Category.Boolean

data Arrow k a b Source #

Constructors

Arrow (k a b) 
Instances
Category k => Functor (Arrow k a b) Source #

Any functor from the Boolean category points to an arrow in its target category.

Instance details

Defined in Data.Category.Boolean

Associated Types

type Dom (Arrow k a b) :: Type -> Type -> Type Source #

type Cod (Arrow k a b) :: Type -> Type -> Type Source #

type (Arrow k a b) :% a :: Type Source #

Methods

(%) :: Arrow k a b -> Dom (Arrow k a b) a0 b0 -> Cod (Arrow k a b) (Arrow k a b :% a0) (Arrow k a b :% b0) Source #

type Dom (Arrow k a b) Source # 
Instance details

Defined in Data.Category.Boolean

type Dom (Arrow k a b) = Boolean
type Cod (Arrow k a b) Source # 
Instance details

Defined in Data.Category.Boolean

type Cod (Arrow k a b) = k
type (Arrow k a b) :% Fls Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Fls = a
type (Arrow k a b) :% Tru Source # 
Instance details

Defined in Data.Category.Boolean

type (Arrow k a b) :% Tru = b