In order to check the snake equations, one must first define an associator profunctor. As in the [previous exercise](https://forum.azimuthproject.org/discussion/2324/exercise-61-chapter-4), this will be defined in terms of a functor \\(\newcommand{\Ob}[1]{\mathrm{Ob}(#1)}\newcommand{\Op}[1]{(#1)^\mathrm{op}}\newcommand{\cat}[1]{\mathcal{#1}} \alpha\_{\cat{A},\cat{B},\cat{C}}:\Ob{\cat{A}\times(\cat{B}\times\cat{C})}\times\Ob{(\cat{A}\times\cat{B})\times\cat{C}}\to\cat{V}\\) and by checking the consistency condition.

Define \\[\alpha\_{\cat{A},\cat{B},\cat{C}}((a\times b)\times c,a'\times(b'\times c')):=\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\\]. Note: since \\(\cat{V}\\) is a quantale (and so, in particular, symmetric monoidal), the left-hand side is unambiguous (either placement of parentheses yields a value that is the same as that of the other).

\begin{align}((&\cat{A}\times\cat{B})\times\cat{C})((a\times b)\times c,(a'\times b')\times c')\otimes\alpha\_{\cat{A},\cat{B},\cat{C}}((a'\times b')\times c',a''\times(b''\times c''))\otimes(\cat{A}\times(\cat{B}\times\cat{C}))(a''\times(b''\times c''),a''\times(b'''\times c'''))\\\\=&(\cat{A}\times\cat{B})(a\times b,a'\times b')\otimes\cat{C}(c,c')\otimes\alpha\_{\cat{A},\cat{B},\cat{C}}((a'\times b')\times c',a''\times(b''\times c''))\otimes(\cat{A}\times(\cat{B}\times\cat{C}))(a''\times(b''\times c''),a''\times(b'''\times c'''))\\\\=&\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\otimes\alpha\_{\cat{A},\cat{B},\cat{C}}((a'\times b')\times c',a''\times(b''\times c''))\otimes(\cat{A}\times(\cat{B}\times\cat{C}))(a''\times(b''\times c''),a''\times(b'''\times c'''))\\\\=&\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\otimes\cat{A}(a',a'')\otimes\cat{B}(b',b'')\otimes\cat{C}(c',c'')\otimes(\cat{A}\times(\cat{B}\times\cat{C}))(a''\times(b''\times c''),a''\times(b'''\times c'''))\\\\=&\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\otimes\cat{A}(a',a'')\otimes\cat{B}(b',b'')\otimes\cat{C}(c',c'')\otimes\cat{A}(a'',a''')\otimes(\cat{B}\times\cat{C})(b''\times c'',b'''\times c''')\\\\=&\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\otimes\cat{A}(a',a'')\otimes\cat{B}(b',b'')\otimes\cat{C}(c',c'')\otimes\cat{A}(a'',a''')\otimes\cat{B}(b'',b''')\otimes\cat{C}(c'',c''')\\\\=&\cat{A}(a,a')\otimes\cat{A}(a',a'')\otimes\cat{A}(a'',a''')\otimes\cat{B}(b,b')\otimes\cat{B}(b',b'')\otimes\cat{B}(b'',b''')\otimes\cat{C}(c,c')\otimes\cat{C}(c',c'')\otimes\cat{C}(c'',c''')\\\\=&\cat{A}(a,a'')\otimes\cat{A}(a'',a''')\otimes\cat{B}(b,b'')\otimes\cat{B}(b'',b''')\otimes\cat{C}(c,c'')\otimes\cat{C}(c'',c''')\\\\=&\cat{A}(a,a''')\otimes\cat{B}(b,b''')\otimes\cat{C}(c,c''')\\\\=&\alpha\_{\cat{A},\cat{B},\cat{C}}((a\times b)\times c,a'''\times(b'''\times c'''))\end{align}. So, \\(\alpha\_{\cat{A},\cat{B},\cat{C}}\\) is a profunctor. Its inverse is equal to itself \\(\alpha\_{\cat{A},\cat{B},\cat{C}}^{-1}(a\times(b\times c),(a'\times b')\times c'):=\cat{A}(a,a')\otimes\cat{B}(b,b')\otimes\cat{C}(c,c')\\).

\begin{align}\alpha\_{\cat{A},\cat{B},\cat{C}}^{-1}\circ\alpha\_{\cat{A},\cat{B},\cat{C}}((a\times b)\times c,(a''\times b'')\times c'')=&\bigvee_{a'''\in\cat{A},b'''\in\cat{B},c'''\in\cat{C}}\cat{A}(a,a''')\otimes\cat{B}(b,b''')\otimes\cat{C}(c,c''')\otimes\cat{A}(a''',a'')\otimes\cat{B}(b''',b'')\otimes\cat{C}(c''',c'')\\\\=&\bigvee_{a'''\in\cat{A},b'''\in\cat{B},c'''\in\cat{C}}\cat{A}(a,a''')\otimes\cat{A}(a''',a'')\otimes\cat{B}(b,b''')\otimes\cat{B}(b''',b'')\otimes\cat{C}(c,c''')\otimes\cat{C}(c''',c'')\\\\=&\cat{A}(a,a'')\otimes\cat{B}(b,b'')\otimes\cat{C}(c,c'')\\\\=&(\cat{A}\times\cat{B})(a\times b,a''\times b'')\otimes\cat{C}(c,c'')\\\\=&U\_{(\cat{A}\times\cat{B})\times\cat{C}}((a\times b)\times c,(a''\times b'')\times c'')\end{align},

and \begin{align}\alpha\_{\cat{A},\cat{B},\cat{C}}\circ\alpha\_{\cat{A},\cat{B},\cat{C}}^{-1}(a\times(b\times c),a''\times(b''\times c''))=&\bigvee_{a'''\in\cat{A},b'''\in\cat{B},c'''\in\cat{C}}\cat{A}(a,a''')\otimes\cat{B}(b,b''')\otimes\cat{C}(c,c''')\otimes\cat{A}(a''',a'')\otimes\cat{B}(b''',b'')\otimes\cat{C}(c''',c'')\\\\=&\bigvee_{a'''\in\cat{A},b'''\in\cat{B},c'''\in\cat{C}}\cat{A}(a,a''')\otimes\cat{A}(a''',a'')\otimes\cat{B}(b,b''')\otimes\cat{B}(b''',b'')\otimes\cat{C}(c,c''')\otimes\cat{C}(c''',c'')\\\\=&\cat{A}(a,a'')\otimes\cat{B}(b,b'')\otimes\cat{C}(c,c'')\\\\=&\cat{A}(a,a'')\otimes(\cat{B}\times\cat{C})(b\times c,b\times c'')\\\\=&U\_{\cat{A}\times(\cat{B}\times\cat{C})}(a\times(b\times c),a''\times(b''\times c''))\end{align}. So, these profunctors are mutually isomorphic.