data-category-0.4.1: Category theory

Portabilitynon-portable
Stabilityexperimental
Maintainersjoerd@w3future.com

Data.Category.Product

Description

 

Documentation

data :**: whereSource

Constructors

:**: :: c1 a1 b1 -> c2 a2 b2 -> :**: c1 c2 (a1, a2) (b1, b2) 

Instances

(Category c1, Category c2) => Category (:**: c1 c2)

The product category of category c1 and c2.

(HasTerminalObject c1, HasTerminalObject c2) => HasTerminalObject (:**: c1 c2)

The terminal object of the product of 2 categories is the product of their terminal objects.

(HasInitialObject c1, HasInitialObject c2) => HasInitialObject (:**: c1 c2)

The initial object of the product of 2 categories is the product of their initial objects.

(HasBinaryProducts c1, HasBinaryProducts c2) => HasBinaryProducts (:**: c1 c2)

The binary product of the product of 2 categories is the product of their binary products.

(HasBinaryCoproducts c1, HasBinaryCoproducts c2) => HasBinaryCoproducts (:**: c1 c2)

The binary coproduct of the product of 2 categories is the product of their binary coproducts.