idris-ct icon indicating copy to clipboard operation
idris-ct copied to clipboard

prove that the category of types and functions is symmetric monoidal

Open marcosh opened this issue 5 years ago • 5 comments

marcosh avatar May 23 '19 16:05 marcosh

It might be better to have cartesian monoidal categories instead. That way, we get a general machinery and just have to show the existence of finite products or binary products and a terminal object.

WhatisRT avatar May 28 '19 12:05 WhatisRT

This actually makes sense. It may be easier to prove that type product is indeed a categorical product, then one could implement the proof that product gives always a monoidal structure (which we already know is true)

FabrizioRomanoGenovese avatar May 28 '19 14:05 FabrizioRomanoGenovese

yes, that makes a lot of sense.

so the steps here could be:

  • define categorical product
  • define terminal object
  • prove that (,) is a categorical product in the category Idris
  • prove that Idris has a terminal object
  • prove that any category with finite products can be seen as a monoidal category

does this seem right?

marcosh avatar May 29 '19 16:05 marcosh

Yes. The thing that may be a pain here is defining terminality. If $T$ is terminal, then you want to prove that f,g:X->T implies f = g for each X, f,g. I don't even think this is true without assuming extensionality, actually.

FabrizioRomanoGenovese avatar May 30 '19 11:05 FabrizioRomanoGenovese

we are going to use TypesAsCategoryExtensional, btw, so we have extensionality

marcosh avatar May 30 '19 21:05 marcosh