Usually the foundation of mathematics is thought of as having two pillars: mathematical logic and set theory. We briefly discussed mathematical logic and the foundation of mathematics in the story of Gödel, Brouwer, and Hilbert. The story of set theory is one of the most exciting in the history of mathematics, and its main hero was Georg Cantor, who discovered that there are many types of “infinity.”

Mathematical logic was always considered a very abstract part of mathematical activity, related to philosophy and quite separate from applications of mathematics. With the advent of computers, however, this perception completely changed. Logic was the first, and for many years, the main mathematical discipline used in the development of computers, and to this day large parts of computer science can be regarded as “applied logic.”

While mathematical logic and set theory indeed make up the language spanning all fields of mathematics, mathematicians rarely speak it. To borrow notions from computers, basic mathematical logic can be regarded as the “machine language” for mathematicians who usually use much higher languages and who do not worry about “compilation.” (Compilation is the process of translating a high programming language into machine language.)

The story of Category Theory is markedly different from that of mathematical logic and set theory. It was invented Continue reading