mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
174 lines
No EOL
101 KiB
HTML
174 lines
No EOL
101 KiB
HTML
<!DOCTYPE HTML>
|
||
<html><head><meta charset="utf-8"><title>Categories.Object.Exponential</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">open</a> <a id="41" class="Keyword">import</a> <a id="48" href="Categories.Category.html" class="Module">Categories.Category</a>
|
||
|
||
<a id="69" class="Comment">-- Exponential Object</a>
|
||
|
||
<a id="92" class="Comment">-- TODO: Where is the notation from? It is neither from Wikipedia nor the nLab.</a>
|
||
<a id="172" class="Keyword">module</a> <a id="179" href="Categories.Object.Exponential.html" class="Module">Categories.Object.Exponential</a> <a id="209" class="Symbol">{</a><a id="210" href="Categories.Object.Exponential.html#210" class="Bound">o</a> <a id="212" href="Categories.Object.Exponential.html#212" class="Bound">ℓ</a> <a id="214" href="Categories.Object.Exponential.html#214" class="Bound">e</a><a id="215" class="Symbol">}</a> <a id="217" class="Symbol">(</a><a id="218" href="Categories.Object.Exponential.html#218" class="Bound">𝒞</a> <a id="220" class="Symbol">:</a> <a id="222" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="231" href="Categories.Object.Exponential.html#210" class="Bound">o</a> <a id="233" href="Categories.Object.Exponential.html#212" class="Bound">ℓ</a> <a id="235" href="Categories.Object.Exponential.html#214" class="Bound">e</a><a id="236" class="Symbol">)</a> <a id="238" class="Keyword">where</a>
|
||
|
||
<a id="245" class="Keyword">open</a> <a id="250" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="259" href="Categories.Object.Exponential.html#218" class="Bound">𝒞</a>
|
||
|
||
<a id="262" class="Keyword">open</a> <a id="267" class="Keyword">import</a> <a id="274" href="Level.html" class="Module">Level</a>
|
||
<a id="280" class="Keyword">open</a> <a id="285" class="Keyword">import</a> <a id="292" href="Function.html" class="Module">Function</a> <a id="301" class="Keyword">using</a> <a id="307" class="Symbol">(</a><a id="308" href="Function.Base.html#1928" class="Function Operator">_$_</a><a id="311" class="Symbol">)</a>
|
||
|
||
<a id="314" class="Keyword">open</a> <a id="319" class="Keyword">import</a> <a id="326" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="356" href="Categories.Object.Exponential.html#218" class="Bound">𝒞</a>
|
||
<a id="358" class="Keyword">open</a> <a id="363" class="Keyword">import</a> <a id="370" href="Categories.Object.Product.html" class="Module">Categories.Object.Product</a> <a id="396" href="Categories.Object.Exponential.html#218" class="Bound">𝒞</a>
|
||
<a id="400" class="Keyword">hiding</a> <a id="407" class="Symbol">(</a><a id="408" href="Categories.Object.Product.Core.html#2078" class="Function">repack</a><a id="414" class="Symbol">;</a> <a id="416" href="Categories.Object.Product.Core.html#2384" class="Function">repack≡id</a><a id="425" class="Symbol">;</a> <a id="427" href="Categories.Object.Product.Core.html#2168" class="Function">repack∘</a><a id="434" class="Symbol">;</a> <a id="436" href="Categories.Object.Product.Core.html#2451" class="Function">repack-cancel</a><a id="449" class="Symbol">;</a> <a id="451" href="Categories.Object.Product.Core.html#2581" class="Function">up-to-iso</a><a id="460" class="Symbol">;</a> <a id="462" href="Categories.Object.Product.Core.html#2819" class="Function">transport-by-iso</a><a id="478" class="Symbol">)</a>
|
||
<a id="480" class="Keyword">open</a> <a id="485" class="Keyword">import</a> <a id="492" href="Categories.Morphism.html" class="Module">Categories.Morphism</a> <a id="512" href="Categories.Object.Exponential.html#218" class="Bound">𝒞</a>
|
||
|
||
<a id="515" class="Keyword">open</a> <a id="520" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
||
|
||
<a id="534" class="Keyword">private</a>
|
||
<a id="544" class="Keyword">variable</a>
|
||
<a id="557" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a> <a id="559" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a> <a id="561" href="Categories.Object.Exponential.html#561" class="Generalizable">C</a> <a id="563" href="Categories.Object.Exponential.html#563" class="Generalizable">D</a> <a id="565" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="567" href="Categories.Object.Exponential.html#567" class="Generalizable">Y</a> <a id="569" class="Symbol">:</a> <a id="571" href="Categories.Category.Core.html#559" class="Field">Obj</a>
|
||
|
||
<a id="576" class="Keyword">record</a> <a id="Exponential"></a><a id="583" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="595" class="Symbol">(</a><a id="596" href="Categories.Object.Exponential.html#596" class="Bound">A</a> <a id="598" href="Categories.Object.Exponential.html#598" class="Bound">B</a> <a id="600" class="Symbol">:</a> <a id="602" href="Categories.Category.Core.html#559" class="Field">Obj</a><a id="605" class="Symbol">)</a> <a id="607" class="Symbol">:</a> <a id="609" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="613" class="Symbol">(</a><a id="614" href="Categories.Object.Exponential.html#210" class="Bound">o</a> <a id="616" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="618" href="Categories.Object.Exponential.html#212" class="Bound">ℓ</a> <a id="620" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="622" href="Categories.Object.Exponential.html#214" class="Bound">e</a><a id="623" class="Symbol">)</a> <a id="625" class="Keyword">where</a>
|
||
<a id="633" class="Keyword">field</a>
|
||
<a id="Exponential.B^A"></a><a id="643" href="Categories.Object.Exponential.html#643" class="Field">B^A</a> <a id="647" class="Symbol">:</a> <a id="649" href="Categories.Category.Core.html#559" class="Field">Obj</a>
|
||
<a id="Exponential.product"></a><a id="657" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="665" class="Symbol">:</a> <a id="667" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="675" href="Categories.Object.Exponential.html#643" class="Field">B^A</a> <a id="679" href="Categories.Object.Exponential.html#596" class="Bound">A</a>
|
||
|
||
<a id="684" class="Keyword">module</a> <a id="Exponential.product"></a><a id="691" href="Categories.Object.Exponential.html#691" class="Module">product</a> <a id="699" class="Symbol">=</a> <a id="701" href="Categories.Object.Product.Core.html#435" class="Module">Product</a> <a id="709" href="Categories.Object.Exponential.html#657" class="Field">product</a>
|
||
|
||
<a id="Exponential.B^A×A"></a><a id="720" href="Categories.Object.Exponential.html#720" class="Function">B^A×A</a> <a id="726" class="Symbol">:</a> <a id="728" href="Categories.Category.Core.html#559" class="Field">Obj</a>
|
||
<a id="734" href="Categories.Object.Exponential.html#720" class="Function">B^A×A</a> <a id="740" class="Symbol">=</a> <a id="742" href="Categories.Object.Product.Core.html#510" class="Function">product.A×B</a>
|
||
|
||
<a id="757" class="Keyword">field</a>
|
||
<a id="Exponential.eval"></a><a id="767" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="776" class="Symbol">:</a> <a id="778" href="Categories.Object.Exponential.html#720" class="Function">B^A×A</a> <a id="784" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="786" href="Categories.Object.Exponential.html#598" class="Bound">B</a>
|
||
<a id="Exponential.λg"></a><a id="792" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="801" class="Symbol">:</a> <a id="803" class="Symbol">∀</a> <a id="805" class="Symbol">(</a><a id="806" href="Categories.Object.Exponential.html#806" class="Bound">X×A</a> <a id="810" class="Symbol">:</a> <a id="812" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="820" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="822" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="823" class="Symbol">)</a> <a id="825" class="Symbol">→</a> <a id="827" class="Symbol">(</a><a id="828" href="Categories.Object.Product.Core.html#510" class="Field">Product.A×B</a> <a id="840" href="Categories.Object.Exponential.html#806" class="Bound">X×A</a> <a id="844" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="846" href="Categories.Object.Exponential.html#598" class="Bound">B</a><a id="847" class="Symbol">)</a> <a id="849" class="Symbol">→</a> <a id="851" class="Symbol">(</a><a id="852" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="854" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="856" href="Categories.Object.Exponential.html#643" class="Field">B^A</a><a id="859" class="Symbol">)</a>
|
||
<a id="Exponential.β"></a><a id="865" href="Categories.Object.Exponential.html#865" class="Field">β</a> <a id="874" class="Symbol">:</a> <a id="876" class="Symbol">∀</a> <a id="878" class="Symbol">(</a><a id="879" href="Categories.Object.Exponential.html#879" class="Bound">X×A</a> <a id="883" class="Symbol">:</a> <a id="885" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="893" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="895" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="896" class="Symbol">)</a> <a id="898" class="Symbol">{</a><a id="899" href="Categories.Object.Exponential.html#899" class="Bound">g</a> <a id="901" class="Symbol">:</a> <a id="903" href="Categories.Object.Product.Core.html#510" class="Field">Product.A×B</a> <a id="915" href="Categories.Object.Exponential.html#879" class="Bound">X×A</a> <a id="919" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="921" href="Categories.Object.Exponential.html#598" class="Bound">B</a><a id="922" class="Symbol">}</a> <a id="924" class="Symbol">→</a>
|
||
<a id="943" class="Symbol">(</a><a id="944" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="949" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="951" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="953" href="Categories.Object.Exponential.html#879" class="Bound">X×A</a> <a id="957" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="959" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="967" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="969" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="972" href="Categories.Object.Exponential.html#879" class="Bound">X×A</a> <a id="976" href="Categories.Object.Exponential.html#899" class="Bound">g</a> <a id="978" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="982" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="984" href="Categories.Object.Exponential.html#899" class="Bound">g</a><a id="985" class="Symbol">)</a>
|
||
<a id="Exponential.λ-unique"></a><a id="991" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="1000" class="Symbol">:</a> <a id="1002" class="Symbol">∀</a> <a id="1004" class="Symbol">(</a><a id="1005" href="Categories.Object.Exponential.html#1005" class="Bound">X×A</a> <a id="1009" class="Symbol">:</a> <a id="1011" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="1019" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="1021" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="1022" class="Symbol">)</a> <a id="1024" class="Symbol">{</a><a id="1025" href="Categories.Object.Exponential.html#1025" class="Bound">g</a> <a id="1027" class="Symbol">:</a> <a id="1029" href="Categories.Object.Product.Core.html#510" class="Field">Product.A×B</a> <a id="1041" href="Categories.Object.Exponential.html#1005" class="Bound">X×A</a> <a id="1045" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="1047" href="Categories.Object.Exponential.html#598" class="Bound">B</a><a id="1048" class="Symbol">}</a> <a id="1050" class="Symbol">{</a><a id="1051" href="Categories.Object.Exponential.html#1051" class="Bound">h</a> <a id="1053" class="Symbol">:</a> <a id="1055" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="1057" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="1059" href="Categories.Object.Exponential.html#643" class="Field">B^A</a><a id="1062" class="Symbol">}</a> <a id="1064" class="Symbol">→</a>
|
||
<a id="1083" class="Symbol">(</a><a id="1084" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1089" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1091" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1093" href="Categories.Object.Exponential.html#1005" class="Bound">X×A</a> <a id="1097" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1099" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1107" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1109" href="Categories.Object.Exponential.html#1051" class="Bound">h</a> <a id="1111" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="1115" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1117" href="Categories.Object.Exponential.html#1025" class="Bound">g</a><a id="1118" class="Symbol">)</a> <a id="1120" class="Symbol">→</a> <a id="1122" class="Symbol">(</a><a id="1123" href="Categories.Object.Exponential.html#1051" class="Bound">h</a> <a id="1125" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1127" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1130" href="Categories.Object.Exponential.html#1005" class="Bound">X×A</a> <a id="1134" href="Categories.Object.Exponential.html#1025" class="Bound">g</a><a id="1135" class="Symbol">)</a>
|
||
|
||
<a id="Exponential.η"></a><a id="1140" href="Categories.Object.Exponential.html#1140" class="Function">η</a> <a id="1142" class="Symbol">:</a> <a id="1144" class="Symbol">∀</a> <a id="1146" class="Symbol">(</a><a id="1147" href="Categories.Object.Exponential.html#1147" class="Bound">X×A</a> <a id="1151" class="Symbol">:</a> <a id="1153" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="1161" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="1163" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="1164" class="Symbol">)</a> <a id="1166" class="Symbol">{</a><a id="1167" href="Categories.Object.Exponential.html#1167" class="Bound">f</a> <a id="1169" class="Symbol">:</a> <a id="1171" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="1173" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="1175" href="Categories.Object.Exponential.html#643" class="Field">B^A</a> <a id="1179" class="Symbol">}</a> <a id="1181" class="Symbol">→</a> <a id="1183" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1186" href="Categories.Object.Exponential.html#1147" class="Bound">X×A</a> <a id="1190" class="Symbol">(</a><a id="1191" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1196" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1198" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1200" href="Categories.Object.Exponential.html#1147" class="Bound">X×A</a> <a id="1204" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1206" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1214" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1216" href="Categories.Object.Exponential.html#1167" class="Bound">f</a> <a id="1218" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a><a id="1221" class="Symbol">)</a> <a id="1223" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1225" href="Categories.Object.Exponential.html#1167" class="Bound">f</a>
|
||
<a id="1229" href="Categories.Object.Exponential.html#1140" class="Function">η</a> <a id="1231" href="Categories.Object.Exponential.html#1231" class="Bound">X×A</a> <a id="1235" class="Symbol">{</a><a id="1236" href="Categories.Object.Exponential.html#1236" class="Bound">f</a><a id="1237" class="Symbol">}</a> <a id="1239" class="Symbol">=</a> <a id="1241" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1243" class="Symbol">(</a><a id="1244" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="1253" href="Categories.Object.Exponential.html#1231" class="Bound">X×A</a> <a id="1257" href="Relation.Binary.Structures.html#1577" class="Function">Equiv.refl</a><a id="1267" class="Symbol">)</a>
|
||
|
||
<a id="Exponential.λ-cong"></a><a id="1272" href="Categories.Object.Exponential.html#1272" class="Function">λ-cong</a> <a id="1279" class="Symbol">:</a> <a id="1281" class="Symbol">∀</a> <a id="1283" class="Symbol">{</a><a id="1284" href="Categories.Object.Exponential.html#1284" class="Bound">X</a> <a id="1286" class="Symbol">:</a> <a id="1288" href="Categories.Category.Core.html#559" class="Field">Obj</a><a id="1291" class="Symbol">}</a> <a id="1293" class="Symbol">(</a><a id="1294" href="Categories.Object.Exponential.html#1294" class="Bound">X×A</a> <a id="1298" class="Symbol">:</a> <a id="1300" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="1308" href="Categories.Object.Exponential.html#1284" class="Bound">X</a> <a id="1310" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="1311" class="Symbol">)</a> <a id="1313" class="Symbol">{</a><a id="1314" href="Categories.Object.Exponential.html#1314" class="Bound">f</a> <a id="1316" href="Categories.Object.Exponential.html#1316" class="Bound">g</a><a id="1317" class="Symbol">}</a> <a id="1319" class="Symbol">→</a>
|
||
<a id="1334" href="Categories.Object.Exponential.html#1314" class="Bound">f</a> <a id="1336" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1338" href="Categories.Object.Exponential.html#1316" class="Bound">g</a> <a id="1340" class="Symbol">→</a> <a id="1342" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1345" href="Categories.Object.Exponential.html#1294" class="Bound">X×A</a> <a id="1349" href="Categories.Object.Exponential.html#1314" class="Bound">f</a> <a id="1351" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1353" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1356" href="Categories.Object.Exponential.html#1294" class="Bound">X×A</a> <a id="1360" href="Categories.Object.Exponential.html#1316" class="Bound">g</a>
|
||
<a id="1364" href="Categories.Object.Exponential.html#1272" class="Function">λ-cong</a> <a id="1371" href="Categories.Object.Exponential.html#1371" class="Bound">X×A</a> <a id="1375" class="Symbol">{</a><a id="1376" class="Argument">f</a> <a id="1378" class="Symbol">=</a> <a id="1380" href="Categories.Object.Exponential.html#1380" class="Bound">f</a><a id="1381" class="Symbol">}</a> <a id="1383" class="Symbol">{</a><a id="1384" class="Argument">g</a> <a id="1386" class="Symbol">=</a> <a id="1388" href="Categories.Object.Exponential.html#1388" class="Bound">g</a><a id="1389" class="Symbol">}</a> <a id="1391" href="Categories.Object.Exponential.html#1391" class="Bound">f≡g</a> <a id="1395" class="Symbol">=</a> <a id="1397" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="1406" href="Categories.Object.Exponential.html#1371" class="Bound">X×A</a> <a id="1410" class="Symbol">(</a><a id="1411" href="Categories.Object.Exponential.html#865" class="Field">β</a> <a id="1413" href="Categories.Object.Exponential.html#1371" class="Bound">X×A</a> <a id="1417" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1419" href="Categories.Object.Exponential.html#1391" class="Bound">f≡g</a><a id="1422" class="Symbol">)</a>
|
||
|
||
<a id="Exponential.subst"></a><a id="1427" href="Categories.Object.Exponential.html#1427" class="Function">subst</a> <a id="1433" class="Symbol">:</a> <a id="1435" class="Symbol">∀</a> <a id="1437" class="Symbol">(</a><a id="1438" href="Categories.Object.Exponential.html#1438" class="Bound">p₂</a> <a id="1441" class="Symbol">:</a> <a id="1443" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="1451" href="Categories.Object.Exponential.html#561" class="Generalizable">C</a> <a id="1453" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="1454" class="Symbol">)</a> <a id="1456" class="Symbol">(</a><a id="1457" href="Categories.Object.Exponential.html#1457" class="Bound">p₃</a> <a id="1460" class="Symbol">:</a> <a id="1462" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="1470" href="Categories.Object.Exponential.html#563" class="Generalizable">D</a> <a id="1472" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="1473" class="Symbol">)</a> <a id="1475" class="Symbol">{</a><a id="1476" href="Categories.Object.Exponential.html#1476" class="Bound">f</a> <a id="1478" href="Categories.Object.Exponential.html#1478" class="Bound">g</a><a id="1479" class="Symbol">}</a> <a id="1481" class="Symbol">→</a>
|
||
<a id="1495" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1498" href="Categories.Object.Exponential.html#1457" class="Bound">p₃</a> <a id="1501" href="Categories.Object.Exponential.html#1476" class="Bound">f</a> <a id="1503" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1505" href="Categories.Object.Exponential.html#1478" class="Bound">g</a> <a id="1507" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1509" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1512" href="Categories.Object.Exponential.html#1438" class="Bound">p₂</a> <a id="1515" class="Symbol">(</a><a id="1516" href="Categories.Object.Exponential.html#1476" class="Bound">f</a> <a id="1518" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1520" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1522" href="Categories.Object.Exponential.html#1438" class="Bound">p₂</a> <a id="1525" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1527" href="Categories.Object.Exponential.html#1457" class="Bound">p₃</a> <a id="1530" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1532" href="Categories.Object.Exponential.html#1478" class="Bound">g</a> <a id="1534" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a><a id="1537" class="Symbol">)</a>
|
||
<a id="1541" href="Categories.Object.Exponential.html#1427" class="Function">subst</a> <a id="1547" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1550" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1553" class="Symbol">{</a><a id="1554" href="Categories.Object.Exponential.html#1554" class="Bound">f</a><a id="1555" class="Symbol">}</a> <a id="1557" class="Symbol">{</a><a id="1558" href="Categories.Object.Exponential.html#1558" class="Bound">g</a><a id="1559" class="Symbol">}</a> <a id="1561" class="Symbol">=</a> <a id="1563" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="1572" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1575" class="Symbol">(</a><a id="1576" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="1586" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1591" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1593" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1595" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1598" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1600" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1608" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1610" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1613" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1616" href="Categories.Object.Exponential.html#1554" class="Bound">f</a> <a id="1618" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1620" href="Categories.Object.Exponential.html#1558" class="Bound">g</a> <a id="1622" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="1653" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="1657" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="1665" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">[</a> <a id="1667" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1670" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">⇒</a> <a id="1672" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1675" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">⇒</a> <a id="1677" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1685" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">]×id∘×id</a> <a id="1694" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="1700" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1705" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1707" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1709" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1712" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1714" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1722" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1724" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1727" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1730" href="Categories.Object.Exponential.html#1554" class="Bound">f</a> <a id="1732" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="1736" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1738" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1740" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1743" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1745" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1748" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1750" href="Categories.Object.Exponential.html#1558" class="Bound">g</a> <a id="1752" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="1783" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1786" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="1792" class="Symbol">(</a><a id="1793" href="Categories.Object.Exponential.html#865" class="Field">β</a> <a id="1795" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a><a id="1797" class="Symbol">)</a> <a id="1799" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="1805" href="Categories.Object.Exponential.html#1554" class="Bound">f</a> <a id="1807" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1809" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="1811" href="Categories.Object.Exponential.html#1547" class="Bound">p₂</a> <a id="1814" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="1816" href="Categories.Object.Exponential.html#1550" class="Bound">p₃</a> <a id="1819" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="1821" href="Categories.Object.Exponential.html#1558" class="Bound">g</a> <a id="1823" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="1827" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a><a id="1828" class="Symbol">)</a>
|
||
|
||
<a id="Exponential.η-id"></a><a id="1833" href="Categories.Object.Exponential.html#1833" class="Function">η-id</a> <a id="1838" class="Symbol">:</a> <a id="1840" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1843" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1851" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1856" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="1858" href="Categories.Category.Core.html#630" class="Field">id</a>
|
||
<a id="1863" href="Categories.Object.Exponential.html#1833" class="Function">η-id</a> <a id="1868" class="Symbol">=</a> <a id="1870" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="1880" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1883" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1891" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1929" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="1933" href="Categories.Category.Core.html#1145" class="Field">identityʳ</a> <a id="1943" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="1949" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="1952" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="1960" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="1965" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="1967" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="1998" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2001" href="Categories.Object.Exponential.html#1427" class="Function">subst</a> <a id="2007" class="Symbol">_</a> <a id="2009" class="Symbol">_</a> <a id="2011" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2017" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="2020" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2028" class="Symbol">(</a><a id="2029" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="2034" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="2036" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="2038" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2046" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="2048" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2056" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="2058" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="2061" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a><a id="2064" class="Symbol">)</a> <a id="2066" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2069" href="Categories.Object.Exponential.html#1140" class="Function">η</a> <a id="2071" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2079" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2085" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="2134" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
|
||
<a id="Exponential.λ-unique′"></a><a id="2139" href="Categories.Object.Exponential.html#2139" class="Function">λ-unique′</a> <a id="2149" class="Symbol">:</a> <a id="2151" class="Symbol">∀</a> <a id="2153" class="Symbol">(</a><a id="2154" href="Categories.Object.Exponential.html#2154" class="Bound">X×A</a> <a id="2158" class="Symbol">:</a> <a id="2160" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="2168" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="2170" href="Categories.Object.Exponential.html#596" class="Bound">A</a><a id="2171" class="Symbol">)</a> <a id="2173" class="Symbol">{</a><a id="2174" href="Categories.Object.Exponential.html#2174" class="Bound">h</a> <a id="2176" href="Categories.Object.Exponential.html#2176" class="Bound">i</a> <a id="2178" class="Symbol">:</a> <a id="2180" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="2182" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="2184" href="Categories.Object.Exponential.html#643" class="Field">B^A</a><a id="2187" class="Symbol">}</a> <a id="2189" class="Symbol">→</a>
|
||
<a id="2207" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="2212" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="2214" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="2216" href="Categories.Object.Exponential.html#2154" class="Bound">X×A</a> <a id="2220" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="2222" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2230" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="2232" href="Categories.Object.Exponential.html#2174" class="Bound">h</a> <a id="2234" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="2238" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="2240" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="2245" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="2247" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="2249" href="Categories.Object.Exponential.html#2154" class="Bound">X×A</a> <a id="2253" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="2255" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="2263" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="2265" href="Categories.Object.Exponential.html#2176" class="Bound">i</a> <a id="2267" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="2271" class="Symbol">→</a> <a id="2273" href="Categories.Object.Exponential.html#2174" class="Bound">h</a> <a id="2275" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="2277" href="Categories.Object.Exponential.html#2176" class="Bound">i</a>
|
||
<a id="2281" href="Categories.Object.Exponential.html#2139" class="Function">λ-unique′</a> <a id="2291" href="Categories.Object.Exponential.html#2291" class="Bound">p</a> <a id="2293" href="Categories.Object.Exponential.html#2293" class="Bound">eq</a> <a id="2296" class="Symbol">=</a> <a id="2298" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="2307" href="Categories.Object.Exponential.html#2291" class="Bound">p</a> <a id="2309" href="Categories.Object.Exponential.html#2293" class="Bound">eq</a> <a id="2312" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2314" class="Symbol">(</a><a id="2315" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="2317" class="Symbol">(</a><a id="2318" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="2327" href="Categories.Object.Exponential.html#2291" class="Bound">p</a> <a id="2329" href="Relation.Binary.Structures.html#1577" class="Function">Equiv.refl</a><a id="2339" class="Symbol">))</a>
|
||
|
||
<a id="2343" class="Comment">-- some aliases to make proof signatures less ugly</a>
|
||
<a id="[_]eval"></a><a id="2394" href="Categories.Object.Exponential.html#2394" class="Function Operator">[_]eval</a> <a id="2402" class="Symbol">:</a> <a id="2404" class="Symbol">∀{</a><a id="2406" href="Categories.Object.Exponential.html#2406" class="Bound">A</a> <a id="2408" href="Categories.Object.Exponential.html#2408" class="Bound">B</a><a id="2409" class="Symbol">}(</a><a id="2411" href="Categories.Object.Exponential.html#2411" class="Bound">e₁</a> <a id="2414" class="Symbol">:</a> <a id="2416" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="2428" href="Categories.Object.Exponential.html#2406" class="Bound">A</a> <a id="2430" href="Categories.Object.Exponential.html#2408" class="Bound">B</a><a id="2431" class="Symbol">)</a> <a id="2433" class="Symbol">→</a> <a id="2435" href="Categories.Object.Exponential.html#720" class="Function">Exponential.B^A×A</a> <a id="2453" href="Categories.Object.Exponential.html#2411" class="Bound">e₁</a> <a id="2456" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="2458" href="Categories.Object.Exponential.html#2408" class="Bound">B</a>
|
||
<a id="2460" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="2462" href="Categories.Object.Exponential.html#2462" class="Bound">e₁</a> <a id="2465" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="2471" class="Symbol">=</a> <a id="2473" href="Categories.Object.Exponential.html#767" class="Field">Exponential.eval</a> <a id="2490" href="Categories.Object.Exponential.html#2462" class="Bound">e₁</a>
|
||
|
||
<a id="[_]λ"></a><a id="2494" href="Categories.Object.Exponential.html#2494" class="Function Operator">[_]λ</a> <a id="2499" class="Symbol">:</a> <a id="2501" class="Symbol">∀{</a><a id="2503" href="Categories.Object.Exponential.html#2503" class="Bound">A</a> <a id="2505" href="Categories.Object.Exponential.html#2505" class="Bound">B</a><a id="2506" class="Symbol">}(</a><a id="2508" href="Categories.Object.Exponential.html#2508" class="Bound">e₁</a> <a id="2511" class="Symbol">:</a> <a id="2513" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="2525" href="Categories.Object.Exponential.html#2503" class="Bound">A</a> <a id="2527" href="Categories.Object.Exponential.html#2505" class="Bound">B</a><a id="2528" class="Symbol">)</a>
|
||
<a id="2532" class="Symbol">→</a> <a id="2534" class="Symbol">{</a><a id="2535" href="Categories.Object.Exponential.html#2535" class="Bound">X</a> <a id="2537" class="Symbol">:</a> <a id="2539" href="Categories.Category.Core.html#559" class="Field">Obj</a><a id="2542" class="Symbol">}</a> <a id="2544" class="Symbol">→</a> <a id="2546" class="Symbol">(</a><a id="2547" href="Categories.Object.Exponential.html#2547" class="Bound">X×A</a> <a id="2551" class="Symbol">:</a> <a id="2553" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="2561" href="Categories.Object.Exponential.html#2535" class="Bound">X</a> <a id="2563" href="Categories.Object.Exponential.html#2503" class="Bound">A</a><a id="2564" class="Symbol">)</a> <a id="2566" class="Symbol">→</a> <a id="2568" class="Symbol">(</a><a id="2569" href="Categories.Object.Product.Core.html#510" class="Field">Product.A×B</a> <a id="2581" href="Categories.Object.Exponential.html#2547" class="Bound">X×A</a> <a id="2585" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="2587" href="Categories.Object.Exponential.html#2505" class="Bound">B</a><a id="2588" class="Symbol">)</a> <a id="2590" class="Symbol">→</a> <a id="2592" class="Symbol">(</a><a id="2593" href="Categories.Object.Exponential.html#2535" class="Bound">X</a> <a id="2595" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="2597" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="2613" href="Categories.Object.Exponential.html#2508" class="Bound">e₁</a><a id="2615" class="Symbol">)</a>
|
||
<a id="2617" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="2619" href="Categories.Object.Exponential.html#2619" class="Bound">e₁</a> <a id="2622" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="2625" class="Symbol">=</a> <a id="2627" href="Categories.Object.Exponential.html#792" class="Field">Exponential.λg</a> <a id="2642" href="Categories.Object.Exponential.html#2619" class="Bound">e₁</a>
|
||
|
||
<a id="2646" class="Comment">{-
|
||
D×C --id × f--> D×A --g--> B
|
||
|
||
D --λ (g ∘ id × f)--> B^C
|
||
\ ^
|
||
\ /
|
||
λ g λ (e ∘ id × f)
|
||
\ /
|
||
v /
|
||
B^A
|
||
-}</a>
|
||
<a id="λ-distrib"></a><a id="2844" href="Categories.Object.Exponential.html#2844" class="Function">λ-distrib</a> <a id="2854" class="Symbol">:</a> <a id="2856" class="Symbol">∀</a> <a id="2858" class="Symbol">(</a><a id="2859" href="Categories.Object.Exponential.html#2859" class="Bound">e₁</a> <a id="2862" class="Symbol">:</a> <a id="2864" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="2876" href="Categories.Object.Exponential.html#561" class="Generalizable">C</a> <a id="2878" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a><a id="2879" class="Symbol">)</a> <a id="2881" class="Symbol">(</a><a id="2882" href="Categories.Object.Exponential.html#2882" class="Bound">e₂</a> <a id="2885" class="Symbol">:</a> <a id="2887" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="2899" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a> <a id="2901" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a><a id="2902" class="Symbol">)</a>
|
||
<a id="2918" class="Symbol">(</a><a id="2919" href="Categories.Object.Exponential.html#2919" class="Bound">p₃</a> <a id="2922" class="Symbol">:</a> <a id="2924" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="2932" href="Categories.Object.Exponential.html#563" class="Generalizable">D</a> <a id="2934" href="Categories.Object.Exponential.html#561" class="Generalizable">C</a><a id="2935" class="Symbol">)</a> <a id="2937" class="Symbol">(</a><a id="2938" href="Categories.Object.Exponential.html#2938" class="Bound">p₄</a> <a id="2941" class="Symbol">:</a> <a id="2943" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="2951" href="Categories.Object.Exponential.html#563" class="Generalizable">D</a> <a id="2953" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a><a id="2954" class="Symbol">)</a> <a id="2956" class="Symbol">(</a><a id="2957" href="Categories.Object.Exponential.html#2957" class="Bound">p₅</a> <a id="2960" class="Symbol">:</a> <a id="2962" href="Categories.Object.Product.Core.html#435" class="Record">Product</a> <a id="2970" class="Symbol">(</a><a id="2971" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="2987" href="Categories.Object.Exponential.html#2882" class="Bound">e₂</a><a id="2989" class="Symbol">)</a> <a id="2991" href="Categories.Object.Exponential.html#561" class="Generalizable">C</a><a id="2992" class="Symbol">)</a>
|
||
<a id="3008" class="Symbol">{</a><a id="3009" href="Categories.Object.Exponential.html#3009" class="Bound">f</a><a id="3010" class="Symbol">}</a> <a id="3012" class="Symbol">{</a><a id="3013" href="Categories.Object.Exponential.html#3013" class="Bound">g</a> <a id="3015" class="Symbol">:</a> <a id="3017" href="Categories.Object.Product.Core.html#510" class="Field">Product.A×B</a> <a id="3029" href="Categories.Object.Exponential.html#2938" class="Bound">p₄</a> <a id="3032" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="3034" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a><a id="3035" class="Symbol">}</a> <a id="3037" class="Symbol">→</a>
|
||
<a id="3053" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3055" href="Categories.Object.Exponential.html#2859" class="Bound">e₁</a> <a id="3058" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3061" href="Categories.Object.Exponential.html#2919" class="Bound">p₃</a> <a id="3064" class="Symbol">(</a><a id="3065" href="Categories.Object.Exponential.html#3013" class="Bound">g</a> <a id="3067" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3069" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3071" href="Categories.Object.Exponential.html#2919" class="Bound">p₃</a> <a id="3074" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3076" href="Categories.Object.Exponential.html#2938" class="Bound">p₄</a> <a id="3079" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3084" href="Categories.Object.Exponential.html#3009" class="Bound">f</a><a id="3085" class="Symbol">)</a>
|
||
<a id="3101" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="3103" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3105" href="Categories.Object.Exponential.html#2859" class="Bound">e₁</a> <a id="3108" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3111" href="Categories.Object.Exponential.html#2957" class="Bound">p₅</a> <a id="3114" class="Symbol">(</a><a id="3115" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3117" href="Categories.Object.Exponential.html#2882" class="Bound">e₂</a> <a id="3120" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3126" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3128" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3130" href="Categories.Object.Exponential.html#2957" class="Bound">p₅</a> <a id="3133" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3135" href="Categories.Object.Exponential.html#657" class="Field">Exponential.product</a> <a id="3155" href="Categories.Object.Exponential.html#2882" class="Bound">e₂</a> <a id="3158" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3163" href="Categories.Object.Exponential.html#3009" class="Bound">f</a><a id="3164" class="Symbol">)</a> <a id="3166" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3168" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3170" href="Categories.Object.Exponential.html#2882" class="Bound">e₂</a> <a id="3173" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3176" href="Categories.Object.Exponential.html#2938" class="Bound">p₄</a> <a id="3179" href="Categories.Object.Exponential.html#3013" class="Bound">g</a>
|
||
<a id="3181" href="Categories.Object.Exponential.html#2844" class="Function">λ-distrib</a> <a id="3191" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a> <a id="3194" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3197" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3200" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3203" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3206" class="Symbol">{</a><a id="3207" href="Categories.Object.Exponential.html#3207" class="Bound">f</a><a id="3208" class="Symbol">}</a> <a id="3210" class="Symbol">{</a><a id="3211" href="Categories.Object.Exponential.html#3211" class="Bound">g</a><a id="3212" class="Symbol">}</a> <a id="3214" class="Symbol">=</a> <a id="3216" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="3218" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="3220" href="Categories.Object.Exponential.html#991" class="Function">e₁.λ-unique</a> <a id="3232" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3235" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="3237" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="3245" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3247" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a> <a id="3250" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3256" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3258" class="Symbol">(</a><a id="3259" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3261" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3264" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3266" href="Categories.Object.Exponential.html#4027" class="Function">p₁</a> <a id="3269" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3271" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3273" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a> <a id="3276" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3279" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3282" class="Symbol">(</a><a id="3283" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3285" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3288" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3294" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3296" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3298" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3301" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3303" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3306" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3311" href="Categories.Object.Exponential.html#3207" class="Bound">f</a><a id="3312" class="Symbol">)</a> <a id="3314" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3316" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3318" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3321" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3324" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3327" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3329" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a><a id="3332" class="Symbol">)</a>
|
||
<a id="3357" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="3361" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="3369" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">[</a> <a id="3371" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3374" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">⇒</a> <a id="3376" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3379" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">⇒</a> <a id="3381" href="Categories.Object.Exponential.html#4027" class="Function">p₁</a> <a id="3384" href="Categories.Object.Product.Morphisms.html#5474" class="Function Operator">]×id∘×id</a> <a id="3393" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="3397" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3399" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a> <a id="3402" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3408" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3410" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3412" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3415" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3417" href="Categories.Object.Exponential.html#4027" class="Function">p₁</a> <a id="3420" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3422" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3424" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a> <a id="3427" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3430" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3433" class="Symbol">(</a><a id="3434" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3436" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3439" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3445" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3447" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3449" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3452" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3454" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3457" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3462" href="Categories.Object.Exponential.html#3207" class="Bound">f</a><a id="3463" class="Symbol">)</a> <a id="3465" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="3482" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3484" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3486" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3489" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3491" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3494" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3496" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3498" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3501" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3504" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3507" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3509" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="3536" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3539" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="3545" class="Symbol">(</a><a id="3546" href="Categories.Object.Exponential.html#865" class="Function">e₁.β</a> <a id="3551" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a><a id="3553" class="Symbol">)</a> <a id="3555" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="3559" class="Symbol">(</a><a id="3560" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3562" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3565" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3571" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3573" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3575" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3578" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3580" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3583" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3588" href="Categories.Object.Exponential.html#3207" class="Bound">f</a><a id="3589" class="Symbol">)</a>
|
||
<a id="3605" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3607" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3609" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3612" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3614" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3617" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3619" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3621" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3624" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3627" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3630" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3632" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="3659" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3662" href="Categories.Category.Core.html#715" class="Field">assoc</a> <a id="3668" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="3672" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3674" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3677" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3683" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3685" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3687" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3690" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3692" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3695" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3700" href="Categories.Object.Exponential.html#3207" class="Bound">f</a>
|
||
<a id="3715" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3717" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3719" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3722" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3724" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3727" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3729" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3731" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3734" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3737" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3740" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3742" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a>
|
||
<a id="3769" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="3773" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="3781" href="Categories.Object.Product.Morphisms.html#6276" class="Function Operator">[</a> <a id="3783" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3786" href="Categories.Object.Product.Morphisms.html#6276" class="Function Operator">⇒</a> <a id="3788" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3791" href="Categories.Object.Product.Morphisms.html#6276" class="Function Operator">,</a> <a id="3793" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3796" href="Categories.Object.Product.Morphisms.html#6276" class="Function Operator">⇒</a> <a id="3798" href="Categories.Object.Exponential.html#3203" class="Bound">p₅</a> <a id="3801" href="Categories.Object.Product.Morphisms.html#6276" class="Function Operator">]first↔second</a> <a id="3815" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="3819" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="3821" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3824" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="3830" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3832" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="3834" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3837" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="3839" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="3842" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="3844" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="3846" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a> <a id="3849" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="3852" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3855" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3857" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="3861" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3863" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3865" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3868" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3870" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3873" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3878" href="Categories.Object.Exponential.html#3207" class="Bound">f</a>
|
||
<a id="3903" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3906" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="3912" class="Symbol">(</a><a id="3913" href="Categories.Object.Exponential.html#865" class="Function">e₂.β</a> <a id="3918" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a><a id="3920" class="Symbol">)</a> <a id="3922" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="3926" href="Categories.Object.Exponential.html#3211" class="Bound">g</a> <a id="3928" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="3930" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="3932" href="Categories.Object.Exponential.html#3197" class="Bound">p₃</a> <a id="3935" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="3937" href="Categories.Object.Exponential.html#3200" class="Bound">p₄</a> <a id="3940" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="3945" href="Categories.Object.Exponential.html#3207" class="Bound">f</a> <a id="3947" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="3951" class="Keyword">where</a> <a id="3957" class="Keyword">module</a> <a id="3964" href="Categories.Object.Exponential.html#3964" class="Module">e₁</a> <a id="3967" class="Symbol">=</a> <a id="3969" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a> <a id="3981" href="Categories.Object.Exponential.html#3191" class="Bound">e₁</a>
|
||
<a id="3992" class="Keyword">module</a> <a id="3999" href="Categories.Object.Exponential.html#3999" class="Module">e₂</a> <a id="4002" class="Symbol">=</a> <a id="4004" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a> <a id="4016" href="Categories.Object.Exponential.html#3194" class="Bound">e₂</a>
|
||
<a id="4027" href="Categories.Object.Exponential.html#4027" class="Function">p₁</a> <a id="4037" class="Symbol">=</a> <a id="4039" href="Categories.Object.Exponential.html#657" class="Function">e₁.product</a>
|
||
<a id="4058" href="Categories.Object.Exponential.html#4058" class="Function">p₂</a> <a id="4068" class="Symbol">=</a> <a id="4070" href="Categories.Object.Exponential.html#657" class="Function">e₂.product</a>
|
||
|
||
<a id="repack"></a><a id="4082" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4089" class="Symbol">:</a> <a id="4091" class="Symbol">∀{</a><a id="4093" href="Categories.Object.Exponential.html#4093" class="Bound">A</a> <a id="4095" href="Categories.Object.Exponential.html#4095" class="Bound">B</a><a id="4096" class="Symbol">}</a> <a id="4098" class="Symbol">(</a><a id="4099" href="Categories.Object.Exponential.html#4099" class="Bound">e₁</a> <a id="4102" href="Categories.Object.Exponential.html#4102" class="Bound">e₂</a> <a id="4105" class="Symbol">:</a> <a id="4107" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="4119" href="Categories.Object.Exponential.html#4093" class="Bound">A</a> <a id="4121" href="Categories.Object.Exponential.html#4095" class="Bound">B</a><a id="4122" class="Symbol">)</a> <a id="4124" class="Symbol">→</a> <a id="4126" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="4142" href="Categories.Object.Exponential.html#4099" class="Bound">e₁</a> <a id="4145" href="Categories.Category.Core.html#575" class="Field Operator">⇒</a> <a id="4147" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="4163" href="Categories.Object.Exponential.html#4102" class="Bound">e₂</a>
|
||
<a id="4166" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4173" href="Categories.Object.Exponential.html#4173" class="Bound">e₁</a> <a id="4176" href="Categories.Object.Exponential.html#4176" class="Bound">e₂</a> <a id="4179" class="Symbol">=</a> <a id="4181" href="Categories.Object.Exponential.html#792" class="Field">e₂.λg</a> <a id="4187" href="Categories.Object.Exponential.html#657" class="Function">e₁.product</a> <a id="4198" href="Categories.Object.Exponential.html#767" class="Function">e₁.eval</a>
|
||
<a id="4208" class="Keyword">where</a>
|
||
<a id="4218" class="Keyword">module</a> <a id="4225" href="Categories.Object.Exponential.html#4225" class="Module">e₁</a> <a id="4228" class="Symbol">=</a> <a id="4230" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a> <a id="4242" href="Categories.Object.Exponential.html#4173" class="Bound">e₁</a>
|
||
<a id="4249" class="Keyword">module</a> <a id="4256" href="Categories.Object.Exponential.html#4256" class="Module">e₂</a> <a id="4259" class="Symbol">=</a> <a id="4261" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a> <a id="4273" href="Categories.Object.Exponential.html#4176" class="Bound">e₂</a>
|
||
|
||
<a id="repack≡id"></a><a id="4277" href="Categories.Object.Exponential.html#4277" class="Function">repack≡id</a> <a id="4287" class="Symbol">:</a> <a id="4289" class="Symbol">∀{</a><a id="4291" href="Categories.Object.Exponential.html#4291" class="Bound">A</a> <a id="4293" href="Categories.Object.Exponential.html#4293" class="Bound">B</a><a id="4294" class="Symbol">}</a> <a id="4296" class="Symbol">(</a><a id="4297" href="Categories.Object.Exponential.html#4297" class="Bound">e</a> <a id="4299" class="Symbol">:</a> <a id="4301" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="4313" href="Categories.Object.Exponential.html#4291" class="Bound">A</a> <a id="4315" href="Categories.Object.Exponential.html#4293" class="Bound">B</a><a id="4316" class="Symbol">)</a> <a id="4318" class="Symbol">→</a> <a id="4320" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4327" href="Categories.Object.Exponential.html#4297" class="Bound">e</a> <a id="4329" href="Categories.Object.Exponential.html#4297" class="Bound">e</a> <a id="4331" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="4333" href="Categories.Category.Core.html#630" class="Field">id</a>
|
||
<a id="4336" href="Categories.Object.Exponential.html#4277" class="Function">repack≡id</a> <a id="4346" class="Symbol">=</a> <a id="4348" href="Categories.Object.Exponential.html#1833" class="Function">Exponential.η-id</a>
|
||
|
||
<a id="repack∘"></a><a id="4366" href="Categories.Object.Exponential.html#4366" class="Function">repack∘</a> <a id="4374" class="Symbol">:</a> <a id="4376" class="Symbol">∀</a> <a id="4378" class="Symbol">(</a><a id="4379" href="Categories.Object.Exponential.html#4379" class="Bound">e₁</a> <a id="4382" href="Categories.Object.Exponential.html#4382" class="Bound">e₂</a> <a id="4385" href="Categories.Object.Exponential.html#4385" class="Bound">e₃</a> <a id="4388" class="Symbol">:</a> <a id="4390" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="4402" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a> <a id="4404" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a><a id="4405" class="Symbol">)</a> <a id="4407" class="Symbol">→</a> <a id="4409" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4416" href="Categories.Object.Exponential.html#4382" class="Bound">e₂</a> <a id="4419" href="Categories.Object.Exponential.html#4385" class="Bound">e₃</a> <a id="4422" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4424" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4431" href="Categories.Object.Exponential.html#4379" class="Bound">e₁</a> <a id="4434" href="Categories.Object.Exponential.html#4382" class="Bound">e₂</a> <a id="4437" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="4439" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4446" href="Categories.Object.Exponential.html#4379" class="Bound">e₁</a> <a id="4449" href="Categories.Object.Exponential.html#4385" class="Bound">e₃</a>
|
||
<a id="4452" href="Categories.Object.Exponential.html#4366" class="Function">repack∘</a> <a id="4460" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4463" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4466" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4469" class="Symbol">=</a>
|
||
<a id="4473" class="Keyword">let</a> <a id="4477" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4480" class="Symbol">=</a> <a id="4482" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="4490" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4493" class="Keyword">in</a>
|
||
<a id="4498" class="Keyword">let</a> <a id="4502" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4505" class="Symbol">=</a> <a id="4507" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="4515" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4518" class="Keyword">in</a>
|
||
<a id="4523" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="4535" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4537" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4540" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4543" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4546" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4548" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4551" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a>
|
||
<a id="4561" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4563" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4565" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4568" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4571" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4574" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4576" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4579" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a>
|
||
<a id="4587" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4590" href="Categories.Object.Exponential.html#1272" class="Function">λ-cong</a> <a id="4597" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4600" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4603" class="Symbol">(</a><a id="4604" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">introʳ</a> <a id="4611" class="Symbol">(</a><a id="4612" href="Categories.Object.Product.Morphisms.html#4591" class="Function">second-id</a> <a id="4622" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a><a id="4624" class="Symbol">))</a> <a id="4627" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="4635" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="4643" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4645" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4648" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4651" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4654" class="Symbol">(</a><a id="4655" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4657" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4660" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="4666" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4668" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="4670" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4673" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="4675" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4678" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="4683" href="Categories.Category.Core.html#630" class="Field">id</a><a id="4685" class="Symbol">)</a>
|
||
<a id="4691" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4693" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4695" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4698" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4701" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4704" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4706" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4709" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a>
|
||
<a id="4717" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="4721" href="Categories.Object.Exponential.html#2844" class="Function">λ-distrib</a> <a id="4731" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4734" href="Categories.Object.Exponential.html#4463" class="Bound">e₂</a> <a id="4737" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4740" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4743" href="Categories.Object.Exponential.html#4502" class="Bound">p₂</a> <a id="4746" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="4752" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4754" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4757" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4760" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4763" class="Symbol">(</a><a id="4764" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4766" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4769" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a> <a id="4775" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4777" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">[</a> <a id="4779" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4782" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">⇒</a> <a id="4784" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4787" href="Categories.Object.Product.Morphisms.html#4398" class="Function Operator">]id×</a> <a id="4792" href="Categories.Category.Core.html#630" class="Field">id</a><a id="4794" class="Symbol">)</a>
|
||
<a id="4798" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4801" href="Categories.Object.Exponential.html#1272" class="Function">λ-cong</a> <a id="4808" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4811" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4814" class="Symbol">(</a><a id="4815" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="4817" class="Symbol">(</a><a id="4818" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">introʳ</a> <a id="4825" class="Symbol">(</a><a id="4826" href="Categories.Object.Product.Morphisms.html#4591" class="Function">second-id</a> <a id="4836" class="Symbol">(</a><a id="4837" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="4845" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a><a id="4847" class="Symbol">))))</a> <a id="4852" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="4858" href="Categories.Object.Exponential.html#2494" class="Function Operator">[</a> <a id="4860" href="Categories.Object.Exponential.html#4466" class="Bound">e₃</a> <a id="4863" href="Categories.Object.Exponential.html#2494" class="Function Operator">]λ</a> <a id="4866" href="Categories.Object.Exponential.html#4477" class="Bound">p₁</a> <a id="4869" href="Categories.Object.Exponential.html#2394" class="Function Operator">[</a> <a id="4871" href="Categories.Object.Exponential.html#4460" class="Bound">e₁</a> <a id="4874" href="Categories.Object.Exponential.html#2394" class="Function Operator">]eval</a>
|
||
<a id="4882" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="4886" class="Keyword">where</a> <a id="4892" class="Keyword">open</a> <a id="4897" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a>
|
||
|
||
<a id="repack-cancel"></a><a id="4910" href="Categories.Object.Exponential.html#4910" class="Function">repack-cancel</a> <a id="4924" class="Symbol">:</a> <a id="4926" class="Symbol">∀{</a><a id="4928" href="Categories.Object.Exponential.html#4928" class="Bound">A</a> <a id="4930" href="Categories.Object.Exponential.html#4930" class="Bound">B</a><a id="4931" class="Symbol">}</a> <a id="4933" class="Symbol">(</a><a id="4934" href="Categories.Object.Exponential.html#4934" class="Bound">e₁</a> <a id="4937" href="Categories.Object.Exponential.html#4937" class="Bound">e₂</a> <a id="4940" class="Symbol">:</a> <a id="4942" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="4954" href="Categories.Object.Exponential.html#4928" class="Bound">A</a> <a id="4956" href="Categories.Object.Exponential.html#4930" class="Bound">B</a><a id="4957" class="Symbol">)</a> <a id="4959" class="Symbol">→</a> <a id="4961" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4968" href="Categories.Object.Exponential.html#4934" class="Bound">e₁</a> <a id="4971" href="Categories.Object.Exponential.html#4937" class="Bound">e₂</a> <a id="4974" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="4976" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="4983" href="Categories.Object.Exponential.html#4937" class="Bound">e₂</a> <a id="4986" href="Categories.Object.Exponential.html#4934" class="Bound">e₁</a> <a id="4989" href="Categories.Category.Core.html#595" class="Field Operator">≈</a> <a id="4991" href="Categories.Category.Core.html#630" class="Field">id</a>
|
||
<a id="4994" href="Categories.Object.Exponential.html#4910" class="Function">repack-cancel</a> <a id="5008" href="Categories.Object.Exponential.html#5008" class="Bound">e₁</a> <a id="5011" href="Categories.Object.Exponential.html#5011" class="Bound">e₂</a> <a id="5014" class="Symbol">=</a> <a id="5016" href="Categories.Object.Exponential.html#4366" class="Function">repack∘</a> <a id="5024" href="Categories.Object.Exponential.html#5011" class="Bound">e₂</a> <a id="5027" href="Categories.Object.Exponential.html#5008" class="Bound">e₁</a> <a id="5030" href="Categories.Object.Exponential.html#5011" class="Bound">e₂</a> <a id="5033" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="5035" href="Categories.Object.Exponential.html#4277" class="Function">repack≡id</a> <a id="5045" href="Categories.Object.Exponential.html#5011" class="Bound">e₂</a>
|
||
|
||
<a id="up-to-iso"></a><a id="5049" href="Categories.Object.Exponential.html#5049" class="Function">up-to-iso</a> <a id="5059" class="Symbol">:</a> <a id="5061" class="Symbol">∀{</a><a id="5063" href="Categories.Object.Exponential.html#5063" class="Bound">A</a> <a id="5065" href="Categories.Object.Exponential.html#5065" class="Bound">B</a><a id="5066" class="Symbol">}</a> <a id="5068" class="Symbol">(</a><a id="5069" href="Categories.Object.Exponential.html#5069" class="Bound">e₁</a> <a id="5072" href="Categories.Object.Exponential.html#5072" class="Bound">e₂</a> <a id="5075" class="Symbol">:</a> <a id="5077" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="5089" href="Categories.Object.Exponential.html#5063" class="Bound">A</a> <a id="5091" href="Categories.Object.Exponential.html#5065" class="Bound">B</a><a id="5092" class="Symbol">)</a> <a id="5094" class="Symbol">→</a> <a id="5096" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="5112" href="Categories.Object.Exponential.html#5069" class="Bound">e₁</a> <a id="5115" href="Categories.Morphism.html#1958" class="Record Operator">≅</a> <a id="5117" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="5133" href="Categories.Object.Exponential.html#5072" class="Bound">e₂</a>
|
||
<a id="5136" href="Categories.Object.Exponential.html#5049" class="Function">up-to-iso</a> <a id="5146" href="Categories.Object.Exponential.html#5146" class="Bound">e₁</a> <a id="5149" href="Categories.Object.Exponential.html#5149" class="Bound">e₂</a> <a id="5152" class="Symbol">=</a> <a id="5154" class="Keyword">record</a>
|
||
<a id="5163" class="Symbol">{</a> <a id="5165" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="5170" class="Symbol">=</a> <a id="5172" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="5179" href="Categories.Object.Exponential.html#5146" class="Bound">e₁</a> <a id="5182" href="Categories.Object.Exponential.html#5149" class="Bound">e₂</a>
|
||
<a id="5187" class="Symbol">;</a> <a id="5189" href="Categories.Morphism.html#2023" class="Field">to</a> <a id="5194" class="Symbol">=</a> <a id="5196" href="Categories.Object.Exponential.html#4082" class="Function">repack</a> <a id="5203" href="Categories.Object.Exponential.html#5149" class="Bound">e₂</a> <a id="5206" href="Categories.Object.Exponential.html#5146" class="Bound">e₁</a>
|
||
<a id="5211" class="Symbol">;</a> <a id="5213" href="Categories.Morphism.html#2040" class="Field">iso</a> <a id="5218" class="Symbol">=</a> <a id="5220" class="Keyword">record</a>
|
||
<a id="5231" class="Symbol">{</a> <a id="5233" href="Categories.Morphism.html#1586" class="Field">isoˡ</a> <a id="5238" class="Symbol">=</a> <a id="5240" href="Categories.Object.Exponential.html#4910" class="Function">repack-cancel</a> <a id="5254" href="Categories.Object.Exponential.html#5149" class="Bound">e₂</a> <a id="5257" href="Categories.Object.Exponential.html#5146" class="Bound">e₁</a>
|
||
<a id="5264" class="Symbol">;</a> <a id="5266" href="Categories.Morphism.html#1612" class="Field">isoʳ</a> <a id="5271" class="Symbol">=</a> <a id="5273" href="Categories.Object.Exponential.html#4910" class="Function">repack-cancel</a> <a id="5287" href="Categories.Object.Exponential.html#5146" class="Bound">e₁</a> <a id="5290" href="Categories.Object.Exponential.html#5149" class="Bound">e₂</a>
|
||
<a id="5297" class="Symbol">}</a>
|
||
<a id="5301" class="Symbol">}</a>
|
||
|
||
<a id="transport-by-iso"></a><a id="5304" href="Categories.Object.Exponential.html#5304" class="Function">transport-by-iso</a> <a id="5321" class="Symbol">:</a> <a id="5323" class="Symbol">∀</a> <a id="5325" class="Symbol">(</a><a id="5326" href="Categories.Object.Exponential.html#5326" class="Bound">e</a> <a id="5328" class="Symbol">:</a> <a id="5330" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="5342" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a> <a id="5344" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a><a id="5345" class="Symbol">)</a> <a id="5347" class="Symbol">→</a> <a id="5349" href="Categories.Object.Exponential.html#643" class="Field">Exponential.B^A</a> <a id="5365" href="Categories.Object.Exponential.html#5326" class="Bound">e</a> <a id="5367" href="Categories.Morphism.html#1958" class="Record Operator">≅</a> <a id="5369" href="Categories.Object.Exponential.html#565" class="Generalizable">X</a> <a id="5371" class="Symbol">→</a> <a id="5373" href="Categories.Object.Exponential.html#583" class="Record">Exponential</a> <a id="5385" href="Categories.Object.Exponential.html#557" class="Generalizable">A</a> <a id="5387" href="Categories.Object.Exponential.html#559" class="Generalizable">B</a>
|
||
<a id="5389" href="Categories.Object.Exponential.html#5304" class="Function">transport-by-iso</a> <a id="5406" class="Symbol">{</a><a id="5407" class="Argument">X</a> <a id="5409" class="Symbol">=</a> <a id="5411" href="Categories.Object.Exponential.html#5411" class="Bound">X</a><a id="5412" class="Symbol">}</a> <a id="5414" href="Categories.Object.Exponential.html#5414" class="Bound">e</a> <a id="5416" href="Categories.Object.Exponential.html#5416" class="Bound">e≅X</a> <a id="5420" class="Symbol">=</a> <a id="5422" class="Keyword">record</a>
|
||
<a id="5431" class="Symbol">{</a> <a id="5433" href="Categories.Object.Exponential.html#643" class="Field">B^A</a> <a id="5449" class="Symbol">=</a> <a id="5451" href="Categories.Object.Exponential.html#5411" class="Bound">X</a>
|
||
<a id="5455" class="Symbol">;</a> <a id="5457" href="Categories.Object.Exponential.html#657" class="Field">product</a> <a id="5473" class="Symbol">=</a> <a id="5475" href="Categories.Object.Exponential.html#6271" class="Function">X×A</a>
|
||
<a id="5481" class="Symbol">;</a> <a id="5483" href="Categories.Object.Exponential.html#767" class="Field">eval</a> <a id="5499" class="Symbol">=</a> <a id="5501" href="Categories.Object.Exponential.html#767" class="Function">e.eval</a>
|
||
<a id="5510" class="Symbol">;</a> <a id="5512" href="Categories.Object.Exponential.html#792" class="Field">λg</a> <a id="5528" class="Symbol">=</a> <a id="5530" class="Symbol">λ</a> <a id="5532" href="Categories.Object.Exponential.html#5532" class="Bound">Y×A</a> <a id="5536" href="Categories.Object.Exponential.html#5536" class="Bound">Y×A⇒B</a> <a id="5542" class="Symbol">→</a> <a id="5544" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="5549" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="5551" class="Symbol">(</a><a id="5552" href="Categories.Object.Exponential.html#792" class="Function">e.λg</a> <a id="5557" href="Categories.Object.Exponential.html#5532" class="Bound">Y×A</a> <a id="5561" href="Categories.Object.Exponential.html#5536" class="Bound">Y×A⇒B</a><a id="5566" class="Symbol">)</a>
|
||
<a id="5570" class="Symbol">;</a> <a id="5572" href="Categories.Object.Exponential.html#865" class="Field">β</a> <a id="5588" class="Symbol">=</a> <a id="5590" class="Symbol">λ</a> <a id="5592" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5596" class="Symbol">{</a><a id="5597" href="Categories.Object.Exponential.html#5597" class="Bound">h</a><a id="5598" class="Symbol">}</a> <a id="5600" class="Symbol">→</a> <a id="5602" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="5612" href="Categories.Object.Exponential.html#767" class="Function">e.eval</a> <a id="5619" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="5621" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="5623" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5627" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="5629" href="Categories.Object.Exponential.html#6271" class="Function">X×A</a> <a id="5633" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="5635" href="Categories.Morphism.html#2006" class="Field">from</a> <a id="5640" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="5642" href="Categories.Object.Exponential.html#792" class="Function">e.λg</a> <a id="5647" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5651" href="Categories.Object.Exponential.html#5597" class="Bound">h</a> <a id="5653" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="5657" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5660" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="5668" href="Categories.Object.Product.Core.html#854" class="Function">e.product.⟨⟩-cong₂</a> <a id="5687" class="Symbol">(</a><a id="5688" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="5694" class="Symbol">(</a><a id="5695" href="Categories.Morphism.Reasoning.Core.html#6851" class="Function">cancelˡ</a> <a id="5703" href="Categories.Morphism.html#1586" class="Function">isoˡ</a><a id="5707" class="Symbol">))</a>
|
||
<a id="5788" class="Symbol">(</a><a id="5789" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">elimˡ</a> <a id="5795" href="Relation.Binary.Structures.html#1577" class="Function">Equiv.refl</a><a id="5805" class="Symbol">)</a> <a id="5807" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="5813" href="Categories.Object.Exponential.html#767" class="Function">e.eval</a> <a id="5820" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="5822" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="5824" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5828" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="5830" href="Categories.Object.Exponential.html#657" class="Function">e.product</a> <a id="5840" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="5842" href="Categories.Object.Exponential.html#792" class="Function">e.λg</a> <a id="5847" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5851" href="Categories.Object.Exponential.html#5597" class="Bound">h</a> <a id="5853" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="5858" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5861" href="Categories.Object.Exponential.html#865" class="Function">e.β</a> <a id="5865" href="Categories.Object.Exponential.html#5592" class="Bound">Y×A</a> <a id="5869" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="5875" href="Categories.Object.Exponential.html#5597" class="Bound">h</a> <a id="5920" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="5924" class="Symbol">;</a> <a id="5926" href="Categories.Object.Exponential.html#991" class="Field">λ-unique</a> <a id="5942" class="Symbol">=</a> <a id="5944" class="Symbol">λ</a> <a id="5946" href="Categories.Object.Exponential.html#5946" class="Bound">Y×A</a> <a id="5950" class="Symbol">{</a><a id="5951" href="Categories.Object.Exponential.html#5951" class="Bound">h</a><a id="5952" class="Symbol">}</a> <a id="5954" class="Symbol">{</a><a id="5955" href="Categories.Object.Exponential.html#5955" class="Bound">i</a><a id="5956" class="Symbol">}</a> <a id="5958" href="Categories.Object.Exponential.html#5958" class="Bound">eq</a> <a id="5961" class="Symbol">→</a>
|
||
<a id="5967" href="Categories.Morphism.Reasoning.Iso.html#907" class="Function">switch-tofromˡ</a> <a id="5982" href="Categories.Object.Exponential.html#5416" class="Bound">e≅X</a> <a id="5986" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="5988" href="Categories.Object.Exponential.html#991" class="Function">e.λ-unique</a> <a id="5999" href="Categories.Object.Exponential.html#5946" class="Bound">Y×A</a> <a id="6003" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="6005" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="6017" href="Categories.Object.Exponential.html#767" class="Function">e.eval</a> <a id="6024" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="6026" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="6028" href="Categories.Object.Exponential.html#5946" class="Bound">Y×A</a> <a id="6032" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="6034" href="Categories.Object.Exponential.html#657" class="Function">e.product</a> <a id="6044" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="6046" href="Categories.Morphism.html#2023" class="Field">to</a> <a id="6049" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="6051" href="Categories.Object.Exponential.html#5955" class="Bound">i</a> <a id="6053" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="6060" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6063" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="6071" href="Categories.Object.Product.Core.html#854" class="Function">e.product.⟨⟩-cong₂</a> <a id="6090" href="Categories.Category.Core.html#715" class="Field">assoc</a> <a id="6096" class="Symbol">(</a><a id="6097" href="Categories.Morphism.Reasoning.Core.html#3063" class="Function">introˡ</a> <a id="6104" href="Relation.Binary.Structures.html#1577" class="Function">Equiv.refl</a><a id="6114" class="Symbol">)</a> <a id="6116" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="6124" href="Categories.Object.Exponential.html#767" class="Function">e.eval</a> <a id="6131" href="Categories.Category.Core.html#656" class="Field Operator">∘</a> <a id="6133" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">[</a> <a id="6135" href="Categories.Object.Exponential.html#5946" class="Bound">Y×A</a> <a id="6139" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">⇒</a> <a id="6141" href="Categories.Object.Exponential.html#6271" class="Function">X×A</a> <a id="6145" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">]</a> <a id="6147" href="Categories.Object.Exponential.html#5955" class="Bound">i</a> <a id="6149" href="Categories.Object.Product.Morphisms.html#4276" class="Function Operator">×id</a> <a id="6167" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6170" href="Categories.Object.Exponential.html#5958" class="Bound">eq</a> <a id="6173" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="6181" href="Categories.Object.Exponential.html#5951" class="Bound">h</a> <a id="6224" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="6228" class="Symbol">}</a>
|
||
<a id="6232" class="Keyword">where</a> <a id="6238" class="Keyword">module</a> <a id="6245" href="Categories.Object.Exponential.html#6245" class="Module">e</a> <a id="6247" class="Symbol">=</a> <a id="6249" href="Categories.Object.Exponential.html#583" class="Module">Exponential</a> <a id="6261" href="Categories.Object.Exponential.html#5414" class="Bound">e</a>
|
||
<a id="6271" href="Categories.Object.Exponential.html#6271" class="Function">X×A</a> <a id="6280" class="Symbol">=</a> <a id="6282" href="Categories.Object.Product.Core.html#5921" class="Function">Mobile</a> <a id="6289" href="Categories.Object.Exponential.html#657" class="Function">e.product</a> <a id="6299" href="Categories.Object.Exponential.html#5416" class="Bound">e≅X</a> <a id="6303" href="Relation.Binary.Structures.html#1577" class="Function">≅.refl</a>
|
||
<a id="6318" class="Keyword">open</a> <a id="6323" href="Categories.Morphism.html#1958" class="Module Operator">_≅_</a> <a id="6327" href="Categories.Object.Exponential.html#5416" class="Bound">e≅X</a>
|
||
</pre></body></html> |