bsc-leon-vatthauer/agda/bsc-thesis/Categories.Category.Monoidal.Utilities.html
2024-02-09 17:53:52 +01:00

143 lines
No EOL
51 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML>
<html><head><meta charset="utf-8"><title>Categories.Category.Monoidal.Utilities</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Symbol">{-#</a> <a id="5" class="Keyword">OPTIONS</a> <a id="13" class="Pragma">--without-K</a> <a id="25" class="Pragma">--safe</a> <a id="32" class="Symbol">#-}</a>
<a id="37" class="Keyword">open</a> <a id="42" class="Keyword">import</a> <a id="49" href="Categories.Category.html" class="Module">Categories.Category</a> <a id="69" class="Keyword">using</a> <a id="75" class="Symbol">(</a><a id="76" href="Categories.Category.Core.html#442" class="Record">Category</a><a id="84" class="Symbol">;</a> <a id="86" class="Keyword">module</a> <a id="93" href="Categories.Category.html#1298" class="Module">Commutation</a><a id="104" class="Symbol">)</a>
<a id="106" class="Keyword">open</a> <a id="111" class="Keyword">import</a> <a id="118" href="Categories.Category.Monoidal.Core.html" class="Module">Categories.Category.Monoidal.Core</a> <a id="152" class="Keyword">using</a> <a id="158" class="Symbol">(</a><a id="159" href="Categories.Category.Monoidal.Core.html#1287" class="Record">Monoidal</a><a id="167" class="Symbol">)</a>
<a id="170" class="Keyword">module</a> <a id="177" href="Categories.Category.Monoidal.Utilities.html" class="Module">Categories.Category.Monoidal.Utilities</a> <a id="216" class="Symbol">{</a><a id="217" href="Categories.Category.Monoidal.Utilities.html#217" class="Bound">o</a> <a id="219" href="Categories.Category.Monoidal.Utilities.html#219" class="Bound"></a> <a id="221" href="Categories.Category.Monoidal.Utilities.html#221" class="Bound">e</a><a id="222" class="Symbol">}</a> <a id="224" class="Symbol">{</a><a id="225" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="227" class="Symbol">:</a> <a id="229" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="238" href="Categories.Category.Monoidal.Utilities.html#217" class="Bound">o</a> <a id="240" href="Categories.Category.Monoidal.Utilities.html#219" class="Bound"></a> <a id="242" href="Categories.Category.Monoidal.Utilities.html#221" class="Bound">e</a><a id="243" class="Symbol">}</a> <a id="245" class="Symbol">(</a><a id="246" href="Categories.Category.Monoidal.Utilities.html#246" class="Bound">M</a> <a id="248" class="Symbol">:</a> <a id="250" href="Categories.Category.Monoidal.Core.html#1287" class="Record">Monoidal</a> <a id="259" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a><a id="260" class="Symbol">)</a> <a id="262" class="Keyword">where</a>
<a id="269" class="Keyword">open</a> <a id="274" class="Keyword">import</a> <a id="281" href="Level.html" class="Module">Level</a>
<a id="287" class="Keyword">open</a> <a id="292" class="Keyword">import</a> <a id="299" href="Function.html" class="Module">Function</a> <a id="308" class="Keyword">using</a> <a id="314" class="Symbol">(</a><a id="315" href="Function.Base.html#1974" class="Function Operator">_$_</a><a id="318" class="Symbol">)</a>
<a id="320" class="Keyword">open</a> <a id="325" class="Keyword">import</a> <a id="332" href="Data.Product.html" class="Module">Data.Product</a> <a id="345" class="Keyword">using</a> <a id="351" class="Symbol">(</a><a id="352" href="Data.Product.Base.html#1618" class="Function Operator">_×_</a><a id="355" class="Symbol">;</a> <a id="357" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">_,_</a><a id="360" class="Symbol">;</a> <a id="362" href="Data.Product.Base.html#4520" class="Function">curry</a><a id="368" class="Symbol">)</a>
<a id="371" class="Keyword">open</a> <a id="376" class="Keyword">import</a> <a id="383" href="Categories.Category.Product.html" class="Module">Categories.Category.Product</a>
<a id="411" class="Keyword">import</a> <a id="418" href="Categories.Category.Construction.Core.html" class="Module">Categories.Category.Construction.Core</a> <a id="456" class="Symbol">as</a> <a id="459" class="Module">Core</a>
<a id="464" class="Keyword">open</a> <a id="469" class="Keyword">import</a> <a id="476" href="Categories.Functor.html" class="Module">Categories.Functor</a> <a id="495" class="Keyword">renaming</a> <a id="504" class="Symbol">(</a><a id="505" href="Categories.Functor.html#349" class="Function">id</a> <a id="508" class="Symbol">to</a> <a id="511" class="Function">idF</a><a id="514" class="Symbol">)</a>
<a id="516" class="Keyword">open</a> <a id="521" class="Keyword">import</a> <a id="528" href="Categories.Functor.Bifunctor.html" class="Module">Categories.Functor.Bifunctor</a> <a id="557" class="Keyword">using</a> <a id="563" class="Symbol">(</a><a id="564" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a><a id="573" class="Symbol">;</a> <a id="575" href="Categories.Functor.Bifunctor.html#874" class="Function">appˡ</a><a id="579" class="Symbol">;</a> <a id="581" href="Categories.Functor.Bifunctor.html#938" class="Function">appʳ</a><a id="585" class="Symbol">)</a>
<a id="587" class="Keyword">open</a> <a id="592" class="Keyword">import</a> <a id="599" href="Categories.Functor.Properties.html" class="Module">Categories.Functor.Properties</a> <a id="629" class="Keyword">using</a> <a id="635" class="Symbol">(</a><a id="636" href="Categories.Functor.Properties.html#3246" class="Function Operator">[_]-resp-≅</a><a id="646" class="Symbol">)</a>
<a id="648" class="Keyword">open</a> <a id="653" class="Keyword">import</a> <a id="660" href="Categories.NaturalTransformation.html" class="Module">Categories.NaturalTransformation</a> <a id="693" class="Keyword">renaming</a> <a id="702" class="Symbol">(</a><a id="703" href="Categories.NaturalTransformation.Core.html#2132" class="Function">id</a> <a id="706" class="Symbol">to</a> <a id="709" class="Function">idN</a><a id="712" class="Symbol">)</a>
<a id="714" class="Keyword">open</a> <a id="719" class="Keyword">import</a> <a id="726" href="Categories.NaturalTransformation.NaturalIsomorphism.html" class="Module">Categories.NaturalTransformation.NaturalIsomorphism</a>
<a id="780" class="Keyword">hiding</a> <a id="787" class="Symbol">(</a><a id="788" href="Categories.NaturalTransformation.NaturalIsomorphism.html#6216" class="Function">unitorˡ</a><a id="795" class="Symbol">;</a> <a id="797" href="Categories.NaturalTransformation.NaturalIsomorphism.html#6312" class="Function">unitorʳ</a><a id="804" class="Symbol">;</a> <a id="806" href="Categories.NaturalTransformation.NaturalIsomorphism.html#7073" class="Function">associator</a><a id="816" class="Symbol">;</a> <a id="818" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator">_≃_</a><a id="821" class="Symbol">)</a>
<a id="824" class="Keyword">open</a> <a id="829" class="Keyword">import</a> <a id="836" href="Categories.Morphism.Isomorphism.html" class="Module">Categories.Morphism.Isomorphism</a> <a id="868" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="870" class="Keyword">using</a> <a id="876" class="Symbol">(</a><a id="877" href="Categories.Morphism.Isomorphism.html#6847" class="Function">lift-triangle</a><a id="891" class="Symbol">;</a> <a id="893" href="Categories.Morphism.Isomorphism.html#7109" class="Function">lift-pentagon</a><a id="907" class="Symbol">)</a>
<a id="909" class="Keyword">open</a> <a id="914" class="Keyword">import</a> <a id="921" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="951" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="954" class="Keyword">private</a>
<a id="964" class="Keyword">module</a> <a id="C"></a><a id="971" href="Categories.Category.Monoidal.Utilities.html#971" class="Module">C</a> <a id="973" class="Symbol">=</a> <a id="975" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="984" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="987" class="Keyword">open</a> <a id="992" href="Categories.Category.Monoidal.Utilities.html#971" class="Module">C</a> <a id="994" class="Keyword">hiding</a> <a id="1001" class="Symbol">(</a><a id="1002" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="1011" class="Symbol">;</a> <a id="1013" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="1022" class="Symbol">;</a> <a id="1024" href="Categories.Category.Core.html#715" class="Function">assoc</a><a id="1029" class="Symbol">)</a>
<a id="1031" class="Keyword">open</a> <a id="1036" href="Categories.Category.html#1298" class="Module">Commutation</a> <a id="1048" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="1050" class="Keyword">open</a> <a id="1055" href="Categories.Category.Construction.Core.html#1314" class="Module">Core.Shorthands</a> <a id="1071" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="1074" class="Keyword">private</a>
<a id="1084" class="Keyword">variable</a>
<a id="1097" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a> <a id="1099" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a> <a id="1101" href="Categories.Category.Monoidal.Utilities.html#1101" class="Generalizable">Z</a> <a id="1103" href="Categories.Category.Monoidal.Utilities.html#1103" class="Generalizable">W</a> <a id="1105" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a> <a id="1107" href="Categories.Category.Monoidal.Utilities.html#1107" class="Generalizable">B</a> <a id="1109" class="Symbol">:</a> <a id="1111" href="Categories.Category.Core.html#559" class="Function">Obj</a>
<a id="1119" href="Categories.Category.Monoidal.Utilities.html#1119" class="Generalizable">f</a> <a id="1121" href="Categories.Category.Monoidal.Utilities.html#1121" class="Generalizable">g</a> <a id="1123" href="Categories.Category.Monoidal.Utilities.html#1123" class="Generalizable">h</a> <a id="1125" href="Categories.Category.Monoidal.Utilities.html#1125" class="Generalizable">i</a> <a id="1127" href="Categories.Category.Monoidal.Utilities.html#1127" class="Generalizable">a</a> <a id="1129" href="Categories.Category.Monoidal.Utilities.html#1129" class="Generalizable">b</a> <a id="1131" class="Symbol">:</a> <a id="1133" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a> <a id="1135" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="1137" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a>
<a id="1140" class="Keyword">open</a> <a id="1145" href="Categories.Category.Monoidal.Core.html#1287" class="Module">Monoidal</a> <a id="1154" href="Categories.Category.Monoidal.Utilities.html#246" class="Bound">M</a>
<a id="1157" class="Comment">-- for exporting, it makes sense to use the above long names, but for</a>
<a id="1227" class="Comment">-- internal consumption, the traditional (short!) categorical names are more</a>
<a id="1304" class="Comment">-- convenient. However, they are not symmetric, even though the concepts are, so</a>
<a id="1385" class="Comment">-- we&#39;ll use ⇒ and ⇐ arrows to indicate that</a>
<a id="1431" class="Keyword">module</a> <a id="Shorthands"></a><a id="1438" href="Categories.Category.Monoidal.Utilities.html#1438" class="Module">Shorthands</a> <a id="1449" class="Keyword">where</a>
<a id="Shorthands.λ⇒"></a><a id="1458" href="Categories.Category.Monoidal.Utilities.html#1458" class="Function">λ⇒</a> <a id="1461" class="Symbol">=</a> <a id="1463" href="Categories.Morphism.html#2006" class="Function">unitorˡ.from</a>
<a id="Shorthands.λ⇐"></a><a id="1478" href="Categories.Category.Monoidal.Utilities.html#1478" class="Function">λ⇐</a> <a id="1481" class="Symbol">=</a> <a id="1483" href="Categories.Morphism.html#2023" class="Function">unitorˡ.to</a>
<a id="Shorthands.ρ⇒"></a><a id="1496" href="Categories.Category.Monoidal.Utilities.html#1496" class="Function">ρ⇒</a> <a id="1499" class="Symbol">=</a> <a id="1501" href="Categories.Morphism.html#2006" class="Function">unitorʳ.from</a>
<a id="Shorthands.ρ⇐"></a><a id="1516" href="Categories.Category.Monoidal.Utilities.html#1516" class="Function">ρ⇐</a> <a id="1519" class="Symbol">=</a> <a id="1521" href="Categories.Morphism.html#2023" class="Function">unitorʳ.to</a>
<a id="1534" class="Comment">-- eta expansion fixes a problem in 2.6.1, will be reported</a>
<a id="Shorthands.α⇒"></a><a id="1596" href="Categories.Category.Monoidal.Utilities.html#1596" class="Function">α⇒</a> <a id="1599" class="Symbol">=</a> <a id="1601" class="Symbol">λ</a> <a id="1603" class="Symbol">{</a><a id="1604" href="Categories.Category.Monoidal.Utilities.html#1604" class="Bound">X</a><a id="1605" class="Symbol">}</a> <a id="1607" class="Symbol">{</a><a id="1608" href="Categories.Category.Monoidal.Utilities.html#1608" class="Bound">Y</a><a id="1609" class="Symbol">}</a> <a id="1611" class="Symbol">{</a><a id="1612" href="Categories.Category.Monoidal.Utilities.html#1612" class="Bound">Z</a><a id="1613" class="Symbol">}</a> <a id="1615" class="Symbol"></a> <a id="1617" href="Categories.Morphism.html#2006" class="Function">associator.from</a> <a id="1633" class="Symbol">{</a><a id="1634" href="Categories.Category.Monoidal.Utilities.html#1604" class="Bound">X</a><a id="1635" class="Symbol">}</a> <a id="1637" class="Symbol">{</a><a id="1638" href="Categories.Category.Monoidal.Utilities.html#1608" class="Bound">Y</a><a id="1639" class="Symbol">}</a> <a id="1641" class="Symbol">{</a><a id="1642" href="Categories.Category.Monoidal.Utilities.html#1612" class="Bound">Z</a><a id="1643" class="Symbol">}</a>
<a id="Shorthands.α⇐"></a><a id="1647" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a> <a id="1650" class="Symbol">=</a> <a id="1652" class="Symbol">λ</a> <a id="1654" class="Symbol">{</a><a id="1655" href="Categories.Category.Monoidal.Utilities.html#1655" class="Bound">X</a><a id="1656" class="Symbol">}</a> <a id="1658" class="Symbol">{</a><a id="1659" href="Categories.Category.Monoidal.Utilities.html#1659" class="Bound">Y</a><a id="1660" class="Symbol">}</a> <a id="1662" class="Symbol">{</a><a id="1663" href="Categories.Category.Monoidal.Utilities.html#1663" class="Bound">Z</a><a id="1664" class="Symbol">}</a> <a id="1666" class="Symbol"></a> <a id="1668" href="Categories.Morphism.html#2023" class="Function">associator.to</a> <a id="1682" class="Symbol">{</a><a id="1683" href="Categories.Category.Monoidal.Utilities.html#1655" class="Bound">X</a><a id="1684" class="Symbol">}</a> <a id="1686" class="Symbol">{</a><a id="1687" href="Categories.Category.Monoidal.Utilities.html#1659" class="Bound">Y</a><a id="1688" class="Symbol">}</a> <a id="1690" class="Symbol">{</a><a id="1691" href="Categories.Category.Monoidal.Utilities.html#1663" class="Bound">Z</a><a id="1692" class="Symbol">}</a>
<a id="1695" class="Keyword">open</a> <a id="1700" href="Categories.Category.Monoidal.Utilities.html#1438" class="Module">Shorthands</a>
<a id="1712" class="Keyword">private</a>
<a id="[x⊗y]⊗z"></a><a id="1722" href="Categories.Category.Monoidal.Utilities.html#1722" class="Function">[x⊗y]⊗z</a> <a id="1730" class="Symbol">:</a> <a id="1732" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="1742" class="Symbol">(</a><a id="1743" href="Categories.Category.Product.html#745" class="Function">Product</a> <a id="1751" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="1753" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a><a id="1754" class="Symbol">)</a> <a id="1756" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="1758" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="1762" href="Categories.Category.Monoidal.Utilities.html#1722" class="Function">[x⊗y]⊗z</a> <a id="1770" class="Symbol">=</a> <a id="1772" href="Categories.Category.Monoidal.Core.html#1355" class="Field"></a> <a id="1774" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="1777" class="Symbol">(</a><a id="1778" href="Categories.Category.Monoidal.Core.html#1355" class="Field"></a> <a id="1780" href="Categories.Category.Product.html#1962" class="Function Operator"></a> <a id="1782" href="Categories.Category.Monoidal.Utilities.html#511" class="Function">idF</a><a id="1785" class="Symbol">)</a>
<a id="1790" class="Comment">-- note how this one needs re-association to typecheck (i.e. be correct)</a>
<a id="x⊗[y⊗z]"></a><a id="1865" href="Categories.Category.Monoidal.Utilities.html#1865" class="Function">x⊗[y⊗z]</a> <a id="1873" class="Symbol">:</a> <a id="1875" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="1885" class="Symbol">(</a><a id="1886" href="Categories.Category.Product.html#745" class="Function">Product</a> <a id="1894" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="1896" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a><a id="1897" class="Symbol">)</a> <a id="1899" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a> <a id="1901" href="Categories.Category.Monoidal.Utilities.html#225" class="Bound">C</a>
<a id="1905" href="Categories.Category.Monoidal.Utilities.html#1865" class="Function">x⊗[y⊗z]</a> <a id="1913" class="Symbol">=</a> <a id="1915" href="Categories.Category.Monoidal.Core.html#1355" class="Field"></a> <a id="1917" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="1920" class="Symbol">(</a><a id="1921" href="Categories.Category.Monoidal.Utilities.html#511" class="Function">idF</a> <a id="1925" href="Categories.Category.Product.html#1962" class="Function Operator"></a> <a id="1927" href="Categories.Category.Monoidal.Core.html#1355" class="Field"></a><a id="1928" class="Symbol">)</a> <a id="1930" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="1933" href="Categories.Category.Product.html#4844" class="Function">assocˡ</a> <a id="1940" class="Symbol">_</a> <a id="1942" class="Symbol">_</a> <a id="1944" class="Symbol">_</a>
<a id="unitor-coherenceʳ"></a><a id="1947" href="Categories.Category.Monoidal.Utilities.html#1947" class="Function">unitor-coherenceʳ</a> <a id="1965" class="Symbol">:</a> <a id="1967" href="Categories.Category.html#1379" class="Function Operator">[</a> <a id="1969" class="Symbol">(</a><a id="1970" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a> <a id="1972" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="1975" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a><a id="1979" class="Symbol">)</a> <a id="1981" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="1984" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="1989" href="Categories.Category.html#1379" class="Function Operator"></a> <a id="1991" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a> <a id="1993" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="1996" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="2001" href="Categories.Category.html#1379" class="Function Operator">]⟨</a> <a id="2004" href="Categories.Category.Monoidal.Utilities.html#1496" class="Function">ρ⇒</a> <a id="2007" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="2010" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="2015" href="Categories.Category.html#1379" class="Function Operator"></a> <a id="2017" href="Categories.Category.Monoidal.Utilities.html#1496" class="Function">ρ⇒</a> <a id="2020" href="Categories.Category.html#1379" class="Function Operator"></a>
<a id="2022" href="Categories.Category.Monoidal.Utilities.html#1947" class="Function">unitor-coherenceʳ</a> <a id="2040" class="Symbol">=</a> <a id="2042" href="Categories.Morphism.Reasoning.Iso.html#1691" class="Function">cancel-fromˡ</a> <a id="2055" href="Categories.Category.Monoidal.Core.html#1731" class="Field">unitorʳ</a> <a id="2063" href="Categories.Category.Monoidal.Core.html#2647" class="Field">unitorʳ-commute-from</a>
<a id="unitor-coherenceˡ"></a><a id="2085" href="Categories.Category.Monoidal.Utilities.html#2085" class="Function">unitor-coherenceˡ</a> <a id="2103" class="Symbol">:</a> <a id="2105" href="Categories.Category.html#1379" class="Function Operator">[</a> <a id="2107" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="2112" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="2115" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="2120" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="2123" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a> <a id="2125" href="Categories.Category.html#1379" class="Function Operator"></a> <a id="2127" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="2132" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="2135" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a> <a id="2137" href="Categories.Category.html#1379" class="Function Operator">]⟨</a> <a id="2140" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="2145" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="2148" href="Categories.Category.Monoidal.Utilities.html#1458" class="Function">λ⇒</a> <a id="2151" href="Categories.Category.html#1379" class="Function Operator"></a> <a id="2153" href="Categories.Category.Monoidal.Utilities.html#1458" class="Function">λ⇒</a> <a id="2156" href="Categories.Category.html#1379" class="Function Operator"></a>
<a id="2158" href="Categories.Category.Monoidal.Utilities.html#2085" class="Function">unitor-coherenceˡ</a> <a id="2176" class="Symbol">=</a> <a id="2178" href="Categories.Morphism.Reasoning.Iso.html#1691" class="Function">cancel-fromˡ</a> <a id="2191" href="Categories.Category.Monoidal.Core.html#1700" class="Field">unitorˡ</a> <a id="2199" href="Categories.Category.Monoidal.Core.html#2517" class="Field">unitorˡ-commute-from</a>
<a id="2221" class="Comment">-- All the implicits below can be inferred, but being explicit is clearer</a>
<a id="unitorˡ-naturalIsomorphism"></a><a id="2295" href="Categories.Category.Monoidal.Utilities.html#2295" class="Function">unitorˡ-naturalIsomorphism</a> <a id="2322" class="Symbol">:</a> <a id="2324" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a> <a id="2343" class="Symbol">(</a><a id="2344" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a> <a id="2349" href="Categories.Category.Monoidal.Core.html#1600" class="Function Operator">⊗-</a><a id="2351" class="Symbol">)</a> <a id="2353" href="Categories.Category.Monoidal.Utilities.html#511" class="Function">idF</a>
<a id="2357" href="Categories.Category.Monoidal.Utilities.html#2295" class="Function">unitorˡ-naturalIsomorphism</a> <a id="2384" class="Symbol">=</a> <a id="2386" class="Keyword">record</a>
<a id="2395" class="Symbol">{</a> <a id="2397" href="Categories.NaturalTransformation.NaturalIsomorphism.html#891" class="Field">F⇒G</a> <a id="2401" class="Symbol">=</a> <a id="2403" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2412" class="Keyword">record</a>
<a id="2423" class="Symbol">{</a> <a id="2425" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2433" class="Symbol">=</a> <a id="2435" class="Symbol">λ</a> <a id="2437" href="Categories.Category.Monoidal.Utilities.html#2437" class="Bound">X</a> <a id="2439" class="Symbol"></a> <a id="2441" href="Categories.Category.Monoidal.Utilities.html#1458" class="Function">λ⇒</a> <a id="2444" class="Symbol">{</a><a id="2445" href="Categories.Category.Monoidal.Utilities.html#2437" class="Bound">X</a><a id="2446" class="Symbol">}</a>
<a id="2452" class="Symbol">;</a> <a id="2454" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2462" class="Symbol">=</a> <a id="2464" class="Symbol">λ</a> <a id="2466" href="Categories.Category.Monoidal.Utilities.html#2466" class="Bound">f</a> <a id="2468" class="Symbol"></a> <a id="2470" href="Categories.Category.Monoidal.Core.html#2517" class="Field">unitorˡ-commute-from</a> <a id="2491" class="Symbol">{</a><a id="2492" class="Argument">f</a> <a id="2494" class="Symbol">=</a> <a id="2496" href="Categories.Category.Monoidal.Utilities.html#2466" class="Bound">f</a><a id="2497" class="Symbol">}</a>
<a id="2503" class="Symbol">}</a>
<a id="2507" class="Symbol">;</a> <a id="2509" href="Categories.NaturalTransformation.NaturalIsomorphism.html#927" class="Field">F⇐G</a> <a id="2513" class="Symbol">=</a> <a id="2515" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2524" class="Keyword">record</a>
<a id="2535" class="Symbol">{</a> <a id="2537" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2545" class="Symbol">=</a> <a id="2547" class="Symbol">λ</a> <a id="2549" href="Categories.Category.Monoidal.Utilities.html#2549" class="Bound">X</a> <a id="2551" class="Symbol"></a> <a id="2553" href="Categories.Category.Monoidal.Utilities.html#1478" class="Function">λ⇐</a> <a id="2556" class="Symbol">{</a><a id="2557" href="Categories.Category.Monoidal.Utilities.html#2549" class="Bound">X</a><a id="2558" class="Symbol">}</a>
<a id="2564" class="Symbol">;</a> <a id="2566" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2574" class="Symbol">=</a> <a id="2576" class="Symbol">λ</a> <a id="2578" href="Categories.Category.Monoidal.Utilities.html#2578" class="Bound">f</a> <a id="2580" class="Symbol"></a> <a id="2582" href="Categories.Category.Monoidal.Core.html#2582" class="Field">unitorˡ-commute-to</a> <a id="2601" class="Symbol">{</a><a id="2602" class="Argument">f</a> <a id="2604" class="Symbol">=</a> <a id="2606" href="Categories.Category.Monoidal.Utilities.html#2578" class="Bound">f</a><a id="2607" class="Symbol">}</a>
<a id="2613" class="Symbol">}</a>
<a id="2617" class="Symbol">;</a> <a id="2619" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="2623" class="Symbol">=</a> <a id="2625" class="Symbol">λ</a> <a id="2627" href="Categories.Category.Monoidal.Utilities.html#2627" class="Bound">X</a> <a id="2629" class="Symbol"></a> <a id="2632" href="Categories.Morphism.html#2040" class="Function">unitorˡ.iso</a> <a id="2644" class="Symbol">{</a><a id="2645" href="Categories.Category.Monoidal.Utilities.html#2627" class="Bound">X</a><a id="2646" class="Symbol">}</a>
<a id="2650" class="Symbol">}</a>
<a id="unitorʳ-naturalIsomorphism"></a><a id="2653" href="Categories.Category.Monoidal.Utilities.html#2653" class="Function">unitorʳ-naturalIsomorphism</a> <a id="2680" class="Symbol">:</a> <a id="2682" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a> <a id="2701" class="Symbol">(</a><a id="2702" href="Categories.Category.Monoidal.Core.html#1645" class="Function Operator">-⊗</a> <a id="2705" href="Categories.Category.Monoidal.Core.html#1380" class="Field">unit</a><a id="2709" class="Symbol">)</a> <a id="2711" href="Categories.Category.Monoidal.Utilities.html#511" class="Function">idF</a>
<a id="2715" href="Categories.Category.Monoidal.Utilities.html#2653" class="Function">unitorʳ-naturalIsomorphism</a> <a id="2742" class="Symbol">=</a> <a id="2744" class="Keyword">record</a>
<a id="2753" class="Symbol">{</a> <a id="2755" href="Categories.NaturalTransformation.NaturalIsomorphism.html#891" class="Field">F⇒G</a> <a id="2759" class="Symbol">=</a> <a id="2761" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2770" class="Keyword">record</a>
<a id="2781" class="Symbol">{</a> <a id="2783" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2791" class="Symbol">=</a> <a id="2793" class="Symbol">λ</a> <a id="2795" href="Categories.Category.Monoidal.Utilities.html#2795" class="Bound">X</a> <a id="2797" class="Symbol"></a> <a id="2799" href="Categories.Category.Monoidal.Utilities.html#1496" class="Function">ρ⇒</a> <a id="2802" class="Symbol">{</a><a id="2803" href="Categories.Category.Monoidal.Utilities.html#2795" class="Bound">X</a><a id="2804" class="Symbol">}</a>
<a id="2810" class="Symbol">;</a> <a id="2812" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2820" class="Symbol">=</a> <a id="2822" class="Symbol">λ</a> <a id="2824" href="Categories.Category.Monoidal.Utilities.html#2824" class="Bound">f</a> <a id="2826" class="Symbol"></a> <a id="2828" href="Categories.Category.Monoidal.Core.html#2647" class="Field">unitorʳ-commute-from</a> <a id="2849" class="Symbol">{</a><a id="2850" class="Argument">f</a> <a id="2852" class="Symbol">=</a> <a id="2854" href="Categories.Category.Monoidal.Utilities.html#2824" class="Bound">f</a><a id="2855" class="Symbol">}</a>
<a id="2861" class="Symbol">}</a>
<a id="2865" class="Symbol">;</a> <a id="2867" href="Categories.NaturalTransformation.NaturalIsomorphism.html#927" class="Field">F⇐G</a> <a id="2871" class="Symbol">=</a> <a id="2873" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2882" class="Keyword">record</a>
<a id="2893" class="Symbol">{</a> <a id="2895" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2903" class="Symbol">=</a> <a id="2905" class="Symbol">λ</a> <a id="2907" href="Categories.Category.Monoidal.Utilities.html#2907" class="Bound">X</a> <a id="2909" class="Symbol"></a> <a id="2911" href="Categories.Category.Monoidal.Utilities.html#1516" class="Function">ρ⇐</a> <a id="2914" class="Symbol">{</a><a id="2915" href="Categories.Category.Monoidal.Utilities.html#2907" class="Bound">X</a><a id="2916" class="Symbol">}</a>
<a id="2922" class="Symbol">;</a> <a id="2924" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2932" class="Symbol">=</a> <a id="2934" class="Symbol">λ</a> <a id="2936" href="Categories.Category.Monoidal.Utilities.html#2936" class="Bound">f</a> <a id="2938" class="Symbol"></a> <a id="2940" href="Categories.Category.Monoidal.Core.html#2712" class="Field">unitorʳ-commute-to</a> <a id="2959" class="Symbol">{</a><a id="2960" class="Argument">f</a> <a id="2962" class="Symbol">=</a> <a id="2964" href="Categories.Category.Monoidal.Utilities.html#2936" class="Bound">f</a><a id="2965" class="Symbol">}</a>
<a id="2971" class="Symbol">}</a>
<a id="2975" class="Symbol">;</a> <a id="2977" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="2981" class="Symbol">=</a> <a id="2983" class="Symbol">λ</a> <a id="2985" href="Categories.Category.Monoidal.Utilities.html#2985" class="Bound">X</a> <a id="2987" class="Symbol"></a> <a id="2989" href="Categories.Morphism.html#2040" class="Function">unitorʳ.iso</a> <a id="3001" class="Symbol">{</a><a id="3002" href="Categories.Category.Monoidal.Utilities.html#2985" class="Bound">X</a><a id="3003" class="Symbol">}</a>
<a id="3007" class="Symbol">}</a>
<a id="3010" class="Comment">-- skipping the explicit arguments here, it does not increase understandability</a>
<a id="associator-naturalIsomorphism"></a><a id="3090" href="Categories.Category.Monoidal.Utilities.html#3090" class="Function">associator-naturalIsomorphism</a> <a id="3120" class="Symbol">:</a> <a id="3122" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a> <a id="3141" href="Categories.Category.Monoidal.Utilities.html#1722" class="Function">[x⊗y]⊗z</a> <a id="3149" href="Categories.Category.Monoidal.Utilities.html#1865" class="Function">x⊗[y⊗z]</a>
<a id="3157" href="Categories.Category.Monoidal.Utilities.html#3090" class="Function">associator-naturalIsomorphism</a> <a id="3187" class="Symbol">=</a> <a id="3189" class="Keyword">record</a>
<a id="3198" class="Symbol">{</a> <a id="3200" href="Categories.NaturalTransformation.NaturalIsomorphism.html#891" class="Field">F⇒G</a> <a id="3204" class="Symbol">=</a> <a id="3206" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="3215" class="Keyword">record</a>
<a id="3226" class="Symbol">{</a> <a id="3228" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="3236" class="Symbol">=</a> <a id="3238" class="Symbol">λ</a> <a id="3240" class="Symbol">{</a> <a id="3242" class="Symbol">((</a><a id="3244" href="Categories.Category.Monoidal.Utilities.html#3244" class="Bound">X</a> <a id="3246" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3248" href="Categories.Category.Monoidal.Utilities.html#3248" class="Bound">Y</a><a id="3249" class="Symbol">)</a> <a id="3251" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3253" href="Categories.Category.Monoidal.Utilities.html#3253" class="Bound">Z</a><a id="3254" class="Symbol">)</a> <a id="3256" class="Symbol"></a> <a id="3258" href="Categories.Category.Monoidal.Utilities.html#1596" class="Function">α⇒</a> <a id="3261" class="Symbol">{</a><a id="3262" href="Categories.Category.Monoidal.Utilities.html#3244" class="Bound">X</a><a id="3263" class="Symbol">}</a> <a id="3265" class="Symbol">{</a><a id="3266" href="Categories.Category.Monoidal.Utilities.html#3248" class="Bound">Y</a><a id="3267" class="Symbol">}</a> <a id="3269" class="Symbol">{</a><a id="3270" href="Categories.Category.Monoidal.Utilities.html#3253" class="Bound">Z</a><a id="3271" class="Symbol">}}</a>
<a id="3278" class="Symbol">;</a> <a id="3280" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="3288" class="Symbol">=</a> <a id="3290" class="Symbol">λ</a> <a id="3292" href="Categories.Category.Monoidal.Utilities.html#3292" class="Bound">_</a> <a id="3294" class="Symbol"></a> <a id="3296" href="Categories.Category.Monoidal.Core.html#2777" class="Field">assoc-commute-from</a>
<a id="3319" class="Symbol">}</a>
<a id="3323" class="Symbol">;</a> <a id="3325" href="Categories.NaturalTransformation.NaturalIsomorphism.html#927" class="Field">F⇐G</a> <a id="3329" class="Symbol">=</a> <a id="3331" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="3340" class="Keyword">record</a>
<a id="3351" class="Symbol">{</a> <a id="3353" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="3361" class="Symbol">=</a> <a id="3363" class="Symbol">λ</a> <a id="3365" href="Categories.Category.Monoidal.Utilities.html#3365" class="Bound">_</a> <a id="3367" class="Symbol"></a> <a id="3369" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a>
<a id="3376" class="Symbol">;</a> <a id="3378" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="3386" class="Symbol">=</a> <a id="3388" class="Symbol">λ</a> <a id="3390" href="Categories.Category.Monoidal.Utilities.html#3390" class="Bound">_</a> <a id="3392" class="Symbol"></a> <a id="3394" href="Categories.Category.Monoidal.Core.html#2860" class="Field">assoc-commute-to</a>
<a id="3415" class="Symbol">}</a>
<a id="3419" class="Symbol">;</a> <a id="3421" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="3425" class="Symbol">=</a> <a id="3427" class="Symbol">λ</a> <a id="3429" href="Categories.Category.Monoidal.Utilities.html#3429" class="Bound">_</a> <a id="3431" class="Symbol"></a> <a id="3433" href="Categories.Morphism.html#2040" class="Function">associator.iso</a>
<a id="3450" class="Symbol">}</a>
<a id="3453" class="Keyword">module</a> <a id="unitorˡ-natural"></a><a id="3460" href="Categories.Category.Monoidal.Utilities.html#3460" class="Module">unitorˡ-natural</a> <a id="3476" class="Symbol">=</a> <a id="3478" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a> <a id="3497" href="Categories.Category.Monoidal.Utilities.html#2295" class="Function">unitorˡ-naturalIsomorphism</a>
<a id="3524" class="Keyword">module</a> <a id="unitorʳ-natural"></a><a id="3531" href="Categories.Category.Monoidal.Utilities.html#3531" class="Module">unitorʳ-natural</a> <a id="3547" class="Symbol">=</a> <a id="3549" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a> <a id="3568" href="Categories.Category.Monoidal.Utilities.html#2653" class="Function">unitorʳ-naturalIsomorphism</a>
<a id="3595" class="Keyword">module</a> <a id="associator-natural"></a><a id="3602" href="Categories.Category.Monoidal.Utilities.html#3602" class="Module">associator-natural</a> <a id="3621" class="Symbol">=</a> <a id="3623" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a> <a id="3642" href="Categories.Category.Monoidal.Utilities.html#3090" class="Function">associator-naturalIsomorphism</a>
<a id="3673" class="Keyword">infixr</a> <a id="3680" class="Number">10</a> <a id="3683" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">_⊗ᵢ_</a>
<a id="_⊗ᵢ_"></a><a id="3689" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">_⊗ᵢ_</a> <a id="3694" class="Symbol">:</a> <a id="3696" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a> <a id="3698" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="3700" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a> <a id="3702" class="Symbol"></a> <a id="3704" href="Categories.Category.Monoidal.Utilities.html#1101" class="Generalizable">Z</a> <a id="3706" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="3708" href="Categories.Category.Monoidal.Utilities.html#1103" class="Generalizable">W</a> <a id="3710" class="Symbol"></a> <a id="3712" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a> <a id="3714" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="3717" href="Categories.Category.Monoidal.Utilities.html#1101" class="Generalizable">Z</a> <a id="3719" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="3721" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a> <a id="3723" href="Categories.Category.Monoidal.Core.html#1435" class="Function Operator">⊗₀</a> <a id="3726" href="Categories.Category.Monoidal.Utilities.html#1103" class="Generalizable">W</a>
<a id="3728" href="Categories.Category.Monoidal.Utilities.html#3728" class="Bound">f</a> <a id="3730" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="3733" href="Categories.Category.Monoidal.Utilities.html#3733" class="Bound">g</a> <a id="3735" class="Symbol">=</a> <a id="3737" href="Categories.Functor.Properties.html#3246" class="Function Operator">[</a> <a id="3739" href="Categories.Category.Monoidal.Core.html#1355" class="Field"></a> <a id="3741" href="Categories.Functor.Properties.html#3246" class="Function Operator">]-resp-≅</a> <a id="3750" class="Keyword">record</a>
<a id="3759" class="Symbol">{</a> <a id="3761" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="3766" class="Symbol">=</a> <a id="3768" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="3773" href="Categories.Category.Monoidal.Utilities.html#3728" class="Bound">f</a> <a id="3775" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3777" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="3782" href="Categories.Category.Monoidal.Utilities.html#3733" class="Bound">g</a>
<a id="3786" class="Symbol">;</a> <a id="3788" href="Categories.Morphism.html#2023" class="Field">to</a> <a id="3793" class="Symbol">=</a> <a id="3795" href="Categories.Morphism.html#2023" class="Field">to</a> <a id="3798" href="Categories.Category.Monoidal.Utilities.html#3728" class="Bound">f</a> <a id="3800" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3802" href="Categories.Morphism.html#2023" class="Field">to</a> <a id="3805" href="Categories.Category.Monoidal.Utilities.html#3733" class="Bound">g</a>
<a id="3809" class="Symbol">;</a> <a id="3811" href="Categories.Morphism.html#2040" class="Field">iso</a> <a id="3816" class="Symbol">=</a> <a id="3818" class="Keyword">record</a>
<a id="3829" class="Symbol">{</a> <a id="3831" href="Categories.Morphism.html#1586" class="Field">isoˡ</a> <a id="3836" class="Symbol">=</a> <a id="3838" href="Categories.Morphism.html#1586" class="Function">isoˡ</a> <a id="3843" href="Categories.Category.Monoidal.Utilities.html#3728" class="Bound">f</a> <a id="3845" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3847" href="Categories.Morphism.html#1586" class="Function">isoˡ</a> <a id="3852" href="Categories.Category.Monoidal.Utilities.html#3733" class="Bound">g</a>
<a id="3858" class="Symbol">;</a> <a id="3860" href="Categories.Morphism.html#1612" class="Field">isoʳ</a> <a id="3865" class="Symbol">=</a> <a id="3867" href="Categories.Morphism.html#1612" class="Function">isoʳ</a> <a id="3872" href="Categories.Category.Monoidal.Utilities.html#3728" class="Bound">f</a> <a id="3874" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3876" href="Categories.Morphism.html#1612" class="Function">isoʳ</a> <a id="3881" href="Categories.Category.Monoidal.Utilities.html#3733" class="Bound">g</a>
<a id="3887" class="Symbol">}</a>
<a id="3891" class="Symbol">}</a>
<a id="triangle-iso"></a><a id="3894" href="Categories.Category.Monoidal.Utilities.html#3894" class="Function">triangle-iso</a> <a id="3907" class="Symbol">:</a> <a id="3909" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="3913" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="3916" href="Categories.Category.Monoidal.Core.html#1700" class="Field">unitorˡ</a> <a id="3924" href="Categories.Category.Core.html#656" class="Function Operator">∘ᵢ</a> <a id="3927" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a> <a id="3938" href="Categories.Category.Core.html#595" class="Function Operator">≈ᵢ</a> <a id="3941" href="Categories.Category.Monoidal.Core.html#1731" class="Field">unitorʳ</a> <a id="3949" class="Symbol">{</a><a id="3950" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a><a id="3951" class="Symbol">}</a> <a id="3953" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="3956" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="3960" class="Symbol">{</a><a id="3961" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a><a id="3962" class="Symbol">}</a>
<a id="3964" href="Categories.Category.Monoidal.Utilities.html#3894" class="Function">triangle-iso</a> <a id="3977" class="Symbol">=</a> <a id="3979" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a> <a id="3981" href="Categories.Category.Monoidal.Core.html#2943" class="Field">triangle</a> <a id="3990" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a>
<a id="triangle-inv"></a><a id="3993" href="Categories.Category.Monoidal.Utilities.html#3993" class="Function">triangle-inv</a> <a id="4006" class="Symbol">:</a> <a id="4008" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a> <a id="4011" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="4013" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4016" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="4019" href="Categories.Category.Monoidal.Utilities.html#1478" class="Function">λ⇐</a> <a id="4022" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="4024" href="Categories.Category.Monoidal.Utilities.html#1516" class="Function">ρ⇐</a> <a id="4027" class="Symbol">{</a><a id="4028" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a><a id="4029" class="Symbol">}</a> <a id="4031" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="4034" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4037" class="Symbol">{</a><a id="4038" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a><a id="4039" class="Symbol">}</a>
<a id="4041" href="Categories.Category.Monoidal.Utilities.html#3993" class="Function">triangle-inv</a> <a id="4054" class="Symbol">=</a> <a id="4056" href="Categories.Morphism.IsoEquiv.html#1858" class="Function">to-≈</a> <a id="4061" href="Categories.Category.Monoidal.Utilities.html#3894" class="Function">triangle-iso</a>
<a id="pentagon-iso"></a><a id="4075" href="Categories.Category.Monoidal.Utilities.html#4075" class="Function">pentagon-iso</a> <a id="4088" class="Symbol">:</a>
<a id="4095" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="4099" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="4102" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a> <a id="4113" href="Categories.Category.Core.html#656" class="Function Operator">∘ᵢ</a> <a id="4116" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a> <a id="4127" href="Categories.Category.Core.html#656" class="Function Operator">∘ᵢ</a> <a id="4130" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a> <a id="4141" class="Symbol">{</a><a id="4142" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a><a id="4143" class="Symbol">}</a> <a id="4145" class="Symbol">{</a><a id="4146" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a><a id="4147" class="Symbol">}</a> <a id="4149" class="Symbol">{</a><a id="4150" href="Categories.Category.Monoidal.Utilities.html#1101" class="Generalizable">Z</a><a id="4151" class="Symbol">}</a> <a id="4153" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="4156" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="4160" class="Symbol">{</a><a id="4161" href="Categories.Category.Monoidal.Utilities.html#1103" class="Generalizable">W</a><a id="4162" class="Symbol">}</a>
<a id="4166" href="Categories.Category.Core.html#595" class="Function Operator">≈ᵢ</a> <a id="4169" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a> <a id="4180" href="Categories.Category.Core.html#656" class="Function Operator">∘ᵢ</a> <a id="4183" href="Categories.Category.Monoidal.Core.html#1762" class="Field">associator</a>
<a id="4194" href="Categories.Category.Monoidal.Utilities.html#4075" class="Function">pentagon-iso</a> <a id="4207" class="Symbol">=</a> <a id="4209" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a> <a id="4211" href="Categories.Category.Monoidal.Core.html#3174" class="Field">pentagon</a> <a id="4220" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a>
<a id="pentagon-inv"></a><a id="4223" href="Categories.Category.Monoidal.Utilities.html#4223" class="Function">pentagon-inv</a> <a id="4236" class="Symbol">:</a> <a id="4238" class="Symbol">(</a><a id="4239" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a> <a id="4242" class="Symbol">{</a><a id="4243" href="Categories.Category.Monoidal.Utilities.html#1097" class="Generalizable">X</a><a id="4244" class="Symbol">}</a> <a id="4246" class="Symbol">{</a><a id="4247" href="Categories.Category.Monoidal.Utilities.html#1099" class="Generalizable">Y</a><a id="4248" class="Symbol">}</a> <a id="4250" class="Symbol">{</a><a id="4251" href="Categories.Category.Monoidal.Utilities.html#1101" class="Generalizable">Z</a><a id="4252" class="Symbol">}</a> <a id="4254" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="4257" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4260" class="Symbol">{</a><a id="4261" href="Categories.Category.Monoidal.Utilities.html#1103" class="Generalizable">W</a><a id="4262" class="Symbol">}</a> <a id="4264" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="4266" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a><a id="4268" class="Symbol">)</a> <a id="4270" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="4272" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4275" href="Categories.Category.Monoidal.Core.html#1536" class="Function Operator">⊗₁</a> <a id="4278" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a> <a id="4281" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="4283" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a> <a id="4286" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="4288" href="Categories.Category.Monoidal.Utilities.html#1647" class="Function">α⇐</a>
<a id="4291" href="Categories.Category.Monoidal.Utilities.html#4223" class="Function">pentagon-inv</a> <a id="4304" class="Symbol">=</a> <a id="4306" href="Categories.Morphism.IsoEquiv.html#1858" class="Function">to-≈</a> <a id="4311" href="Categories.Category.Monoidal.Utilities.html#4075" class="Function">pentagon-iso</a>
<a id="refl⊗refl≃refl"></a><a id="4325" href="Categories.Category.Monoidal.Utilities.html#4325" class="Function">refl⊗refl≃refl</a> <a id="4340" class="Symbol">:</a> <a id="4342" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="4346" class="Symbol">{</a><a id="4347" href="Categories.Category.Monoidal.Utilities.html#1105" class="Generalizable">A</a><a id="4348" class="Symbol">}</a> <a id="4350" href="Categories.Category.Monoidal.Utilities.html#3689" class="Function Operator">⊗ᵢ</a> <a id="4353" href="Categories.Category.Core.html#630" class="Function">idᵢ</a> <a id="4357" class="Symbol">{</a><a id="4358" href="Categories.Category.Monoidal.Utilities.html#1107" class="Generalizable">B</a><a id="4359" class="Symbol">}</a> <a id="4361" href="Categories.Category.Core.html#595" class="Function Operator">≈ᵢ</a> <a id="4364" href="Categories.Category.Core.html#630" class="Function">idᵢ</a>
<a id="4368" href="Categories.Category.Monoidal.Utilities.html#4325" class="Function">refl⊗refl≃refl</a> <a id="4383" class="Symbol">=</a> <a id="4385" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a> <a id="4387" href="Categories.Functor.Core.html#511" class="Function">⊗.identity</a> <a id="4398" href="Categories.Morphism.IsoEquiv.html#1807" class="InductiveConstructor Operator"></a>
</pre></body></html>