How should we conceive of concepts, of cognition, or of circuit computation? We argue: compositionally. Composition is the tool by which we construct complex concepts: constantly, informally, and automatically. But it is not just our concepts that are compositional: it has long been noted that our cognitive architecture is modular (fodor1983modularity; marcus2018deep), and much of cognitive neuroscience relies on the well-tested assumption that this modularity maps onto the structure of the brain. Mathematics itself is increasingly recognized as compositional (kock2006synthetic; bauer2017hott), and strong compositionality is increasingly used in software engineering to improve correctness and code reusability (fischer2017haskell; haftmann2010higher)
. Despite this simplifying power, few models in cognitive science and machine learning are actually compositional, even when modelling compositionality itself (eg., (chang2016compositional; piantadosi2016logical)).
We propose instead taking compositionality seriously, using the mathematics of composition—category theory—and show how doing so allows us to translate concepts between contexts and levels: from abstract concepts themselves (phillips2010categorial; bolt2019interacting) to their possible realization in a circuit model. This paper is an abridged version of a work in progress, provisionally to appear in Compositionality, and we defer many formal details and proofs to that manuscript. In §2 we introduce the background mathematics. In §LABEL:sec:concepts, we introduce the conceptual setting. §LABEL:sec:circ shows how to translate concepts to circuits, and §LABEL:sec:back suggests how to translate back again.
2 Category theory and the ‘structure of structure’
A category is a very simple structure, capturing only what is necessary to enforce compositionality:
A category is a set of objects such that for any two objects there is a set of arrows obeying a composition rule: for any arrow and any arrow , there is a composite arrow . Every object has an identity arrow, .
Being so general, almost all concepts can be formalized categorically. For example, there is a category whose objects are parts of speech and whose arrows are grammatical relations; and a category of vector spaces and linear maps. Category theory can also be applied to itself: there is a categoryof categories, whose arrows are called functors: