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

32 lines
No EOL
12 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.Comonad</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="36" class="Keyword">module</a> <a id="43" href="Categories.Comonad.html" class="Module">Categories.Comonad</a> <a id="62" class="Keyword">where</a>
<a id="69" class="Keyword">open</a> <a id="74" class="Keyword">import</a> <a id="81" href="Level.html" class="Module">Level</a>
<a id="88" class="Keyword">open</a> <a id="93" class="Keyword">import</a> <a id="100" href="Categories.Category.html" class="Module">Categories.Category</a> <a id="120" class="Keyword">using</a> <a id="126" class="Symbol">(</a><a id="127" href="Categories.Category.Core.html#442" class="Record">Category</a><a id="135" class="Symbol">)</a>
<a id="137" class="Keyword">open</a> <a id="142" class="Keyword">import</a> <a id="149" href="Categories.Functor.html" class="Module">Categories.Functor</a> <a id="168" class="Keyword">using</a> <a id="174" class="Symbol">(</a><a id="175" href="Categories.Functor.Core.html#248" class="Record">Functor</a><a id="182" class="Symbol">;</a> <a id="184" href="Categories.Functor.html#283" class="Function">Endofunctor</a><a id="195" class="Symbol">;</a> <a id="197" href="Categories.Functor.html#747" class="Function Operator">_∘F_</a><a id="201" class="Symbol">)</a> <a id="203" class="Keyword">renaming</a> <a id="212" class="Symbol">(</a><a id="213" href="Categories.Functor.html#349" class="Function">id</a> <a id="216" class="Symbol">to</a> <a id="219" class="Function">idF</a><a id="222" class="Symbol">)</a>
<a id="224" class="Keyword">open</a> <a id="229" class="Keyword">import</a> <a id="236" href="Categories.NaturalTransformation.html" class="Module">Categories.NaturalTransformation</a> <a id="269" class="Keyword">renaming</a> <a id="278" class="Symbol">(</a><a id="279" href="Categories.NaturalTransformation.Core.html#2132" class="Function">id</a> <a id="282" class="Symbol">to</a> <a id="285" class="Function">idN</a><a id="288" class="Symbol">)</a>
<a id="290" class="Keyword">open</a> <a id="295" class="Keyword">import</a> <a id="302" href="Categories.NaturalTransformation.NaturalIsomorphism.html" class="Module">Categories.NaturalTransformation.NaturalIsomorphism</a> <a id="354" class="Keyword">hiding</a> <a id="361" class="Symbol">(</a><a id="362" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator">_≃_</a><a id="365" class="Symbol">)</a>
<a id="367" class="Keyword">open</a> <a id="372" class="Keyword">import</a> <a id="379" href="Categories.NaturalTransformation.Equivalence.html" class="Module">Categories.NaturalTransformation.Equivalence</a>
<a id="424" class="Keyword">open</a> <a id="429" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a>
<a id="449" class="Keyword">record</a> <a id="Comonad"></a><a id="456" href="Categories.Comonad.html#456" class="Record">Comonad</a> <a id="464" class="Symbol">{</a><a id="465" href="Categories.Comonad.html#465" class="Bound">o</a> <a id="467" href="Categories.Comonad.html#467" class="Bound"></a> <a id="469" href="Categories.Comonad.html#469" class="Bound">e</a><a id="470" class="Symbol">}</a> <a id="472" class="Symbol">(</a><a id="473" href="Categories.Comonad.html#473" class="Bound">C</a> <a id="475" class="Symbol">:</a> <a id="477" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="486" href="Categories.Comonad.html#465" class="Bound">o</a> <a id="488" href="Categories.Comonad.html#467" class="Bound"></a> <a id="490" href="Categories.Comonad.html#469" class="Bound">e</a><a id="491" class="Symbol">)</a> <a id="493" class="Symbol">:</a> <a id="495" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="499" class="Symbol">(</a><a id="500" href="Categories.Comonad.html#465" class="Bound">o</a> <a id="502" href="Agda.Primitive.html#961" class="Primitive Operator"></a> <a id="504" href="Categories.Comonad.html#467" class="Bound"></a> <a id="506" href="Agda.Primitive.html#961" class="Primitive Operator"></a> <a id="508" href="Categories.Comonad.html#469" class="Bound">e</a><a id="509" class="Symbol">)</a> <a id="511" class="Keyword">where</a>
<a id="519" class="Keyword">field</a>
<a id="Comonad.F"></a><a id="529" href="Categories.Comonad.html#529" class="Field">F</a> <a id="531" class="Symbol">:</a> <a id="533" href="Categories.Functor.html#283" class="Function">Endofunctor</a> <a id="545" href="Categories.Comonad.html#473" class="Bound">C</a>
<a id="Comonad.ε"></a><a id="551" href="Categories.Comonad.html#551" class="Field">ε</a> <a id="553" class="Symbol">:</a> <a id="555" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="577" href="Categories.Comonad.html#529" class="Field">F</a> <a id="579" href="Categories.Comonad.html#219" class="Function">idF</a>
<a id="Comonad.δ"></a><a id="587" href="Categories.Comonad.html#587" class="Field">δ</a> <a id="589" class="Symbol">:</a> <a id="591" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="613" href="Categories.Comonad.html#529" class="Field">F</a> <a id="615" class="Symbol">(</a><a id="616" href="Categories.Comonad.html#529" class="Field">F</a> <a id="618" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="621" href="Categories.Comonad.html#529" class="Field">F</a><a id="622" class="Symbol">)</a>
<a id="627" class="Keyword">module</a> <a id="Comonad.F"></a><a id="634" href="Categories.Comonad.html#634" class="Module">F</a> <a id="636" class="Symbol">=</a> <a id="638" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="646" href="Categories.Comonad.html#529" class="Field">F</a>
<a id="650" class="Keyword">module</a> <a id="Comonad.ε"></a><a id="657" href="Categories.Comonad.html#657" class="Module">ε</a> <a id="659" class="Symbol">=</a> <a id="661" href="Categories.NaturalTransformation.Core.html#466" class="Module">NaturalTransformation</a> <a id="683" href="Categories.Comonad.html#551" class="Field">ε</a>
<a id="687" class="Keyword">module</a> <a id="Comonad.δ"></a><a id="694" href="Categories.Comonad.html#694" class="Module">δ</a> <a id="696" class="Symbol">=</a> <a id="698" href="Categories.NaturalTransformation.Core.html#466" class="Module">NaturalTransformation</a> <a id="720" href="Categories.Comonad.html#587" class="Field">δ</a>
<a id="725" class="Keyword">open</a> <a id="730" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="739" href="Categories.Comonad.html#473" class="Bound">C</a>
<a id="743" class="Keyword">open</a> <a id="748" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="756" href="Categories.Comonad.html#529" class="Field">F</a>
<a id="761" class="Keyword">field</a>
<a id="Comonad.assoc"></a><a id="771" href="Categories.Comonad.html#771" class="Field">assoc</a> <a id="781" class="Symbol">:</a> <a id="783" class="Symbol"></a> <a id="785" class="Symbol">{</a><a id="786" href="Categories.Comonad.html#786" class="Bound">X</a> <a id="788" class="Symbol">:</a> <a id="790" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="793" class="Symbol">}</a> <a id="795" class="Symbol"></a> <a id="797" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="801" class="Symbol">(</a><a id="802" href="Categories.Functor.Core.html#432" class="Function">F₀</a> <a id="805" href="Categories.Comonad.html#786" class="Bound">X</a><a id="806" class="Symbol">)</a> <a id="808" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="810" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="814" href="Categories.Comonad.html#786" class="Bound">X</a> <a id="816" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="818" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="821" class="Symbol">(</a><a id="822" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="826" href="Categories.Comonad.html#786" class="Bound">X</a><a id="827" class="Symbol">)</a> <a id="829" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="831" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="835" href="Categories.Comonad.html#786" class="Bound">X</a>
<a id="Comonad.sym-assoc"></a><a id="841" href="Categories.Comonad.html#841" class="Field">sym-assoc</a> <a id="851" class="Symbol">:</a> <a id="853" class="Symbol"></a> <a id="855" class="Symbol">{</a><a id="856" href="Categories.Comonad.html#856" class="Bound">X</a> <a id="858" class="Symbol">:</a> <a id="860" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="863" class="Symbol">}</a> <a id="865" class="Symbol"></a> <a id="867" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="870" class="Symbol">(</a><a id="871" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="875" href="Categories.Comonad.html#856" class="Bound">X</a><a id="876" class="Symbol">)</a> <a id="878" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="880" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="884" href="Categories.Comonad.html#856" class="Bound">X</a> <a id="886" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="888" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="892" class="Symbol">(</a><a id="893" href="Categories.Functor.Core.html#432" class="Function">F₀</a> <a id="896" href="Categories.Comonad.html#856" class="Bound">X</a><a id="897" class="Symbol">)</a> <a id="899" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="901" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="905" href="Categories.Comonad.html#856" class="Bound">X</a>
<a id="Comonad.identityˡ"></a><a id="911" href="Categories.Comonad.html#911" class="Field">identityˡ</a> <a id="921" class="Symbol">:</a> <a id="923" class="Symbol"></a> <a id="925" class="Symbol">{</a><a id="926" href="Categories.Comonad.html#926" class="Bound">X</a> <a id="928" class="Symbol">:</a> <a id="930" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="933" class="Symbol">}</a> <a id="935" class="Symbol"></a> <a id="937" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="940" class="Symbol">(</a><a id="941" href="Categories.NaturalTransformation.Core.html#783" class="Function">ε.η</a> <a id="945" href="Categories.Comonad.html#926" class="Bound">X</a><a id="946" class="Symbol">)</a> <a id="948" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="950" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="954" href="Categories.Comonad.html#926" class="Bound">X</a> <a id="956" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="958" href="Categories.Category.Core.html#630" class="Function">id</a>
<a id="Comonad.identityʳ"></a><a id="965" href="Categories.Comonad.html#965" class="Field">identityʳ</a> <a id="975" class="Symbol">:</a> <a id="977" class="Symbol"></a> <a id="979" class="Symbol">{</a><a id="980" href="Categories.Comonad.html#980" class="Bound">X</a> <a id="982" class="Symbol">:</a> <a id="984" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="987" class="Symbol">}</a> <a id="989" class="Symbol"></a> <a id="991" href="Categories.NaturalTransformation.Core.html#783" class="Function">ε.η</a> <a id="995" class="Symbol">(</a><a id="996" href="Categories.Functor.Core.html#432" class="Function">F₀</a> <a id="999" href="Categories.Comonad.html#980" class="Bound">X</a><a id="1000" class="Symbol">)</a> <a id="1002" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="1004" href="Categories.NaturalTransformation.Core.html#783" class="Function">δ.η</a> <a id="1008" href="Categories.Comonad.html#980" class="Bound">X</a> <a id="1010" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="1012" href="Categories.Category.Core.html#630" class="Function">id</a>
</pre></body></html>