bsc-leon-vatthauer/public/UniformIterationAlgebras.html

103 lines
31 KiB
HTML
Raw Normal View History

2023-08-19 16:11:22 +02:00
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>UniformIterationAlgebras</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
/* The extra [class] is a hack that increases specificity enough to
override a similar rule in reveal.js */
ul.task-list[class]{list-style: none;}
2023-08-19 16:11:22 +02:00
ul.task-list li input[type="checkbox"] {
font-size: inherit;
2023-08-19 16:11:22 +02:00
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
.display.math{display: block; text-align: center; margin: 0.5rem auto;}
</style>
<link rel="stylesheet" href="Agda.css" />
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<!--
<pre class="Agda"><a id="14" class="Keyword">open</a> <a id="19" class="Keyword">import</a> <a id="26" href="Level.html" class="Module">Level</a>
<a id="32" class="Keyword">open</a> <a id="37" class="Keyword">import</a> <a id="44" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a>
<a id="69" class="Keyword">open</a> <a id="74" class="Keyword">import</a> <a id="81" href="Categories.Category.Extensive.Bundle.html" class="Module">Categories.Category.Extensive.Bundle</a>
<a id="118" class="Keyword">open</a> <a id="123" class="Keyword">import</a> <a id="130" href="Categories.Category.Extensive.html" class="Module">Categories.Category.Extensive</a>
<a id="160" class="Keyword">open</a> <a id="165" class="Keyword">import</a> <a id="172" href="Categories.Category.Cocartesian.html" class="Module">Categories.Category.Cocartesian</a>
<a id="204" class="Keyword">import</a> <a id="211" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="241" class="Symbol">as</a> <a id="244" class="Module">MR</a>
<a id="247" class="Keyword">open</a> <a id="252" class="Keyword">import</a> <a id="259" href="UniformIterationAlgebra.html" class="Module">UniformIterationAlgebra</a>
</pre>-->
<h2 id="summary">Summary</h2>
<p>This file introduces the category of Uniform-Iteration Algebras</p>
<ul class="task-list">
<li><label><input type="checkbox" checked="" /><em>Definition 12</em>
Uniform-Iteration Algebras</label></li>
2023-08-19 16:11:22 +02:00
</ul>
<h2 id="code">Code</h2>
<pre class="Agda"><a id="435" class="Keyword">module</a> <a id="442" href="UniformIterationAlgebras.html" class="Module">UniformIterationAlgebras</a> <a id="467" class="Symbol">{</a><a id="468" href="UniformIterationAlgebras.html#468" class="Bound">o</a> <a id="470" href="UniformIterationAlgebras.html#470" class="Bound"></a> <a id="472" href="UniformIterationAlgebras.html#472" class="Bound">e</a><a id="473" class="Symbol">}</a> <a id="475" class="Symbol">(</a><a id="476" href="UniformIterationAlgebras.html#476" class="Bound">D</a> <a id="478" class="Symbol">:</a> <a id="480" href="Categories.Category.Extensive.Bundle.html#781" class="Record">ExtensiveDistributiveCategory</a> <a id="510" href="UniformIterationAlgebras.html#468" class="Bound">o</a> <a id="512" href="UniformIterationAlgebras.html#470" class="Bound"></a> <a id="514" href="UniformIterationAlgebras.html#472" class="Bound">e</a><a id="515" class="Symbol">)</a> <a id="517" class="Keyword">where</a>
<a id="525" class="Keyword">open</a> <a id="530" href="Categories.Category.Extensive.Bundle.html#781" class="Module">ExtensiveDistributiveCategory</a> <a id="560" href="UniformIterationAlgebras.html#476" class="Bound">D</a> <a id="562" class="Keyword">renaming</a> <a id="571" class="Symbol">(</a><a id="572" href="Categories.Category.Extensive.Bundle.html#859" class="Field">U</a> <a id="574" class="Symbol">to</a> <a id="577" class="Field">C</a><a id="578" class="Symbol">;</a> <a id="580" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="583" class="Symbol">to</a> <a id="586" class="Function">idC</a><a id="589" class="Symbol">)</a>
<a id="593" class="Keyword">open</a> <a id="598" href="Categories.Category.Cocartesian.html#3385" class="Module">Cocartesian</a> <a id="610" class="Symbol">(</a><a id="611" href="Categories.Category.Extensive.html#734" class="Field">Extensive.cocartesian</a> <a id="633" href="Categories.Category.Extensive.Bundle.html#913" class="Field">extensive</a><a id="642" class="Symbol">)</a>
<a id="646" class="Keyword">open</a> <a id="651" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
<a id="666" class="Keyword">open</a> <a id="671" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="674" href="UniformIterationAlgebras.html#577" class="Field">C</a>
<a id="678" class="Keyword">open</a> <a id="683" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
</pre>
<h3 id="definition-12-uniform-iteration-algebras"><em>Definition
12</em>: Uniform-Iteration Algebras</h3>
<pre class="Agda"> <a id="753" class="Comment">-- iteration preversing morphism between two elgot-algebras</a>
<a id="815" class="Keyword">module</a> <a id="822" href="UniformIterationAlgebras.html#822" class="Module">_</a> <a id="824" class="Symbol">(</a><a id="825" href="UniformIterationAlgebras.html#825" class="Bound">E₁</a> <a id="828" href="UniformIterationAlgebras.html#828" class="Bound">E₂</a> <a id="831" class="Symbol">:</a> <a id="833" href="UniformIterationAlgebra.html#1073" class="Record">Uniform-Iteration-Algebra</a> <a id="859" href="UniformIterationAlgebras.html#476" class="Bound">D</a><a id="860" class="Symbol">)</a> <a id="862" class="Keyword">where</a>
<a id="872" class="Keyword">open</a> <a id="877" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="903" href="UniformIterationAlgebras.html#825" class="Bound">E₁</a> <a id="906" class="Keyword">renaming</a> <a id="915" class="Symbol">(</a><a id="916" href="UniformIterationAlgebra.html#724" class="Function Operator">_#</a> <a id="919" class="Symbol">to</a> <a id="922" class="Function Operator">_#₁</a><a id="925" class="Symbol">)</a>
<a id="931" class="Keyword">open</a> <a id="936" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="962" href="UniformIterationAlgebras.html#828" class="Bound">E₂</a> <a id="965" class="Keyword">renaming</a> <a id="974" class="Symbol">(</a><a id="975" href="UniformIterationAlgebra.html#724" class="Function Operator">_#</a> <a id="978" class="Symbol">to</a> <a id="981" class="Function Operator">_#₂</a><a id="984" class="Symbol">;</a> <a id="986" href="UniformIterationAlgebra.html#1139" class="Field">A</a> <a id="988" class="Symbol">to</a> <a id="991" class="Field">B</a><a id="992" class="Symbol">)</a>
<a id="998" class="Keyword">record</a> <a id="1005" href="UniformIterationAlgebras.html#1005" class="Record">Uniform-Iteration-Algebra-Morphism</a> <a id="1040" class="Symbol">:</a> <a id="1042" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="1046" class="Symbol">(</a><a id="1047" href="UniformIterationAlgebras.html#468" class="Bound">o</a> <a id="1049" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1051" href="UniformIterationAlgebras.html#470" class="Bound"></a> <a id="1053" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1055" href="UniformIterationAlgebras.html#472" class="Bound">e</a><a id="1056" class="Symbol">)</a> <a id="1058" class="Keyword">where</a>
<a id="1070" class="Keyword">field</a>
<a id="1084" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="1086" class="Symbol">:</a> <a id="1088" href="UniformIterationAlgebra.html#1139" class="Function">A</a> <a id="1090" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="1092" href="UniformIterationAlgebras.html#991" class="Field">B</a>
<a id="1102" href="UniformIterationAlgebras.html#1102" class="Field">preserves</a> <a id="1112" class="Symbol">:</a> <a id="1114" class="Symbol"></a> <a id="1116" class="Symbol">{</a><a id="1117" href="UniformIterationAlgebras.html#1117" class="Bound">X</a><a id="1118" class="Symbol">}</a> <a id="1120" class="Symbol">{</a><a id="1121" href="UniformIterationAlgebras.html#1121" class="Bound">f</a> <a id="1123" class="Symbol">:</a> <a id="1125" href="UniformIterationAlgebras.html#1117" class="Bound">X</a> <a id="1127" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="1129" href="UniformIterationAlgebra.html#1139" class="Function">A</a> <a id="1131" href="Categories.Category.Cocartesian.html#1549" class="Function Operator">+</a> <a id="1133" href="UniformIterationAlgebras.html#1117" class="Bound">X</a><a id="1134" class="Symbol">}</a> <a id="1136" class="Symbol"></a> <a id="1138" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="1140" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="1142" class="Symbol">(</a><a id="1143" href="UniformIterationAlgebras.html#1121" class="Bound">f</a> <a id="1145" href="UniformIterationAlgebras.html#922" class="Function Operator">#₁</a><a id="1147" class="Symbol">)</a> <a id="1149" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="1151" class="Symbol">((</a><a id="1153" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="1155" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1158" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="1161" class="Symbol">)</a> <a id="1163" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="1165" href="UniformIterationAlgebras.html#1121" class="Bound">f</a><a id="1166" class="Symbol">)</a><a id="1167" href="UniformIterationAlgebras.html#981" class="Function Operator">#₂</a>
<a id="1173" class="Comment">-- the category of uniform-iteration algebras for a given category</a>
<a id="Uniform-Iteration-Algebras"></a><a id="1242" href="UniformIterationAlgebras.html#1242" class="Function">Uniform-Iteration-Algebras</a> <a id="1269" class="Symbol">:</a> <a id="1271" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="1280" class="Symbol">(</a><a id="1281" href="UniformIterationAlgebras.html#468" class="Bound">o</a> <a id="1283" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1285" href="UniformIterationAlgebras.html#470" class="Bound"></a> <a id="1287" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1289" href="UniformIterationAlgebras.html#472" class="Bound">e</a><a id="1290" class="Symbol">)</a> <a id="1292" class="Symbol">(</a><a id="1293" href="UniformIterationAlgebras.html#468" class="Bound">o</a> <a id="1295" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1297" href="UniformIterationAlgebras.html#470" class="Bound"></a> <a id="1299" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="1301" href="UniformIterationAlgebras.html#472" class="Bound">e</a><a id="1302" class="Symbol">)</a> <a id="1304" href="UniformIterationAlgebras.html#472" class="Bound">e</a>
<a id="1308" href="UniformIterationAlgebras.html#1242" class="Function">Uniform-Iteration-Algebras</a> <a id="1335" class="Symbol">=</a> <a id="1337" class="Keyword">record</a>
<a id="1348" class="Symbol">{</a> <a id="1350" href="Categories.Category.Core.html#559" class="Field">Obj</a> <a id="1360" class="Symbol">=</a> <a id="1362" href="UniformIterationAlgebra.html#1073" class="Record">Uniform-Iteration-Algebra</a> <a id="1388" href="UniformIterationAlgebras.html#476" class="Bound">D</a>
<a id="1394" class="Symbol">;</a> <a id="1396" href="Categories.Category.Core.html#575" class="Field Operator">_⇒_</a> <a id="1406" class="Symbol">=</a> <a id="1408" href="UniformIterationAlgebras.html#1005" class="Record">Uniform-Iteration-Algebra-Morphism</a>
<a id="1447" class="Symbol">;</a> <a id="1449" href="Categories.Category.Core.html#595" class="Field Operator">_≈_</a> <a id="1459" class="Symbol">=</a> <a id="1461" class="Symbol">λ</a> <a id="1463" href="UniformIterationAlgebras.html#1463" class="Bound">f</a> <a id="1465" href="UniformIterationAlgebras.html#1465" class="Bound">g</a> <a id="1467" class="Symbol"></a> <a id="1469" href="UniformIterationAlgebras.html#1084" class="Field">Uniform-Iteration-Algebra-Morphism.h</a> <a id="1506" href="UniformIterationAlgebras.html#1463" class="Bound">f</a> <a id="1508" href="Categories.Category.Core.html#595" class="Function Operator"></a> <a id="1510" href="UniformIterationAlgebras.html#1084" class="Field">Uniform-Iteration-Algebra-Morphism.h</a> <a id="1547" href="UniformIterationAlgebras.html#1465" class="Bound">g</a>
<a id="1553" class="Symbol">;</a> <a id="1555" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="1565" class="Symbol">=</a> <a id="1567" class="Symbol">λ</a> <a id="1569" class="Symbol">{</a><a id="1570" href="UniformIterationAlgebras.html#1570" class="Bound">EB</a><a id="1572" class="Symbol">}</a> <a id="1574" class="Symbol"></a> <a id="1576" class="Keyword">let</a> <a id="1580" class="Keyword">open</a> <a id="1585" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="1611" href="UniformIterationAlgebras.html#1570" class="Bound">EB</a> <a id="1614" class="Keyword">in</a>
<a id="1622" class="Keyword">record</a> <a id="1629" class="Symbol">{</a> <a id="1631" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="1633" class="Symbol">=</a> <a id="1635" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="1638" class="Symbol">;</a> <a id="1640" href="UniformIterationAlgebras.html#1102" class="Field">preserves</a> <a id="1650" class="Symbol">=</a> <a id="1652" class="Symbol">λ</a> <a id="1654" class="Symbol">{</a><a id="1655" href="UniformIterationAlgebras.html#1655" class="Bound">X</a> <a id="1657" class="Symbol">:</a> <a id="1659" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="1662" class="Symbol">}</a> <a id="1664" class="Symbol">{</a><a id="1665" href="UniformIterationAlgebras.html#1665" class="Bound">f</a> <a id="1667" class="Symbol">:</a> <a id="1669" href="UniformIterationAlgebras.html#1655" class="Bound">X</a> <a id="1671" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="1673" href="UniformIterationAlgebra.html#1139" class="Field">A</a> <a id="1675" href="Categories.Category.Cocartesian.html#1549" class="Function Operator">+</a> <a id="1677" href="UniformIterationAlgebras.html#1655" class="Bound">X</a><a id="1678" class="Symbol">}</a> <a id="1680" class="Symbol"></a> <a id="1682" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
<a id="1694" href="UniformIterationAlgebras.html#586" class="Function">idC</a> <a id="1698" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="1700" href="UniformIterationAlgebras.html#1665" class="Bound">f</a> <a id="1702" href="UniformIterationAlgebra.html#724" class="Function Operator">#</a> <a id="1715" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1718" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="1728" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function"></a>
<a id="1737" href="UniformIterationAlgebras.html#1665" class="Bound">f</a> <a id="1739" href="UniformIterationAlgebra.html#724" class="Function Operator">#</a> <a id="1758" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1761" href="UniformIterationAlgebra.html#1004" class="Function">#-resp-≈</a> <a id="1770" class="Symbol">(</a><a id="1771" href="Categories.Morphism.Reasoning.Core.html#3063" class="Function">introˡ</a> <a id="1778" class="Symbol">(</a><a id="1779" href="Categories.Object.Coproduct.html#635" class="Function">coproduct.unique</a> <a id="1796" href="Categories.Morphism.Reasoning.Core.html#1309" class="Function">id-comm-sym</a> <a id="1808" href="Categories.Morphism.Reasoning.Core.html#1309" class="Function">id-comm-sym</a><a id="1819" class="Symbol">))</a> <a id="1822" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function"></a>
<a id="1830" class="Symbol">((</a><a id="1832" href="UniformIterationAlgebras.html#586" class="Function">idC</a> <a id="1836" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1839" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="1842" class="Symbol">)</a> <a id="1844" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="1846" href="UniformIterationAlgebras.html#1665" class="Bound">f</a><a id="1847" class="Symbol">)</a> <a id="1849" href="UniformIterationAlgebra.html#724" class="Function Operator">#</a> <a id="1851" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator"></a> <a id="1853" class="Symbol">}</a>
<a id="1859" class="Symbol">;</a> <a id="1861" href="Categories.Category.Core.html#656" class="Field Operator">_∘_</a> <a id="1871" class="Symbol">=</a> <a id="1873" class="Symbol">λ</a> <a id="1875" class="Symbol">{</a><a id="1876" href="UniformIterationAlgebras.html#1876" class="Bound">EA</a><a id="1878" class="Symbol">}</a> <a id="1880" class="Symbol">{</a><a id="1881" href="UniformIterationAlgebras.html#1881" class="Bound">EB</a><a id="1883" class="Symbol">}</a> <a id="1885" class="Symbol">{</a><a id="1886" href="UniformIterationAlgebras.html#1886" class="Bound">EC</a><a id="1888" class="Symbol">}</a> <a id="1890" href="UniformIterationAlgebras.html#1890" class="Bound">f</a> <a id="1892" href="UniformIterationAlgebras.html#1892" class="Bound">g</a> <a id="1894" class="Symbol"></a> <a id="1896" class="Keyword">let</a>
<a id="1907" class="Keyword">open</a> <a id="1912" href="UniformIterationAlgebras.html#1005" class="Module">Uniform-Iteration-Algebra-Morphism</a> <a id="1947" href="UniformIterationAlgebras.html#1890" class="Bound">f</a> <a id="1949" class="Keyword">renaming</a> <a id="1958" class="Symbol">(</a><a id="1959" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="1961" class="Symbol">to</a> <a id="1964" class="Field">hᶠ</a><a id="1966" class="Symbol">;</a> <a id="1968" href="UniformIterationAlgebras.html#1102" class="Field">preserves</a> <a id="1978" class="Symbol">to</a> <a id="1981" class="Field">preservesᶠ</a><a id="1991" class="Symbol">)</a>
<a id="1999" class="Keyword">open</a> <a id="2004" href="UniformIterationAlgebras.html#1005" class="Module">Uniform-Iteration-Algebra-Morphism</a> <a id="2039" href="UniformIterationAlgebras.html#1892" class="Bound">g</a> <a id="2041" class="Keyword">renaming</a> <a id="2050" class="Symbol">(</a><a id="2051" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="2053" class="Symbol">to</a> <a id="2056" class="Field">hᵍ</a><a id="2058" class="Symbol">;</a> <a id="2060" href="UniformIterationAlgebras.html#1102" class="Field">preserves</a> <a id="2070" class="Symbol">to</a> <a id="2073" class="Field">preservesᵍ</a><a id="2083" class="Symbol">)</a>
<a id="2091" class="Keyword">open</a> <a id="2096" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="2122" href="UniformIterationAlgebras.html#1876" class="Bound">EA</a> <a id="2125" class="Keyword">using</a> <a id="2131" class="Symbol">(</a><a id="2132" href="UniformIterationAlgebra.html#1139" class="Field">A</a><a id="2133" class="Symbol">)</a> <a id="2135" class="Keyword">renaming</a> <a id="2144" class="Symbol">(</a><a id="2145" href="UniformIterationAlgebra.html#724" class="Function Operator">_#</a> <a id="2148" class="Symbol">to</a> <a id="2151" class="Function Operator">_#ᵃ</a><a id="2154" class="Symbol">)</a>
<a id="2162" class="Keyword">open</a> <a id="2167" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="2193" href="UniformIterationAlgebras.html#1881" class="Bound">EB</a> <a id="2196" class="Keyword">using</a> <a id="2202" class="Symbol">()</a> <a id="2205" class="Keyword">renaming</a> <a id="2214" class="Symbol">(</a><a id="2215" href="UniformIterationAlgebra.html#724" class="Function Operator">_#</a> <a id="2218" class="Symbol">to</a> <a id="2221" class="Function Operator">_#ᵇ</a><a id="2224" class="Symbol">;</a> <a id="2226" href="UniformIterationAlgebra.html#1139" class="Field">A</a> <a id="2228" class="Symbol">to</a> <a id="2231" class="Field">B</a><a id="2232" class="Symbol">)</a>
<a id="2240" class="Keyword">open</a> <a id="2245" href="UniformIterationAlgebra.html#1073" class="Module">Uniform-Iteration-Algebra</a> <a id="2271" href="UniformIterationAlgebras.html#1886" class="Bound">EC</a> <a id="2274" class="Keyword">using</a> <a id="2280" class="Symbol">()</a> <a id="2283" class="Keyword">renaming</a> <a id="2292" class="Symbol">(</a><a id="2293" href="UniformIterationAlgebra.html#724" class="Function Operator">_#</a> <a id="2296" class="Symbol">to</a> <a id="2299" class="Function Operator">_#ᶜ</a><a id="2302" class="Symbol">;</a> <a id="2304" href="UniformIterationAlgebra.html#1139" class="Field">A</a> <a id="2306" class="Symbol">to</a> <a id="2309" class="Field">C</a><a id="2310" class="Symbol">;</a> <a id="2312" href="UniformIterationAlgebra.html#1004" class="Function">#-resp-≈</a> <a id="2321" class="Symbol">to</a> <a id="2324" class="Function">#ᶜ-resp-≈</a><a id="2333" class="Symbol">)</a>
<a id="2341" class="Keyword">in</a> <a id="2344" class="Keyword">record</a> <a id="2351" class="Symbol">{</a> <a id="2353" href="UniformIterationAlgebras.html#1084" class="Field">h</a> <a id="2355" class="Symbol">=</a> <a id="2357" href="UniformIterationAlgebras.html#1964" class="Function">hᶠ</a> <a id="2360" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2362" href="UniformIterationAlgebras.html#2056" class="Field">hᵍ</a><a id="2364" class="Symbol">;</a> <a id="2366" href="UniformIterationAlgebras.html#1102" class="Field">preserves</a> <a id="2376" class="Symbol">=</a> <a id="2378" class="Symbol">λ</a> <a id="2380" class="Symbol">{</a><a id="2381" href="UniformIterationAlgebras.html#2381" class="Bound">X</a><a id="2382" class="Symbol">}</a> <a id="2384" class="Symbol">{</a><a id="2385" href="UniformIterationAlgebras.html#2385" class="Bound">f</a> <a id="2387" class="Symbol">:</a> <a id="2389" href="UniformIterationAlgebras.html#2381" class="Bound">X</a> <a id="2391" href="Categories.Category.Core.html#575" class="Function Operator"></a> <a id="2393" href="UniformIterationAlgebra.html#1139" class="Function">A</a> <a id="2395" href="Categories.Category.Cocartesian.html#1549" class="Function Operator">+</a> <a id="2397" href="UniformIterationAlgebras.html#2381" class="Bound">X</a><a id="2398" class="Symbol">}</a> <a id="2400" class="Symbol"></a> <a id="2402" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
<a id="2417" class="Symbol">(</a><a id="2418" href="UniformIterationAlgebras.html#1964" class="Function">hᶠ</a> <a id="2421" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2423" href="UniformIterationAlgebras.html#2056" class="Field">hᵍ</a><a id="2425" class="Symbol">)</a> <a id="2427" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2429" class="Symbol">(</a><a id="2430" href="UniformIterationAlgebras.html#2385" class="Bound">f</a> <a id="2432" href="UniformIterationAlgebras.html#2151" class="Function Operator">#ᵃ</a><a id="2434" class="Symbol">)</a> <a id="2456" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2459" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2465" href="UniformIterationAlgebras.html#2073" class="Field">preservesᵍ</a> <a id="2476" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function"></a>
<a id="2486" class="Symbol">(</a><a id="2487" href="UniformIterationAlgebras.html#1964" class="Function">hᶠ</a> <a id="2490" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2492" class="Symbol">(((</a><a id="2495" href="UniformIterationAlgebras.html#2056" class="Field">hᵍ</a> <a id="2498" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2501" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="2504" class="Symbol">)</a> <a id="2506" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2508" href="UniformIterationAlgebras.html#2385" class="Bound">f</a><a id="2509" class="Symbol">)</a> <a id="2511" href="UniformIterationAlgebras.html#2221" class="Function Operator">#ᵇ</a><a id="2513" class="Symbol">))</a> <a id="2525" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2528" href="UniformIterationAlgebras.html#1981" class="Function">preservesᶠ</a> <a id="2539" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function"></a>
<a id="2550" class="Symbol">(((</a><a id="2553" href="UniformIterationAlgebras.html#1964" class="Function">hᶠ</a> <a id="2556" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2559" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="2562" class="Symbol">)</a> <a id="2564" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2566" class="Symbol">(</a><a id="2567" href="UniformIterationAlgebras.html#2056" class="Field">hᵍ</a> <a id="2570" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2573" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="2576" class="Symbol">)</a> <a id="2578" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2580" href="UniformIterationAlgebras.html#2385" class="Bound">f</a><a id="2581" class="Symbol">)</a> <a id="2583" href="UniformIterationAlgebras.html#2299" class="Function Operator">#ᶜ</a><a id="2585" class="Symbol">)</a> <a id="2589" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2592" href="UniformIterationAlgebras.html#2324" class="Function">#ᶜ-resp-≈</a> <a id="2602" class="Symbol">(</a><a id="2603" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2609" class="Symbol">(</a><a id="2610" href="Relation.Binary.Structures.html#1629" class="Function">trans</a> <a id="2616" href="Categories.Category.Cocartesian.html#2699" class="Function">+₁∘+₁</a> <a id="2622" class="Symbol">(</a><a id="2623" href="Categories.Category.Cocartesian.html#2622" class="Function">+₁-cong₂</a> <a id="2632" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="2637" class="Symbol">(</a><a id="2638" href="Categories.Category.Core.html#1339" class="Function">identity²</a><a id="2647" class="Symbol">))))</a> <a id="2652" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function"></a>
<a id="2663" class="Symbol">((</a><a id="2665" href="UniformIterationAlgebras.html#1964" class="Function">hᶠ</a> <a id="2668" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2670" href="UniformIterationAlgebras.html#2056" class="Field">hᵍ</a> <a id="2673" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2676" href="UniformIterationAlgebras.html#586" class="Function">idC</a><a id="2679" class="Symbol">)</a> <a id="2681" href="Categories.Category.Core.html#656" class="Function Operator"></a> <a id="2683" href="UniformIterationAlgebras.html#2385" class="Bound">f</a><a id="2684" class="Symbol">)</a> <a id="2686" href="UniformIterationAlgebras.html#2299" class="Function Operator">#ᶜ</a> <a id="2702" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator"></a> <a id="2704" class="Symbol">}</a>
<a id="2710" class="Symbol">;</a> <a id="2712" href="Categories.Category.Core.html#1096" class="Field">identityˡ</a> <a id="2722" class="Symbol">=</a> <a id="2724" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a>
<a id="2738" class="Symbol">;</a> <a id="2740" href="Categories.Category.Core.html#1145" class="Field">identityʳ</a> <a id="2750" class="Symbol">=</a> <a id="2752" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a>
<a id="2766" class="Symbol">;</a> <a id="2768" href="Categories.Category.Core.html#1339" class="Field">identity²</a> <a id="2778" class="Symbol">=</a> <a id="2780" href="Categories.Category.Core.html#1339" class="Function">identity²</a>
<a id="2794" class="Symbol">;</a> <a id="2796" href="Categories.Category.Core.html#715" class="Field">assoc</a> <a id="2806" class="Symbol">=</a> <a id="2808" href="Categories.Category.Core.html#715" class="Function">assoc</a>
<a id="2818" class="Symbol">;</a> <a id="2820" href="Categories.Category.Core.html#1004" class="Field">sym-assoc</a> <a id="2830" class="Symbol">=</a> <a id="2832" href="Categories.Category.Core.html#1004" class="Function">sym-assoc</a>
<a id="2846" class="Symbol">;</a> <a id="2848" href="Categories.Category.Core.html#1384" class="Field">equiv</a> <a id="2858" class="Symbol">=</a> <a id="2860" class="Keyword">record</a>
<a id="2873" class="Symbol">{</a> <a id="2875" href="Relation.Binary.Structures.html#1577" class="Field">refl</a> <a id="2881" class="Symbol">=</a> <a id="2883" href="Relation.Binary.Structures.html#1577" class="Function">refl</a>
<a id="2894" class="Symbol">;</a> <a id="2896" href="Relation.Binary.Structures.html#1603" class="Field">sym</a> <a id="2902" class="Symbol">=</a> <a id="2904" href="Relation.Binary.Structures.html#1603" class="Function">sym</a>
<a id="2914" class="Symbol">;</a> <a id="2916" href="Relation.Binary.Structures.html#1629" class="Field">trans</a> <a id="2922" class="Symbol">=</a> <a id="2924" href="Relation.Binary.Structures.html#1629" class="Function">trans</a>
<a id="2936" class="Symbol">}</a>
<a id="2942" class="Symbol">;</a> <a id="2944" href="Categories.Category.Core.html#1438" class="Field">∘-resp-≈</a> <a id="2954" class="Symbol">=</a> <a id="2956" href="Categories.Category.Core.html#1438" class="Function">∘-resp-≈</a>
<a id="2969" class="Symbol">}</a>
<a id="2975" class="Keyword">where</a> <a id="2981" class="Keyword">open</a> <a id="2986" href="UniformIterationAlgebras.html#1005" class="Module">Uniform-Iteration-Algebra-Morphism</a>
</pre>
</body>
</html>