# Category theory
Category theory is the mathematics of composition: it studies objects not by their internal contents but by the arrows (morphisms) between them and the single axiom that arrows compose associatively with identities. Invented by Samuel Eilenberg and Saunders Mac Lane in 1945 to make precise what "natural" meant in [[Topology|topology]], it grew into a rival foundation to [[Set_theory|set theory]] and a working lingua franca across [[Abstract_algebra|abstract algebra]], [[Logic|logic]], [[Algebraic_geometry|algebraic geometry]], and the [[Theory_of_computation|theory of computation]]. Its wager is radical and testable: everything worth knowing about a mathematical object is already encoded in how it maps to and from everything else. For the vault's systems reader, that wager should sound familiar — it is the relational stance of [[Systems_theory|systems theory]], stated with proofs: structure lives in the pattern of interactions, not in the pieces.
## Objects, arrows, and one axiom
A category is a [[Directed_graph|directed graph]] equipped with a composition law: objects as vertices, morphisms as arrows, and for arrows f: A→B and g: B→C a composite g∘f: A→C, associative, with an identity arrow at every object. The examples show the reach. **Set** has [[Set_theory|sets]] as objects and functions as arrows; **Grp** has groups and homomorphisms ([[Group_theory|group theory]] as a single object of study); **Top** has [[Topology|topological spaces]] and continuous maps; **Vect** has vector spaces over a [[Field_(mathematics)|field]] and the linear maps of [[Linear_algebra|linear algebra]]; a preorder is a category with at most one arrow between any two objects; a monoid is a category with exactly one object. Already one economy appears: a definition made once — isomorphism, product, quotient — instantiates correctly in every category at no extra cost, which is why the language spread through [[Mathematics|mathematics]] like a standard [[Communication_protocol|protocol]].
## Functors and natural transformations: maps between theories
The 1945 innovation was not categories but the maps between them. A functor F: C→D sends objects to objects and arrows to arrows, preserving composition — it is a structure-respecting translation of one mathematical universe into another. Homology is the founding example: a functor from **Top** to abelian groups, converting continuous problems into computable [[Abstract_algebra|algebra]], the machinery behind the [[Euler_characteristic|Euler characteristic]] and the classification of [[Surface_(topology)|surfaces]]. One level up, a natural transformation compares two functors component-wise, capturing exactly the "no arbitrary choices" quality that mathematicians had gestured at for decades. This two-level grammar — translate, then compare translations — is the field's working method, and it is why category theory functions as mathematics' [[Metamodeling|metamodel]]: a theory whose objects are theories and whose arrows are [[Mathematical_model|modelings]].
## Universal properties: definition by interface
Category theory's deepest habit is defining things by the role they play rather than the stuff they contain. A product A×B is *whatever* object receives projections to A and B such that any object with maps to both factors routes uniquely through it; the definition never mentions ordered pairs. The [[Tensor|tensor]] product, free [[Group_theory|groups]], limits, colimits, and quotients all fall to the same template, and any two objects satisfying a universal property are isomorphic — the interface pins down the implementation up to unique isomorphism. Daniel Kan's adjoint functors (1958) systematized the pattern: an adjunction F ⊣ G is a precise "best possible approximation" contract between two categories, and an astonishing fraction of mathematics turns out to consist of adjunctions. The Yoneda lemma seals the relational wager: an object is completely determined by the totality of arrows into it — in slogan form, *you are how everything maps to you*. [[Engineering|Engineering]] knows this move as specification by interface; [[Systems_engineering|systems engineering]] writes [[Function_model|function models]] and [[Non-functional_requirement|requirements]] in exactly this spirit, constraining behavior at the boundary while leaving internals free.
## Computation: the categorical machine room
The theory's second career is semantic. Lambek showed (1970s–80s) that the typed λ-calculus — the [[Formal_system|formal system]] underneath functional [[Computer_programming|programming]] — *is* the internal language of cartesian closed categories: types are objects, programs are arrows, and program composition is literally categorical composition. Monads, an algebraic gadget from the 1960s, became the standard way functional languages structure side effects; functorial semantics (Lawvere, 1963) recast whole algebraic theories as functors; and dependently typed proof assistants that machine-check [[First-order_logic|formal derivations]] lean on the categorical reading of [[Logic|logic]], where [[Proposition|propositions]] are objects and proofs are arrows. The practical consequence for [[Computer_science|computer science]] and [[Software_engineering|software engineering]] is compositional correctness: prove properties of components and of the composition operator, and properties of assemblies follow — the only strategy that scales past [[Correctness_(computer_science)|correctness]] audits of monoliths.
## Composing open systems
The newest chapter, applied category theory, aims squarely at the vault's home turf: [[System|systems]] that compose. [[Block_diagram|Block diagrams]] and [[Signal-flow_graph|signal-flow graphs]] in [[Control_theory|control theory]], [[Electronics|circuit]] assemblies, Petri-net [[Mathematical_chemistry|reaction networks]], and Markov-process couplings have each been recast as categories whose arrows are open systems — boundary in, boundary out — with composition as literal interconnection. Baez, Spivak, Fong, and collaborators (2010s) built the wiring-diagram calculus that makes "connect these subsystems" an algebraic operation with theorems, so conserved quantities and behavioral guarantees push through interconnection instead of being re-derived per assembly. This is [[Cybernetics|cybernetics]]' old dream — laws of connection, not just of components — pursued with adjunctions instead of analogies, and it gives [[Systems_science|systems science]] something it has chronically lacked: a mathematics in which an [[Open_system_(systems_theory)|open system]] is the primitive and closure is the special case. Where [[Graph_theory|graph theory]] gives systems their skeleton, category theory is bidding to supply the grammar of their assembly.
**On the spine:** [[Set_theory]] · [[Topology]] · [[Abstract_algebra]] · [[Theory_of_computation]] · [[Systems_theory]].
## Wikipedia : Wikitube
**Strict pair:** [Wikipedia](https://en.wikipedia.org/wiki/Category_theory) : [Wikitube](https://en.wikitube.io/wiki/Category_theory)
## Previous hub tags
Hubs: `Systems`. Portals: [[PORTAL_Systems]], [[PORTAL_Graph_theory]], [[PORTAL_Dynamical_system]], [[PORTAL_Information_theory]], [[PORTAL_Control_theory]].
---
*Repopulated 2026-08-12 · redlink fill · 0 deletions.*