| License | BSD-style (see the file LICENSE) |
|---|---|
| Maintainer | sjoerd@w3future.com |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Data.Category.Product
Description
Documentation
data (:**:) :: (* -> * -> *) -> (* -> * -> *) -> * -> * -> * where Source #
Instances
| (Category c1, Category c2) => Category ((:**:) c1 c2) Source # | The product category of category |
| (HasBinaryCoproducts c1, HasBinaryCoproducts c2) => HasBinaryCoproducts ((:**:) c1 c2) Source # | The binary coproduct of the product of 2 categories is the product of their binary coproducts. |
| (HasBinaryProducts c1, HasBinaryProducts c2) => HasBinaryProducts ((:**:) c1 c2) Source # | The binary product of the product of 2 categories is the product of their binary products. |
| (HasInitialObject c1, HasInitialObject c2) => HasInitialObject ((:**:) c1 c2) Source # | The initial object of the product of 2 categories is the product of their initial objects. |
| (HasTerminalObject c1, HasTerminalObject c2) => HasTerminalObject ((:**:) c1 c2) Source # | The terminal object of the product of 2 categories is the product of their terminal objects. |
| type InitialObject ((:**:) c1 c2) Source # | |
| type TerminalObject ((:**:) c1 c2) Source # | |
| type BinaryCoproduct ((:**:) c1 c2) (x1, x2) (y1, y2) Source # | |
| type BinaryProduct ((:**:) c1 c2) (x1, x2) (y1, y2) Source # | |