forked from BartoszMilewski/Publications
-
Notifications
You must be signed in to change notification settings - Fork 0
/
SKI.tex
134 lines (112 loc) · 6.19 KB
/
SKI.tex
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
\documentclass[11pt]{amsart}
\usepackage[a4paper,verbose]{geometry}
\geometry{top=3cm,bottom=3cm,left=3cm,right=3cm,textheight=595pt}
\setlength{\parskip}{0.3em}
% ==============================
% PACKAGES
% ==============================
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{caption}
\usepackage[inline]{enumitem}
\setlist{itemsep=0em, topsep=0em, parsep=0em}
\setlist[enumerate]{label=(\alph*)}
\usepackage{etoolbox}
\usepackage{stmaryrd}
\usepackage[dvipsnames]{xcolor}
\usepackage[]{hyperref}
\hypersetup{
colorlinks,
linkcolor=blue,
citecolor=blue,
urlcolor=blue}
\usepackage{graphicx}
\graphicspath{{assets/}}
\usepackage{mathtools}
\usepackage{tikz-cd}
\usepackage{minted}
\usepackage{float}
\usetikzlibrary{
matrix,
arrows,
shapes
}
\setcounter{tocdepth}{1} % Sets depth for table of contents.
% ======================================
% MACROS
%
% Add your own macros below here
% ======================================
\newcommand{\rr}{{\mathbb{R}}}
\newcommand{\nn}{{\mathbb{N}}}
\newcommand{\iso}{\cong}
\newcommand{\too}{\longrightarrow}
\newcommand{\tto}{\rightrightarrows}
\newcommand{\To}[1]{\xrightarrow{#1}}
\newcommand{\Too}[1]{\To{\;\;#1\;\;}}
\newcommand{\from}{\leftarrow}
\newcommand{\From}[1]{\xleftarrow{#1}}
\newcommand{\Cat}[1]{\mathbf{#1}}
\newcommand{\cat}[1]{\mathcal{#1}}
\newtheorem*{remark}{Remark}
\renewcommand{\ss}{\subseteq}
\newcommand{\hask}[1]{\mintinline{Haskell}{#1}}
\newenvironment{haskell}
{\VerbatimEnvironment
\begin{minted}[escapeinside=??, mathescape=true,frame=single, framesep=5pt, tabsize=1]{Haskell}}
{\end{minted}}
% ======================================
% FRONT MATTER
% ======================================
\author{Bartosz Milewski}
\title{The fall of the SKI civilization}
\begin{document}
\maketitle{}
\begin{abstract}
The recent breakthroughs in deciphering the language and the literature left behind by the now extinct Twinklean civilization provides valuable insights into their history, science, and philosophy.
\end{abstract}
The oldest documents discovered on the third planet of the star Lambda Combinatoris (also known as the Twinkle star) talk about the prehistory of the Twinklean thought. The ancient \emph{Book of Application} postulated that the \emph{Essence of Being} is decomposition, expressed symbolically as
\[ A = B C\]
meaning that $A$ can be decomposed into $B$ and $C$. The breakthrough came with the realization that, if $C$ itself can be decomposed
\[ C = F G\]
then $A$ could be further decomposed into
\[ A = B (F G)\]
Similarly, if $B$ can be decomposed
\[ B = D E\]
then
\[ A = (D E) C\]
In the latter case (but not the former), it became customary to drop the parentheses and simply write it as
\[ A = D E C\]
Following these discoveries, the Twinklean civilization went through a period called \emph{The Great Decomposition} that lasted almost three thousand years, during which essentially anything that could be decomposed was successfully decomposed.
At the end of \emph{The Great Decomposition}, a new school of thought emerged, claiming that, if things can be decomposed into parts, they can be also recomposed from these parts.
Initially there was strong resistance to this idea. The argument was put forward that decomposition followed by recomposition doesn't change anything. This was settled by the introduction of a special object called \emph{The Eye}, denoted by $I,$ defined by the unique property of leaving things alone
\[ I A = A\]
After the introduction of $I$, a long period of general stagnation accompanied by lack of change followed.
We also don't have many records from the next period, as it was marked by attempts at forgetting things and promoting ignorance. It started by the introduction of $K$, which ignores one of its inputs
\[ K A B = A\]
Notice that this definition is a shorthand for the parenthesized version
\[ (K A) B = A\]
The argument for introducing $K$ was that ignorance is an important part of understanding. By rejecting $B$ we are saying that $A$ is important. We are abstracting away the inessential part $B$.
For instance---the argument went---if we decompose $C$
\[ C = A B\]
and $D$ happens to have a similar decomposition
\[ D = A E\]
then $K$ will abstract the $A$ part from both $C$ and $D$. From the perspective of $K$, there is no difference between $C$ and $D$.
The only positive outcome of the \emph{Era of Ignorance} was the development of abstract mathematics. Twinklean thinkers argued that, if you disregard the particularities of the fruit in question, there is no difference between having three apples and three oranges. Number three was thus born, followed by many others (four and seven, to name just a few).
The final \emph{Industrial} phase of the Twinklean civilization that ultimately led to their demise was marked by the introduction of $S$. The Twinklean industry was based on the principle of mass production; and mass production starts with duplication and reuse. Suppose you have a reusable part $C$. $S$ allows you to duplicate $C$ and combine it with both $A$ and $B$.
\[ S A B C = (A C) (B C)\]
If you think of $A$ and $B$ as abstractions---that is the results of ignoring some parts of the whole---$S$ lets you substitute $C$ in place of those forgotten parts.
Or, conversely, it tells you that the object
\[ E = S A B C\]
can be decomposed into two parts that have something in common. This common part is $C$.
Unfortunately, during the \emph{Industrial} period, a lot of Twinkleans lost their identity. They discovered that
\[ I = S K K\]
Indeed
\[ I A = S K K A = K A (K A) = A\]
But ultimately, what precipitated their end was the existential crisis. They lost their will to live because they couldn't figure out $Y$.
Postscript: After submitting this paper to the journal of \emph{Compositionality}, we have been informed by the reviewer that a similar theory of SKI combinators was independently developed on Earth by a Russian logician, Moses Schönfinkel. According to this reviewer, the answer to the meaning of life is the $Y$ combinator, which introduces recursion and can be expressed as
\[ Y = S(K(SII))(S(S(KS)K)(K(SII)))\]
We were unable to verify this assertion, as it led us into a rabbit hole.
\end{document}