categories-0.55.0: categories from category-extras

Portabilityportable
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>

Control.Category.Braided

Description

 

Synopsis

Documentation

class Braided k p whereSource

A braided (co)(monoidal or associative) category can commute the arguments of its bi-endofunctor. Obeys the laws:

 idr . braid = idl 
 idl . braid = idr 
 braid . coidr = coidl 
 braid . coidl = coidr 
 associate . braid . associate = second braid . associate . first braid 
 disassociate . braid . disassociate = first braid . disassociate . second braid 

Methods

braid :: k (p a b) (p b a)Source

Instances

Braided (->) Either 
Braided (->) (,) 

class Braided k p => Symmetric k p Source

If we have a symmetric (co)Monoidal category, you get the additional law:

 swap . swap = id

Instances

swap :: Symmetric k p => k (p a b) (p b a)Source