Fix its it's mistakes
This commit is contained in:
parent
bc8309c0cd
commit
34798632f2
|
@ -1,6 +1,6 @@
|
|||
\chapter{Cubical Agda}
|
||||
\section{Propositional equality}
|
||||
Judgmental equality in Agda is a feature of the type-system. It's something that
|
||||
Judgmental equality in Agda is a feature of the type-system. Its something that
|
||||
can be checked automatically by the type-checker: In the example from the
|
||||
introduction $n + 0$ can be judged to be equal to $n$ simply by expanding the
|
||||
definition of $+$.
|
||||
|
@ -81,7 +81,7 @@ endpoints. I.e.:
|
|||
\end{align*}
|
||||
%
|
||||
The notion of ``homogeneous equalities'' is recovered when $P$ does not depend
|
||||
on it's argument:
|
||||
on its argument:
|
||||
%
|
||||
$$
|
||||
a_0 \equiv a_1 \defeq \Path\ (\lambda i \to A)\ a_0\ a_1
|
||||
|
@ -107,7 +107,7 @@ definitionally. So to inhabit it, is to give a path $I \to A$ which is
|
|||
judgmentally $a$ at either endpoint. This is satisfied by the constant path;
|
||||
i.e. the path that stays at $a$ at any index $i$.
|
||||
|
||||
It's also surpisingly easy to show functional extensionality with which we can
|
||||
It is also surpisingly easy to show functional extensionality with which we can
|
||||
construct a path between $f$ and $g$ -- the function defined in the introduction
|
||||
(section \S\ref{sec:functional-extensionality}).
|
||||
%% module _ {ℓa ℓb} {A : Set ℓa} {B : A → Set ℓb} where
|
||||
|
@ -335,8 +335,8 @@ $$
|
|||
\subsection{Pairs over propositions}
|
||||
\label{sec:propSig}
|
||||
%
|
||||
$\sum$-types preserve propositionality whenever it's first component is a
|
||||
proposition, and it's second component is a proposition for all points of in the
|
||||
$\sum$-types preserve propositionality whenever its first component is a
|
||||
proposition, and its second component is a proposition for all points of in the
|
||||
left type.
|
||||
%
|
||||
$$
|
||||
|
|
|
@ -70,7 +70,7 @@ constituents of a category and can be found in typical mathematical expositions
|
|||
on the topic. We, however, impose one further requirement on what it means to be
|
||||
a category, namely that the type of arrows form a set.
|
||||
|
||||
Such categories are called \nomen{1-categories}. It's possible to relax this
|
||||
Such categories are called \nomen{1-categories}. It is possible to relax this
|
||||
requirement. This would lead to the notion of higher categories (\cite[p.
|
||||
307]{hott-2013}). For the purpose of this project, however, this report will
|
||||
restrict itself to 1-categories. Making based on higher categories would be a
|
||||
|
@ -367,7 +367,7 @@ $$
|
|||
\fiber\ f\ b \defeq \sum_{a \tp A} \left( b \equiv f\ a \right)
|
||||
$$
|
||||
%
|
||||
I give it's definition here mainly for completeness, because as I stated we can
|
||||
I give its definition here mainly for completeness, because as I stated we can
|
||||
move away from this specific instantiation and think about it more abstractly
|
||||
once we have shown that this definition actually works as an equivalence.
|
||||
|
||||
|
@ -420,7 +420,7 @@ $$
|
|||
$$
|
||||
%
|
||||
That is, we must demonstrate that there is an isomorphism (on types) between
|
||||
equalities and isomorphisms (on arrows). It's worthwhile to dwell on this for a
|
||||
equalities and isomorphisms (on arrows). It is worthwhile to dwell on this for a
|
||||
few seconds. This type looks very similar to univalence for types and is
|
||||
therefore perhaps a bit more intuitive to grasp the implications of. Of course
|
||||
univalence for types (which is a proposition -- i.e. provable) does not imply
|
||||
|
@ -525,7 +525,7 @@ And this finishes the proof of \ref{eq:coeDomIso} and thus \ref{eq:coeDom}.
|
|||
\subsection{Opposite category}
|
||||
\label{op-cat}
|
||||
The first category I'll present is a pure construction on categories. Given some
|
||||
category we can construct it's dual, called the opposite category. Starting with
|
||||
category we can construct its dual, called the opposite category. Starting with
|
||||
a simple example allows us to focus on how we work with equivalences and
|
||||
univalence in a very simple category where the structure of the category is
|
||||
rather simple.
|
||||
|
@ -566,12 +566,12 @@ section \S\ref{sec:equiv} gave us some tools to work with equivalences. We saw
|
|||
that we can prove this category univalent by giving an inverse to
|
||||
$\wideoverbar{\idToIso} \tp (A \equiv B) \to (A \wideoverbar{\approxeq} B)$.
|
||||
From the original category we have that $\idToIso \tp (A \equiv B) \to (A \cong
|
||||
B)$ is an isomorphism. Let us denote it's inverse with $\isoToId \tp (A
|
||||
B)$ is an isomorphism. Let us denote its inverse with $\isoToId \tp (A
|
||||
\approxeq B) \to (A \equiv B)$. If we squint we can see what we need is a way to
|
||||
go between $\wideoverbar{\approxeq}$ and $\approxeq$.
|
||||
|
||||
An inhabitant of $A \approxeq B$ is simply an arrow $f \tp \Arrow\ A\ B$
|
||||
and it's inverse $g \tp \Arrow\ B\ A$. In the opposite category $g$ will
|
||||
and its inverse $g \tp \Arrow\ B\ A$. In the opposite category $g$ will
|
||||
play the role of the isomorphism and $f$ will be the inverse. Similarly we can
|
||||
go in the opposite direction. I name these maps $\shuffle \tp (A \approxeq
|
||||
B) \to (A \wideoverbar{\approxeq} B)$ and $\shuffle^{-1} \tp (A
|
||||
|
@ -832,7 +832,7 @@ $\pi$ is called the product (arrow) of $f$ and $g$.
|
|||
\newcommand\pairB{\mathcal{B}}
|
||||
Given a base category $\bC$ and two objects in this category $\pairA$ and
|
||||
$\pairB$ we can construct the ``pair category'': \TODO{This is a working title,
|
||||
it's nice to have a name for this thing to refer back to}
|
||||
it is nice to have a name for this thing to refer back to}
|
||||
|
||||
The type of objects in this category will be an object in the underlying
|
||||
category, $X$, and two arrows (also from the underlying category)
|
||||
|
@ -1291,7 +1291,7 @@ The Kleisli-formulation consists of the following data:
|
|||
%
|
||||
The objects $X$ and $Y$ are implicitly universally quantified.
|
||||
|
||||
It's interesting to note here that this formulation does not talk about natural
|
||||
It is interesting to note here that this formulation does not talk about natural
|
||||
transformations or other such constructs from category theory. All we have here
|
||||
is a regular maps on objects and a pair of arrows.
|
||||
%
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\chapter{Source code}
|
||||
\chapter{Source code excerpts}
|
||||
\label{ch:app-sources}
|
||||
In the following a few of the definitions mentioned in the report are included.
|
||||
The following is \emph{not} a verbatim copy of individual modules from the
|
||||
|
@ -6,7 +6,6 @@ implementation. Rather, this is a redacted and pre-formatted designed for
|
|||
presentation purposes. It's provided here as a convenience. The actual sources
|
||||
are the only authoritative source. Is something is not clear, please refer to
|
||||
those.
|
||||
\clearpage
|
||||
\section{Cubical}
|
||||
\label{sec:app-cubical}
|
||||
\begin{figure}[h]
|
||||
|
@ -24,6 +23,7 @@ module _ {ℓ} {A : Set ℓ} where
|
|||
\end{Verbatim}
|
||||
\caption{Excerpt from the cubical library. Definition of the path-type.}
|
||||
\end{figure}
|
||||
\clearpage
|
||||
%
|
||||
\begin{figure}[h]
|
||||
\begin{Verbatim}
|
||||
|
|
Loading…
Reference in a new issue