Category theory was invented in the 1940s to unify and synthesize different areas in mathematics, and it has proven remarkably successful in enabling powerful communication between disparate fields and subfields within mathematics. This book shows that category theory can be useful outside of mathematics as a rigorous, flexible, and coherent modeling language throughout the sciences. Information is inherently dynamic; the same ideas can be organized and reorganized in countless ways, and the ability to translate between such organizational structures is becoming increasingly important in the sciences. Category theory offers a unifying framework for information modeling that can facilitate the translation of knowledge between disciplines. Written in an engaging and straightforward style, and assuming little background in mathematics, the book is rigorous but accessible to non-mathematicians. Using databases as an entry to category theory, it begins with sets and functions, then introduces the reader to notions that are fundamental in mathematics: monoids, groups, orders, and graphs -- categories in disguise. After explaining the "big three" concepts of category theory -- categories, functors, and natural transformations -- the book covers other topics, including limits, colimits, functor categories, sheaves, monads, and operads. The book explains category theory by examples and exercises rather than focusing on theorems and proofs. It includes more than 300 exercises, with solutions. *Category Theory for the Sciences* is intended to create a bridge between the vast array of mathematical concepts used by mathematicians and the models and frameworks of such scientific disciplines as computation, neuroscience, and physics.

example, one may not publish the kind of solution-ﬁnding method (e.g., Newton’s method or Runge-Kutta) that was used, or the set of available actions, e.g., what kinds of perturbation were used by the researcher. However, these may actually inﬂuence the reproducibility of results. By using a language such as that of monoid actions, we can align our data model with our unspoken assumptions about how functions are analyzed. ♦♦ Remark 4.1.2.7. A monoid is useful for understanding how an agent acts

to see that px cos θ ` y sin θq2 ` p´x sin θ ` y cos θq2 ` z 2 “ x2 ` y 2 ` z 2 “ 1. Exercise 4.2.1.11. Let X be a set and consider the group IsopXq of permutations of X (see Exercise ♦ 4.2.1.7). Find a canonical action of IsoX on X. Solution 4.2.1.11. – Ñ X. To get an action ü : IsopXq ˆ The elements of IsopXq are isomorphisms f : X Ý X Ñ X, we need, for every pair pf, xq, an element of X. The obvious choice is f pxq P X.6 Let’s check that this really gives an action. For any f, g P IsopXq and

a person to clarify her assumptions. This is highly valuable both for the researcher and for her audience. What must be recognized in order to ﬁnd value in this book is that conceptual chaos is a major problem. Creativity demands clarity of thinking, and to think clearly about a subject requires an organized understanding of how its pieces ﬁt together. Organization and clarity also lead to better communication with others. Academics often say they are paid to think and understand, but that is not

basic open sets still has this property. That is, an open set in R2 is any subset U Ď R2 that can be formed as the union of a collection of basic open sets. Example 4.4.5.8. Let U “ tpx, yq P R2 | x ą 0u. To see that U is open, deﬁne the following sets: for any a, b P R, let Spa, bq be the square parallel to the axes, with side length 1, where the upper left corner is pa, bq. Note that Spa, bq is a closed curve, so if we let S 1 pa, bq be the interior of Spa, bq, then each S 1 pa, bq is a basic

domain of the function f , and we call Y the codomain of f . Note that for every element x P X, there is exactly one arrow emanating from x, but for an element y P Y , there can be several arrows pointing to y, or there can be no arrows pointing to y (see Figure 2.2). Slogan 2.1.2.1. Given a function f : X Ñ Y , we think of X as a set of things, and Y as a set of bins. The function tells us in which bin to put each thing. 12 CHAPTER 2. THE CATEGORY OF SETS X Y x1 y1 x2 y2 x3 y3 y4 x4