Let be an additive category. A chain complex in is a sequence of morphisms
such that for all .
A chain complex is often notated simply as and the morphisms in the complex are sometimes generically all denoted , so long as no confusion will arise. In that scenario, we can write simply .
Note that while it looks like we are disallowing finite chain complexes, that is not actually true. Recall that our additive category necessarily has a null object, , and so any finite chain complex can be "turned into" an infinite chain complex by appending (or pre-appending) zero morphisms to/from the null object.
We can also define morphisms between chain complexes:
Definition of morphism of chain complexes
Let and be two chain complexes in an additive category . A morphism of chain complexes (or chain map) is a collection of morphisms such that all diagrams as below commute:
Chain maps are often denoted (or even simply , if there is no risk of confusion). Chain complexes with chain maps between them form a category, called the category of chain complexes in , denoted (or simply ). I've seen this category denoted .
In any case, it's not just an arbitrary category ...
The category of chain complexes is abelian
If is an abelian category, then so is .
At some point this note will be updated with a proof of this result. For future reference, the kernel of a chain map is the complex of degree-wise kernels, which we may as well denote . Similarly, the cokernel of a chain map is the complex of degree-wise cokernels.
Now that we know is an abelian category, it makes sense to think about chain complexes in . These are the classical double chain complexes in , usually just called double complexes. These will be critical to the various diagram lemmas one encounters when studying chain complexes.
Unfortunately common terminology
Due to the historical roots of the concept, there are a variety of unusual terms frequently used when dealing with chain complexes.
The morphisms are often called differentials or boundary maps.
The elements of (assuming is a concrete category) are called -chains.
The elements of are called -cycles.
The elements of are called -boundaries.
Warning
One can argue that for an abstract abelian category these names are inappropriate, in so much as they are evocative of certain geometric features that have no context or interpretation in an abstract abelian category. As such, I tend to avoid their use.
Cochain complexes
You'll often hear about cochain complexes and cohomology. On the one hand, these are pretty much exactly what you would expect:
Definition of cochain complex
A cochain complex in an additive category, , is a chain complex in . In other words, it is a sequence of morphisms
such that for all .
In terms of abstract category theory there is no reason to distinguish between chain complexes and cochain complexes, since the difference is entirely in the notation. Historically, however, the two developed separately and so were distinguished with different notation.