hask-0: Categories

Copyright(c) Edward Kmett 2014
LicenseBSD3
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Hask.Rep

Contents

Description

 

Synopsis

Representability

class Representable p where Source

Minimal complete definition

Nothing

Associated Types

type Rep p :: y -> x Source

Methods

_Rep :: Iso (p a b) (p a' b') (Hom a (Rep p b)) (Hom a' (Rep p b')) Source

Instances

Representable * * * (->) 
Representable Constraint * Constraint (:-) 
Representable k * k (Down k k f) 
(Representable k * j p, Representable j * i q, Composed i (Hom i *), Functor j i (Rep j * i q), Category i (Hom i *), Category j (Hom j *)) => Representable k * i (Prof j k i p q) 
Representable (i -> *) * (i -> *) (Nat * i) 

class Corepresentable p where Source

Minimal complete definition

Nothing

Associated Types

type Corep p :: x -> y Source

Methods

_Corep :: Iso (p a b) (p a' b') (Hom (Corep p a) b) (Hom (Corep p a') b') Source

Instances

Corepresentable * * * (->) 
Corepresentable Constraint * * (|=) 
Corepresentable Constraint * Constraint (:-) 
Corepresentable Constraint Constraint Constraint (|-) 
Corepresentable k * k (Up k k f) 
(Corepresentable j * k p, Corepresentable i * j q, Composed k (Hom k *), Functor j k (Corep j * k p), Category j (Hom j *), Category k (Hom k *)) => Corepresentable i * k (Prof j k i p q) 
Corepresentable * (k -> *) (k -> *) (Power1 k) 
Corepresentable (i -> *) * (i -> *) (Nat * i) 

data Up f a b Source

Cat^op -> Prof, Corepresentable, conjoint

Constructors

Up 

Fields

runUp :: f a ~> b
 

Instances

Corepresentable k * k (Up k k f) 
Cartesian k (Cod k k1 f) => Monoidal k * (Up k k f a) 
Precartesian k (Cod k k1 f) => Semimonoidal * k (Up k k f a) 
Category k (Cod k k1 f) => Functor k * (Up k k f a) 
Semimonad * (Up * k f a) 
(Cartesian k (Cod k k1 f), Monoid k b) => Monoid * (Up k k f a b) 
(Precartesian k (Cod k k1 f), Semigroup k b) => Semigroup * (Up k k f a b) 
(Functor k k1 f, Category k1 (Cod k1 k f)) => Contravariant (k -> *) k (Up k k f) 
Category j (Hom j *) => Contravariant (i -> j -> *) (i -> j) (Up j i) 
type Corep k * k1 (Up k1 k f) = f 

_Up :: (~>) * (Hom k * (f a) b -> Hom k2 * (f1 a1) b1) (Up k k1 f a b -> Up k2 k3 f1 a1 b1) Source

data Down f a b Source

Cat -> Prof, Representable, companion

Constructors

Down 

Fields

runDown :: a ~> f b
 

Instances

Representable k * k (Down k k f) 
Monoidal k k1 f => Monoidal k * (Down k k f a) 
Semimonoidal k1 k f => Semimonoidal * k (Down k k f a) 
(Functor k k1 f, Category k1 (Cod k1 k f)) => Functor k * (Down k k f a) 
Semimonad * f => Semimonad * (Down * * f a) 
(Monoidal k1 k f, Monoid k1 b) => Monoid * (Down k k f a b) 
(Semimonoidal k k1 f, Semigroup k1 b) => Semigroup * (Down k k f a b) 
Category k (Cod k k1 f) => Contravariant (k -> *) k (Down k k f) 
Category i (Hom i *) => Functor (j -> i) (i -> j -> *) (Down i j) 
type Rep k * k1 (Down k1 k f) = f 

_Down :: (~>) * (Hom k * a (f b) -> Hom k2 * a1 (f1 b1)) (Down k k1 f a b -> Down k2 k3 f1 a1 b1) Source