data-category-0.5.1: Category theory

Portabilitynon-portable
Stabilityexperimental
Maintainersjoerd@w3future.com
Safe HaskellSafe-Inferred

Data.Category.Fix

Description

 

Synopsis

Documentation

newtype Fix f a b Source

Constructors

Fix (f (Fix f) a b) 

Instances

Category (f (Fix f)) => Category (Fix f)

Fix f is the fixed point category for a category combinator f.

(Category (Fix f), HasBinaryCoproducts (f (Fix f))) => HasBinaryCoproducts (Fix f)

Fix f inherits its (co)limits from f (Fix f).

(Category (Fix f), HasBinaryProducts (f (Fix f))) => HasBinaryProducts (Fix f)

Fix f inherits its (co)limits from f (Fix f).

(Category (Fix f), HasInitialObject (f (Fix f))) => HasInitialObject (Fix f)

Fix f inherits its (co)limits from f (Fix f).

(Category (Fix f), HasTerminalObject (f (Fix f))) => HasTerminalObject (Fix f)

Fix f inherits its (co)limits from f (Fix f).

data Wrap f Source

Constructors

Wrap 

Instances

(Category (Dom (Wrap f)), Category (Cod (Wrap f)), Category (f (Fix f))) => Functor (Wrap f)

The Wrap functor wraps Fix around f (Fix f).

type Omega = Fix (:>>: Unit)Source

Take the Omega category, add a new disctinct object, and an arrow from that object to every object in Omega, and you get Omega again.