Copyright | (C) 2015 Edward Kmett |
---|---|

License | BSD-style (see the file LICENSE) |

Maintainer | Edward Kmett <ekmett@gmail.com> |

Stability | provisional |

Portability | MPTCs, fundeps |

Safe Haskell | Safe |

Language | Haskell2010 |

- class (Profunctor p, Functor f) => Sieve p f | p -> f where
- class (Profunctor p, Functor f) => Cosieve p f | p -> f where

# Documentation

class (Profunctor p, Functor f) => Sieve p f | p -> f where Source #

A `Profunctor`

`p`

is a `Sieve`

**on** `f`

if it is a subprofunctor of

.`Star`

f

That is to say it is a subset of `Hom(-,f=)`

closed under `lmap`

and `rmap`

.

Alternately, you can view it as a sieve **in** the comma category `Hask/f`

.

class (Profunctor p, Functor f) => Cosieve p f | p -> f where Source #

A `Profunctor`

`p`

is a `Cosieve`

**on** `f`

if it is a subprofunctor of

.`Costar`

f

That is to say it is a subset of `Hom(f-,=)`

closed under `lmap`

and `rmap`

.

Alternately, you can view it as a cosieve **in** the comma category `f/Hask`

.