-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathintroduction.tex
More file actions
55 lines (47 loc) · 2.61 KB
/
introduction.tex
File metadata and controls
55 lines (47 loc) · 2.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
%% -*- coding:utf-8 -*-
\chapter*{Introduction}
You just looked at yet another introduction to Category Theory. The
subject mostly consists of a lot of definitions that are related to each
other. We wrote the book to collect all the definitions in one
place to be checked and updated easily in the future when we decide to refresh
our knowledge about the field of mathematics. Thus the book was written mostly
for our category theory study purposes, but we shall appreciate it if
somebody else finds it useful.
The topics (chapters) cover base definitions
(\mynameref{def:object}, \mynameref{def:morphism} and
\mynameref{def:category}) as well as more advanced ones (\mynameref{def:functor},
\mynameref{def:nt}, \mynameref{def:monad}) and also include important
results from category theory such as Yoneda's lemma (see
\cref{sec:yoneda}) and Curry-Howard-Lambek correspondence (see
\cref{sec:curry_howard_lambek}). The \cref{sec:topos} gives an
introduction to topos theory i.e. just another view of
\mynameref{def:set}s.
There are a lot of examples in each chapter. The examples cover
different category
theory application areas. We assume that the reader is familiar with
the corresponding area and the examples can be skipped otherwise. I.e.
anyone can choose suitable examples for themselves.
The most important examples are related to the set theory. The set
theory and category theory are very closely related. Each one can be
considered as an alternative view of the other one.
There are also several examples from programming languages which include
Haskell, Scala, C\texttt{++}. The source files for programming languages
examples (Haskell, C\texttt{++}, Scala) can be found on github repositories:
\begin{itemize}
\item Haskell: \cite{github:cattheory_hs_examples}
\item Scala: \cite{github:cattheory_scala_examples}
\item C\texttt{++}: \cite{github:cattheory_cpp_examples}
\end{itemize}
The examples from physics are related to quantum mechanics that is the
best known to us. For the examples we were inspired by the Bob Coecke
article \cite{bib:arxiv:Bob_Coecke_2008}.
There is also additional material related to abstract algebra (see
\cref{sec:abstractalgebra}) taken from
\cite{github:galois_ivanmurashko}. The material describes the
different math constructions used in the book.
The text is distributed under \textbf{Creative Common Public License}
(see the text of the license at the end of the book)
i.e. any reader has the right to copy, store, modify, distribute or build
upon the book as long as the original authors are mentioned in the derivative
products. The initial text of the book can be found at
\cite{github:cattheory_ivanmurashko}.