[proofplan]
We establish the direct limit description of compactly supported cohomology by showing it at the cochain level and then passing to cohomology. The compactly supported cochain complex $C_c^n(X; R)$ is defined as $\varinjlim_{K \in \mathcal{K}(X)} C^n(X, X \setminus K; R)$, where $\mathcal{K}(X)$ is the directed set of compact subsets of $X$ ordered by inclusion. Since cohomology commutes with direct limits of cochain complexes (the direct limit of an exact sequence of directed systems is exact), $H_c^n(X; R) \cong \varinjlim_{K \in \mathcal{K}(X)} H^n(X, X \setminus K; R)$.
[/proofplan]
[step:Identify the compactly supported cochain complex as a direct limit]
Write $H^n(X \mid K; R) := H^n(X, X \setminus K; R)$ for the local cohomology of $X$ supported on $K$. The directed set is $\mathcal{K}(X) = \{K \subseteq X : K \text{ compact}\}$, ordered by inclusion $K \subseteq L$.
For compact sets $K \subseteq L$, the inclusion $X \setminus L \subseteq X \setminus K$ induces a restriction map of cochain complexes:
\begin{align*}
\iota_{K,L}: C^n(X, X \setminus K; R) \to C^n(X, X \setminus L; R),
\end{align*}
since a cochain that vanishes on chains in $X \setminus K$ a fortiori vanishes on chains in $X \setminus L \subseteq X \setminus K$. These maps are compatible: for $K \subseteq L \subseteq M$, we have $\iota_{K,M} = \iota_{L,M} \circ \iota_{K,L}$, and $\iota_{K,K} = \operatorname{id}$. Thus $\{C^n(X, X \setminus K; R)\}_{K \in \mathcal{K}(X)}$ forms a directed system of cochain complexes.
The compactly supported cochain complex is defined as this direct limit:
\begin{align*}
C_c^n(X; R) := \varinjlim_{K \in \mathcal{K}(X)} C^n(X, X \setminus K; R).
\end{align*}
An element of $C_c^n(X; R)$ is a cochain $\phi \in C^n(X; R)$ that is "supported on some compact set" — i.e., there exists a compact $K$ such that $\phi$ vanishes on every singular simplex whose image lies in $X \setminus K$.
[guided]
The construction mirrors the usual passage from local to global. A compactly supported cochain is one that "sees" only a compact region of $X$, ignoring everything outside. Different representatives of the same element in the direct limit may use different compact supports $K$ and $L$, but they agree after passing to any common enlargement $K \cup L$.
The directedness of $\mathcal{K}(X)$ is critical: if $K$ and $L$ are compact, so is $K \cup L$, so any two elements of the directed system can be compared after embedding into the cochain complex relative to $K \cup L$.
[/guided]
[/step]
[step:Pass from cochains to cohomology using the direct limit]
The coboundary map $\delta: C^n(X, X \setminus K; R) \to C^{n+1}(X, X \setminus K; R)$ commutes with the transition maps $\iota_{K,L}$, so the direct limit inherits a coboundary map $\delta: C_c^n(X; R) \to C_c^{n+1}(X; R)$, making $C_c^\bullet(X; R)$ a cochain complex. The compactly supported cohomology is defined as
\begin{align*}
H_c^n(X; R) := H^n(C_c^\bullet(X; R)).
\end{align*}
We now apply the algebraic fact that cohomology commutes with direct limits over directed sets. The direct limit functor $\varinjlim$ over a directed set is exact in the category of $R$-modules (it preserves short exact sequences). Applying this to the short exact sequences
\begin{align*}
0 \to Z^n(X, X \setminus K; R) \to C^n(X, X \setminus K; R) \xrightarrow{\delta} B^{n+1}(X, X \setminus K; R) \to 0
\end{align*}
and
\begin{align*}
0 \to B^n(X, X \setminus K; R) \to Z^n(X, X \setminus K; R) \to H^n(X, X \setminus K; R) \to 0,
\end{align*}
where $Z^n$ denotes cocycles and $B^n$ denotes coboundaries, we obtain
\begin{align*}
\varinjlim_K Z^n(X, X \setminus K; R) &= Z^n(C_c^\bullet(X; R)), \\
\varinjlim_K B^n(X, X \setminus K; R) &= B^n(C_c^\bullet(X; R)).
\end{align*}
Passing the second short exact sequence to the direct limit (which preserves exactness):
\begin{align*}
H_c^n(X; R) = \frac{Z^n(C_c^\bullet)}{B^n(C_c^\bullet)} = \frac{\varinjlim_K Z^n(X, X \setminus K; R)}{\varinjlim_K B^n(X, X \setminus K; R)} \cong \varinjlim_K \frac{Z^n(X, X \setminus K; R)}{B^n(X, X \setminus K; R)} = \varinjlim_K H^n(X, X \setminus K; R).
\end{align*}
This gives the desired isomorphism $H_c^n(X; R) \cong \varinjlim_{K \in \mathcal{K}(X)} H^n(X \mid K; R)$.
[guided]
The key algebraic ingredient is the exactness of the direct limit functor over a directed set. This is a standard result in commutative algebra: for a directed system of modules $(M_i)_{i \in I}$ and short exact sequences $0 \to A_i \to B_i \to C_i \to 0$ with compatible transition maps, the sequence $0 \to \varinjlim A_i \to \varinjlim B_i \to \varinjlim C_i \to 0$ is exact. The proof uses the explicit construction of the direct limit as a quotient of the disjoint union, together with the directedness condition to verify injectivity on the left.
Why does this matter? It allows us to compute cohomology "one compact set at a time" and then assemble the results. Each $H^n(X, X \setminus K; R)$ captures the cohomological information of $X$ that is visible from the compact set $K$, and the direct limit assembles these local-in-support snapshots into the global compactly supported cohomology. This perspective is essential for proving results like the Mayer-Vietoris sequence for compactly supported cohomology, where one works with compact subsets of the open pieces and passes to the limit.
[/guided]
[/step]