categories-1.0.7: Categories

Copyright2010-2012 Edward Kmett
LicenseBSD
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityexperimental
Portabilitynon-portable (either class-associated types or MPTCs with fundeps)
Safe HaskellSafe
LanguageHaskell2010

Control.Categorical.Object

Description

This module declares the HasTerminalObject and HasInitialObject classes.

These are both special cases of the idea of a (co)limit.

Synopsis

Documentation

class Category k => HasTerminalObject k where Source #

The Category (~>) has a terminal object Terminal (~>) such that for all objects a in (~>), there exists a unique morphism from a to Terminal (~>).

Minimal complete definition

terminate

Associated Types

type Terminal k :: * Source #

Methods

terminate :: a `k` Terminal k Source #

class Category k => HasInitialObject k where Source #

The Category (~>) has an initial (coterminal) object Initial (~>) such that for all objects a in (~>), there exists a unique morphism from Initial (~>) to a.

Minimal complete definition

initiate

Associated Types

type Initial k :: * Source #

Methods

initiate :: Initial k `k` a Source #