Rosetta Stone Project in Category Theory

The goal of the Rosetta Project is to develop a series of papers that act as Rosetta Stones for undergraduate students in understanding theoretical mathematics and theoretical computer science. The Rosetta papers are not research treatises; they are meant to promote self-study in advanced subjects. These papers are language intensive because the study of mathematics is language intensive. In fulfilling the Rosetta purpose, every attempt will be made to explain terminology especially when that terminology is not usually defined.

I assume that the reader has had a discrete mathematics course in which set theory was studied. In light of current curricula, I also assume introductory calculus. What will become apparent is that calculus plays almost no role in these papers. Computation is essentially an algebraic exercise.

The audience is computer scientists. Therefore, I will take a {\bf constructive} viewpoint on definitions and proofs. This means that I am approaching any subject with the mindset of a programmer. The goal is to understand what the subject says about the two notions of programming: representation and algorithm.

The writing style for these papers is that of "just in time". That is, ideas are introduced as they naturally occur. Therefore, these papers are explanatory and not meant to be a research treatise --- there are an ample number of such texts. The final section of the paper will be a concept map that properly describes the relationships among the terms. Words in {\bf bold face} are concept words: these are words that play key roles in using knowledge of computation.

Rosetta Papers


Steve Stevenson