statebox / idris-ct

formally verified category theory library
GNU Affero General Public License v3.0
256 stars 23 forks source link

prove that the category of types and functions is symmetric monoidal #23

Open marcosh opened 5 years ago

WhatisRT commented 5 years ago

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.

FabrizioRomanoGenovese commented 5 years ago

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)

marcosh commented 5 years ago

yes, that makes a lot of sense.

so the steps here could be:

does this seem right?

FabrizioRomanoGenovese commented 5 years ago

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.

marcosh commented 5 years ago

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