/caterwaul/Void/semigroup

Copy path to clipboard

Source

let cat = ../Category/Cat/semigroupal

let vObject = Type

let Set =
../Category/Monoidal/Cartesian/extractSemigroupal
cat
vObject
Type
../Category/Set/monoidal/cartesian

in { product = λ(p : { _1 : <>, _2 : <> }) → merge {=} p._1 : <> }
: ../Semigroup/Type Type Set <>