/caterwaul/Natural/rig
Copy path to clipboardTODO: Should be a Rig/Commutative
Source
{-|
**TODO**: Should be a Rig/Commutative
-}
let cat = ../Category/Cat/semigroupal
let vObject = Type
let Set =
../Category/Monoidal/Cartesian/extractMonoidal
cat
vObject
Type
../Category/Set/monoidal/cartesian
in { additive =
{ unit = λ(_ : {}) → 0
, product = λ(t : { _1 : Natural, _2 : Natural }) → t._1 + t._2
}
, multiplicative =
{ unit = λ(_ : {}) → 1
, product = λ(t : { _1 : Natural, _2 : Natural }) → t._1 * t._2
}
}
: ../Rig/Type Type Set Natural