De Rham Theorem (Theorem # 3596)
Theorem
For every Hausdorff, second-countable smooth manifold $M$ and every $k \ge 0$, the [de Rham homomorphism](/theorems/3595)
\begin{align*}
I:H^k_{\mathrm{dR}}(M) \to H^k_{\mathrm{sing}}(M;\mathbb R)
\end{align*}
is an isomorphism. The isomorphism is natural with respect to smooth maps: if $f:N\to M$ is smooth between Hausdorff, second-countable smooth manifolds, then the comparison maps commute with pullback by $f$.
Discussion
This theorem states For every Hausdorff, second-countable smooth manifold M and every k 0, the 83 align* I:H^k_dR(M) H^k_sing(M; R) align* is an isomorphism.. In these notes it supports the passage from local exterior-calculus computations to global geometric and cohomological structure.
Proof
[proofplan]
We construct the de Rham map $I_M$ via integration of forms over smooth simplices and verify that it is a natural cochain map. The strategy is a Mayer–Vietoris induction on a **good cover** (an open cover whose finite intersections are all diffeomorphic to convex open subsets of $\mathbb R^n$). The base case is the contractible open: there the smooth Poincaré lemma (external standard result: closed forms on star-shaped opens are exact in positive degree and degree $0$ consists of constants on connected opens) collapses the de Rham complex onto $\mathbb R$ in degree $0$, and contractibility collapses singular cohomology to the same, with $I_M$ identifying both with the constants. The inductive step combines [Mayer-Vietoris](/theorems/1533) for de Rham with Mayer–Vietoris for singular cohomology; naturality of $I$ produces a ladder of long exact sequences, and the [Five Lemma](/theorems/1938) propagates isomorphism from pieces to unions. A countable colimit argument extends the result from manifolds with a finite good cover to all smooth manifolds. Naturality under smooth maps is built into the construction. *The proof uses the smooth Poincaré lemma, the good-cover theorem for Hausdorff second-countable manifolds, smooth Mayer–Vietoris via the smooth small-chains theorem, the smoothing comparison between smooth and ordinary singular cohomology, and the compact-exhaustion theorem as external standard inputs not yet entered as wiki theorems. The argument below spells out how these inputs are used; each should be added as a separate reference theorem (see Bott–Tu and Lee).*
[/proofplan]
[step:Define the de Rham cochain map and verify it commutes with $d$]
Fix a smooth manifold $M$. For each $k\ge 0$, let $C^k_\infty(M;\mathbb R)$ denote the real [vector space](/page/Vector%20Space) of singular cochains generated by **smooth** singular simplices, that is, smooth maps $\sigma:\Delta^k\to M$ from the standard simplex $\Delta^k = \{(t_0,\dots,t_k)\in\mathbb R^{k+1}_{\ge 0} : \sum t_i = 1\}$, viewed as a smooth manifold-with-corners. Let $C^\bullet_\infty(M;\mathbb R)$ denote the resulting cochain complex with the usual simplicial coboundary $\delta$. Define
\begin{align*}
I_M^k:\Omega^k(M) &\to C^k_\infty(M;\mathbb R) \\
\omega &\mapsto \Bigl[\sigma\mapsto \int_{\Delta^k}\sigma^*\omega\Bigr].
\end{align*}
The integral is the [Integration of Differential Forms](/theorems/1529) on the oriented manifold-with-corners $\Delta^k$, applied to the smooth pullback $\sigma^*\omega\in\Omega^k(\Delta^k)$.
[claim:The integration map commutes with the exterior derivative]
For every $k\ge 0$, the identity
\begin{align*}
\delta\circ I_M^k = I_M^{k+1}\circ d
\end{align*}
holds as maps $\Omega^k(M)\to C^{k+1}_\infty(M;\mathbb R)$.
[/claim]
[proof]
Let $\omega\in\Omega^k(M)$ and let $\sigma:\Delta^{k+1}\to M$ be a smooth singular simplex. By definition of the simplicial coboundary,
\begin{align*}
(\delta I_M^k\omega)(\sigma) &= \sum_{j=0}^{k+1}(-1)^j \int_{\Delta^k}(\sigma\circ\partial_j)^*\omega = \sum_{j=0}^{k+1}(-1)^j\int_{\partial_j\Delta^{k+1}}\sigma^*\omega = \int_{\partial\Delta^{k+1}}\sigma^*\omega,
\end{align*}
where $\partial_j:\Delta^k\to\Delta^{k+1}$ is the $j$-th face inclusion, explicitly $\partial_j(t_0,\dots,t_k)=(t_0,\dots,t_{j-1},0,t_j,\dots,t_k)$, and the last equality is the definition of integration over the signed oriented boundary of the simplex. Applying [Stokes' Theorem](/theorems/1530) to the smooth form $\sigma^*\omega$ on $\Delta^{k+1}$,
\begin{align*}
\int_{\partial\Delta^{k+1}}\sigma^*\omega &= \int_{\Delta^{k+1}}d(\sigma^*\omega) = \int_{\Delta^{k+1}}\sigma^*(d\omega) = (I_M^{k+1}d\omega)(\sigma).
\end{align*}
We used that pullback commutes with $d$ ($d\circ\sigma^* = \sigma^*\circ d$ on $\Omega^k(M)$) and the definition of $I_M^{k+1}$. This proves the claim.
[/proof]
Therefore $I_M^\bullet:\Omega^\bullet(M)\to C^\bullet_\infty(M;\mathbb R)$ is a cochain map, inducing $I_M^*:H^k_{\mathrm{dR}}(M)\to H^k_\infty(M;\mathbb R)$.
[guided]
We must first say what the de Rham map *is* as a cochain map between concrete complexes, then check that it commutes with the differentials. The target $C^k_\infty(M;\mathbb R)$ of *smooth* singular cochains is used rather than ordinary singular cochains $C^k_{\mathrm{sing}}(M;\mathbb R)$ because integration requires smooth pullbacks: the integrand $\sigma^*\omega$ makes sense as a differential $k$-form only when $\sigma$ is smooth. The identification of $H^\bullet_\infty(M;\mathbb R)$ with $H^\bullet_{\mathrm{sing}}(M;\mathbb R)$ is a separate theorem (Step 6 below).
For the cochain-map identity, given a smooth $(k+1)$-simplex $\sigma$ in $M$ and a $k$-form $\omega$, we evaluate $(\delta I_M^k \omega)(\sigma)$ by the simplicial coboundary formula:
\begin{align*}
(\delta I_M^k\omega)(\sigma) &= \sum_{j=0}^{k+1}(-1)^j (I_M^k\omega)(\sigma\circ\partial_j) = \sum_{j=0}^{k+1}(-1)^j \int_{\Delta^k}(\sigma\circ\partial_j)^*\omega.
\end{align*}
Here $\partial_j:\Delta^k\to\Delta^{k+1}$ is the face map $\partial_j(t_0,\dots,t_k)=(t_0,\dots,t_{j-1},0,t_j,\dots,t_k)$. The signed sum of face integrals is, by definition, the integral over the oriented boundary $\partial\Delta^{k+1}$ of $\sigma^*\omega$. Now [Stokes' Theorem](/theorems/1530) applies to the smooth form $\sigma^*\omega$ on the manifold-with-corners $\Delta^{k+1}$ — the hypotheses are that the form is smooth (true: $\sigma^*\omega$ is the pullback of a smooth form by a smooth map) and the domain is compact and oriented (true: $\Delta^{k+1}$ is). Stokes gives
\begin{align*}
\int_{\partial\Delta^{k+1}}\sigma^*\omega &= \int_{\Delta^{k+1}}d(\sigma^*\omega).
\end{align*}
The [exterior derivative](/theorems/1525) commutes with smooth pullback ($d\sigma^* = \sigma^* d$ — this is part of the definition of $d$ as a natural operator), so $d(\sigma^*\omega) = \sigma^*(d\omega)$, and the right-hand side is $(I_M^{k+1}d\omega)(\sigma)$. This is exactly the identity we wanted. The whole proof is essentially the assertion that **[Stokes' theorem](/theorems/1530) on simplices = the de Rham–singular cochain compatibility**.
[/guided]
[/step]
[step:Verify naturality of $I$ under smooth maps]
Let $f:N\to M$ be smooth. The smooth pullback $f^*:\Omega^k(M)\to\Omega^k(N)$ and the induced cochain map on smooth singular cochains $f^\#:C^k_\infty(M;\mathbb R)\to C^k_\infty(N;\mathbb R)$, $(f^\# c)(\sigma) = c(f\circ\sigma)$ for a smooth simplex $\sigma:\Delta^k\to N$, satisfy
\begin{align*}
I_N^k\circ f^* &= f^\#\circ I_M^k.
\end{align*}
Indeed, for $\omega\in\Omega^k(M)$ and a smooth simplex $\sigma:\Delta^k\to N$,
\begin{align*}
(I_N^k f^*\omega)(\sigma) &= \int_{\Delta^k}\sigma^*(f^*\omega) = \int_{\Delta^k}(f\circ\sigma)^*\omega = (I_M^k\omega)(f\circ\sigma) = (f^\# I_M^k\omega)(\sigma),
\end{align*}
using functoriality of pullback $(f\circ\sigma)^* = \sigma^*\circ f^*$. Passing to cohomology gives $f^*\circ I_M^* = I_N^*\circ f^*$ as maps $H^k_{\mathrm{dR}}(M)\to H^k_\infty(N;\mathbb R)$. This is the naturality statement.
[/step]
[step:Prove $I_M^*$ is an isomorphism when $M$ is a convex open subset of $\mathbb R^n$]
Let $M = U\subseteq\mathbb R^n$ be a non-empty convex [open set](/page/Open%20Set). We compute both cohomologies.
**de Rham side.** The smooth Poincaré lemma (external standard result asserting that on any star-shaped open in $\mathbb R^n$, the de Rham complex is exact in positive degrees with $H^0_{\mathrm{dR}} = \mathbb R$ via the constants; this reference should be added as a separate wiki theorem) gives
\begin{align*}
H^k_{\mathrm{dR}}(U) &= \begin{cases}\mathbb R & k = 0\\ 0 & k\ge 1,\end{cases}
\end{align*}
with the $k=0$ identification by $[c]\mapsto c$ for the locally constant function $c\equiv c\in\mathbb R$.
**Singular side.** Since $U$ is convex, it is contractible, so by homotopy invariance of singular cohomology (and of smooth singular cohomology — see Step 6),
\begin{align*}
H^k_\infty(U;\mathbb R) &= \begin{cases}\mathbb R & k=0\\ 0 & k\ge 1,\end{cases}
\end{align*}
with the $k=0$ identification given by evaluation on any point (equivalently any constant smooth $0$-simplex).
**Comparison in degree $0$.** A $0$-form on $U$ is a smooth function $f\in C^\infty(U)$; a smooth $0$-simplex is a point $p\in U$; and $I_U^0(f)(p) = \int_{\Delta^0}p^*f = f(p)$. A closed $0$-form is a locally constant function, hence (since $U$ is connected) a constant $c$. Its image under $I_U^0$ is the cochain $p\mapsto c$, whose cohomology class corresponds to the constant $c\in\mathbb R$. So $I_U^0$ sends the generator $1$ of $H^0_{\mathrm{dR}}(U)\cong\mathbb R$ to the generator $1$ of $H^0_\infty(U;\mathbb R)\cong\mathbb R$, hence is an isomorphism.
**Comparison in degree $k\ge 1$.** Both source and target are the zero [vector space](/page/Vector%20Space), so $I_U^*$ is the unique [linear map](/page/Linear%20Map) $0\to 0$ and hence an isomorphism.
[guided]
The Poincaré lemma is the key local input: it says that on a star-shaped open $U\subseteq\mathbb R^n$, every closed $k$-form ($k\ge 1$) is exact. The classical proof builds an explicit cochain homotopy via radial integration: define $K:\Omega^k(U)\to\Omega^{k-1}(U)$ by integrating along rays from a base point, and verify $dK + Kd = \mathrm{id}$ on $\Omega^k(U)$ for $k\ge 1$. This kills all positive-degree cohomology. In degree zero the kernel of $d$ is the locally constant functions, which on a connected open is just $\mathbb R$.
The singular side has the same answer for a different reason: convex $\Rightarrow$ contractible, and singular cohomology is a homotopy invariant. A contractible space has the cohomology of a point, namely $\mathbb R$ in degree $0$ and $0$ above. The match between smooth singular and ordinary singular cohomology — needed because $I_M$ lands in smooth cochains — is a separate fact (Step 6) that asserts the inclusion $C^\bullet_\infty(M;\mathbb R)\hookrightarrow C^\bullet_{\mathrm{sing}}(M;\mathbb R)$ is a quasi-isomorphism for any smooth manifold.
For the comparison in degree $0$: a closed $0$-form on the connected open $U$ is a constant function $f\equiv c$. The map $I_U^0$ sends this constant function $f$ to the cochain $\sigma\mapsto \int_{\Delta^0}\sigma^*f$. For a $0$-simplex $\sigma = p\in U$ (a point), $\sigma^*f$ is just the value $f(p) = c$, and $\int_{\Delta^0}$ of a constant is the constant. So $I_U^0(f)$ is the constant cochain $c$, which represents the generator of $H^0_\infty(U;\mathbb R)\cong\mathbb R$. The map of one-dimensional spaces sends $1\mapsto 1$, hence is an isomorphism.
[/guided]
[/step]
[step:Establish a Mayer–Vietoris ladder relating $I_U$, $I_V$, $I_{U\cap V}$, $I_{U\cup V}$]
Let $U,V\subseteq M$ be open with $W = U\cup V$. There is a Mayer–Vietoris short exact sequence of de Rham complexes ([Mayer-Vietoris](/theorems/1533) in the differential-form formulation):
\begin{align*}
0\to\Omega^\bullet(W)\xrightarrow{(j_U^*,j_V^*)}\Omega^\bullet(U)\oplus\Omega^\bullet(V)\xrightarrow{i_U^*-i_V^*}\Omega^\bullet(U\cap V)\to 0,
\end{align*}
where $j_U:U\hookrightarrow W$, $j_V:V\hookrightarrow W$, $i_U:U\cap V\hookrightarrow U$, $i_V:U\cap V\hookrightarrow V$ are the inclusions. Surjectivity of the right map uses [Existence of Smooth Partitions of Unity](/theorems/57) subordinate to $\{U,V\}$.
For the singular row, let $C^{\infty,\{U,V\}}_\bullet(W;\mathbb R)$ denote the smooth small-chain subcomplex of $C^\infty_\bullet(W;\mathbb R)$ generated by smooth simplices whose images lie entirely in $U$ or entirely in $V$. There is a short exact sequence of chain complexes
\begin{align*}
0\to C^\infty_\bullet(U\cap V;\mathbb R)\to C^\infty_\bullet(U;\mathbb R)\oplus C^\infty_\bullet(V;\mathbb R)\to C^{\infty,\{U,V\}}_\bullet(W;\mathbb R)\to 0,
\end{align*}
where the first map sends a chain $a$ to $(a,-a)$ and the second sends $(b,c)$ to $b+c$ as a small chain in $W$. Dualizing over $\mathbb R$ gives the cochain short exact sequence
\begin{align*}
0\to C^{\bullet}_{\infty,\{U,V\}}(W;\mathbb R)\to C^\bullet_\infty(U;\mathbb R)\oplus C^\bullet_\infty(V;\mathbb R)\to C^\bullet_\infty(U\cap V;\mathbb R)\to 0.
\end{align*}
It remains to identify the small-chain cohomology of $W$ with $H^\bullet_\infty(W;\mathbb R)$. Barycentric subdivision preserves smoothness: if $\sigma:\Delta^q\to W$ is smooth, then each subdivided simplex is $\sigma\circ a$ for an affine smooth map $a:\Delta^q\to\Delta^q$. The usual prism operator proving that barycentric subdivision is chain-homotopic to the identity is built from affine maps on simplices, so it also lies in the smooth chain complex. Since $\sigma(\Delta^q)$ is compact and $\{U,V\}$ covers it, sufficiently many barycentric subdivisions of $\sigma$ have image contained in $U$ or in $V$. Thus the inclusion $C^{\infty,\{U,V\}}_\bullet(W;\mathbb R)\hookrightarrow C^\infty_\bullet(W;\mathbb R)$ is a chain homotopy equivalence, and the corresponding restriction map on cochains is a quasi-isomorphism.
Applying the [Long Exact Cohomology Sequence](/theorems/3471) to the de Rham short exact sequence and to the smooth small-cochain short exact sequence, and then identifying small cohomology with $H^\bullet_\infty(W;\mathbb R)$ by the quasi-isomorphism just described, the naturality from Step 2 gives a commuting ladder
\begin{align*}
\cdots\to H^{k-1}_{\mathrm{dR}}(U\cap V)\to H^k_{\mathrm{dR}}(W)\to H^k_{\mathrm{dR}}(U)\oplus H^k_{\mathrm{dR}}(V)\to H^k_{\mathrm{dR}}(U\cap V)\to H^{k+1}_{\mathrm{dR}}(W)\to\cdots
\end{align*}
mapping by $I^*$ in each entry to the corresponding smooth singular Mayer–Vietoris sequence. The connecting maps commute with $I^*$ by naturality of connecting morphisms for cochain maps of short exact sequences.
[/step]
[step:Induct on a finite good cover via the Five Lemma]
A **good cover** of $M$ is an open cover $\{U_\alpha\}$ such that every non-empty finite intersection $U_{\alpha_1}\cap\cdots\cap U_{\alpha_p}$ is diffeomorphic to a convex open subset of $\mathbb R^n$ (where $n = \dim M$). The good-cover theorem for Hausdorff, second-countable smooth manifolds (external standard input, to be added as a separate wiki theorem) says that every smooth manifold admits a good cover; moreover, every compact subset of a smooth manifold has a neighbourhood covered by finitely many members of a good cover. In particular, compact smooth manifolds admit finite good covers.
[claim:Finite good covers imply the de Rham comparison is an isomorphism]
If $M$ admits a finite good cover, then $I_M^*$ is an isomorphism in every degree.
[/claim]
[proof]
Induct on the size $p$ of the cover. The case $p = 1$ is Step 3.
Suppose the claim holds for every smooth manifold admitting a good cover of size $\le p-1$, and let $\{U_1,\dots,U_p\}$ be a good cover of $M$. Set
\begin{align*}
U &= U_1\cup\cdots\cup U_{p-1}, & V = U_p, & & U\cap V = (U_1\cap U_p)\cup\cdots\cup(U_{p-1}\cap U_p).
\end{align*}
By the good-cover property, $\{U_1\cap U_p,\dots,U_{p-1}\cap U_p\}$ is a good cover of $U\cap V$ of size $p-1$ (because intersections in this sub-collection are intersections within the original good cover, hence still diffeomorphic to convex opens). Similarly $\{U_1,\dots,U_{p-1}\}$ is a good cover of $U$ of size $p-1$, and $V = U_p$ has a good cover of size $1$.
By the inductive hypothesis, $I_U^*$, $I_V^*$, and $I_{U\cap V}^*$ are isomorphisms in every degree. The Mayer–Vietoris ladder of Step 4, applied to $(U,V)$ with $U\cup V = M$, gives a diagram of long exact sequences where four out of every five vertical arrows are isomorphisms. The [Five Lemma](/theorems/1938) then forces the middle vertical arrow, $I_M^*:H^k_{\mathrm{dR}}(M)\to H^k_\infty(M;\mathbb R)$, to be an isomorphism in every degree $k$. This completes the induction.
[/proof]
[guided]
The inductive step is the heart of the global argument. We split a size-$p$ good cover into "the first $p-1$ pieces" and "the last piece", so $M = U\cup V$ where $U$ has a good cover of size $p-1$ and $V = U_p$ is itself a good chart. The non-obvious point is that $U\cap V$ also inherits a good cover of size $p-1$: namely, intersecting each $U_i$ ($i < p$) with $U_p$. The intersections $U_{i_1}\cap\cdots\cap U_{i_r}\cap U_p$ within this sub-cover are intersections of subcollections of the original good cover, hence diffeomorphic to convex opens by the good-cover hypothesis on $M$. So $U\cap V$ falls under the inductive hypothesis.
Now the Mayer–Vietoris ladder (Step 4) gives a commutative diagram
\begin{align*}
\begin{array}{ccccccccc}
H^{k-1}_{\mathrm{dR}}(U\cap V) & \to & H^k_{\mathrm{dR}}(M) & \to & H^k_{\mathrm{dR}}(U)\oplus H^k_{\mathrm{dR}}(V) & \to & H^k_{\mathrm{dR}}(U\cap V) & \to & H^{k+1}_{\mathrm{dR}}(M) \\
\downarrow & & \downarrow & & \downarrow & & \downarrow & & \downarrow \\
H^{k-1}_\infty(U\cap V) & \to & H^k_\infty(M) & \to & H^k_\infty(U)\oplus H^k_\infty(V) & \to & H^k_\infty(U\cap V) & \to & H^{k+1}_\infty(M)
\end{array}
\end{align*}
The four outer vertical arrows are isomorphisms by induction (each evaluates $I^*$ on a manifold with a good cover of size $\le p-1$). The [Five Lemma](/theorems/1938) — whose hypotheses are exactness of both rows and isomorphism on the four outer columns — concludes that the middle vertical $I_M^*$ is also an isomorphism. The exactness hypothesis is satisfied because both rows are Mayer–Vietoris long exact sequences.
This induction is finite: it terminates in $p$ steps. The base case $p=1$ is the contractible case, where the Poincaré lemma takes over.
[/guided]
[/step]
[step:Extend to arbitrary smooth manifolds by splitting an exhaustion into two open families]
Assume $M$ is Hausdorff and second-countable. Then $M$ is paracompact and $\sigma$-compact, and the compact-exhaustion theorem for smooth manifolds gives compact codimension-zero submanifolds with boundary
\begin{align*}
K_1\subseteq \operatorname{int}K_2\subseteq K_2\subseteq \operatorname{int}K_3\subseteq\cdots, \qquad \bigcup_{m=1}^\infty \operatorname{int}K_m=M.
\end{align*}
Set $K_{-1}=K_0=\varnothing$. For each $m\ge 1$, define the open layer
\begin{align*}
A_m:=\operatorname{int}K_{m+1}\setminus K_{m-1}\subseteq M,
\end{align*}
and define the adjacent overlap
\begin{align*}
B_m:=A_m\cap A_{m+1}=\operatorname{int}K_{m+1}\setminus K_m.
\end{align*}
The sets $A_m$ cover $M$, the sets $A_m$ and $A_j$ are disjoint when $|m-j|\ge 2$, and the sets $B_m$ are pairwise disjoint. Each $A_m$ and each $B_m$ is contained in a compact smooth region and has a finite good cover by the compact form of the good-cover theorem. Hence Step 5 applies to every $A_m$ and every $B_m$.
Define
\begin{align*}
O:=\bigcup_{m\text{ odd}}A_m, \qquad E:=\bigcup_{m\text{ even}}A_m.
\end{align*}
Because same-parity layers are disjoint,
\begin{align*}
O=\bigsqcup_{m\text{ odd}}A_m, \qquad E=\bigsqcup_{m\text{ even}}A_m, \qquad O\cap E=\bigsqcup_{m=1}^\infty B_m.
\end{align*}
For a disjoint union $X=\bigsqcup_{r\in R}X_r$ of smooth manifolds, restriction to components gives product decompositions of complexes
\begin{align*}
\Omega^\bullet(X)&\cong\prod_{r\in R}\Omega^\bullet(X_r), & C^\bullet_\infty(X;\mathbb R)&\cong\prod_{r\in R}C^\bullet_\infty(X_r;\mathbb R).
\end{align*}
The second decomposition uses that $\Delta^q$ is connected, so every smooth simplex $\Delta^q\to X$ lands in a single component. Products of real vector spaces are exact, so cohomology of these product complexes is the product of the component cohomologies. Since $I_X^*$ is the product of the maps $I_{X_r}^*$, Step 5 implies that $I_O^*$, $I_E^*$, and $I_{O\cap E}^*$ are isomorphisms in every degree.
Apply the Mayer–Vietoris ladder of Step 4 to the open cover $M=O\cup E$. The four outer vertical maps in the [Five Lemma](/theorems/1938) diagram are isomorphisms because they are the comparison maps for $O$, $E$, and $O\cap E$. Therefore the [Five Lemma](/theorems/1938) implies that $I_M^*:H^k_{\mathrm{dR}}(M)\to H^k_\infty(M;\mathbb R)$ is an isomorphism for every $k\ge 0$.
[guided]
The point of this step is to avoid an inverse-limit argument. Instead of trying to prove that cohomology commutes with an exhaustion, we cut the exhaustion into alternating layers and use Mayer–Vietoris once.
Because $M$ is Hausdorff and second-countable, it is paracompact and admits smooth partitions of unity. The compact-exhaustion theorem then supplies compact codimension-zero submanifolds with boundary $K_m$ satisfying
\begin{align*}
K_m\subseteq \operatorname{int}K_{m+1}, \qquad \bigcup_{m=1}^\infty \operatorname{int}K_m=M.
\end{align*}
Define $K_{-1}=K_0=\varnothing$ and define
\begin{align*}
A_m:=\operatorname{int}K_{m+1}\setminus K_{m-1}.
\end{align*}
These $A_m$ are open and cover $M$: if $x\in M$, then $x\in\operatorname{int}K_{m+1}$ for some $m$, and then $x\in A_j$ for a suitable nearby layer index $j$. The nesting $K_{m-1}\subseteq K_{m+1}$ also shows that $A_m\cap A_j=\varnothing$ whenever $|m-j|\ge 2$.
The only intersections that can remain are adjacent ones. For adjacent layers we compute directly:
\begin{align*}
A_m\cap A_{m+1} &= (\operatorname{int}K_{m+1}\setminus K_{m-1})\cap(\operatorname{int}K_{m+2}\setminus K_m) \\
&= \operatorname{int}K_{m+1}\setminus K_m \\
&=:B_m.
\end{align*}
The sets $B_m$ are pairwise disjoint because $B_m\subseteq K_{m+1}\setminus K_m$ and $B_{m+1}\subseteq K_{m+2}\setminus K_{m+1}$. Each layer $A_m$ and overlap $B_m$ lies in a compact smooth region, so the compact good-cover theorem gives a finite good cover. Step 5 therefore proves the de Rham comparison for every $A_m$ and every $B_m$.
Now split the layers by parity:
\begin{align*}
O:=\bigcup_{m\text{ odd}}A_m, \qquad E:=\bigcup_{m\text{ even}}A_m.
\end{align*}
Same-parity layers are disjoint, so
\begin{align*}
O=\bigsqcup_{m\text{ odd}}A_m, \qquad E=\bigsqcup_{m\text{ even}}A_m, \qquad O\cap E=\bigsqcup_{m=1}^\infty B_m.
\end{align*}
For a disjoint union $X=\bigsqcup_{r\in R}X_r$, a differential form on $X$ is exactly a choice of a differential form on each component, giving $\Omega^\bullet(X)\cong\prod_r\Omega^\bullet(X_r)$. A smooth singular simplex $\sigma:\Delta^q\to X$ has connected domain, so its image lies in one component; hence smooth cochains also decompose as $C^\bullet_\infty(X;\mathbb R)\cong\prod_r C^\bullet_\infty(X_r;\mathbb R)$. Products of real vector spaces are exact, so the cohomology of the product complex is the product of the component cohomologies. The comparison map $I_X^*$ is componentwise the product of the maps $I_{X_r}^*$.
Since each component $A_m$ and $B_m$ is already handled by Step 5, $I_O^*$, $I_E^*$, and $I_{O\cap E}^*$ are isomorphisms. Applying the Mayer–Vietoris ladder to $M=O\cup E$ gives a commutative diagram of long exact sequences. The outer vertical arrows are isomorphisms, so the [Five Lemma](/theorems/1938) gives that the middle vertical arrow $I_M^*$ is an isomorphism in every degree.
[/guided]
[/step]
[step:Identify smooth singular cohomology with ordinary singular cohomology]
To complete the proof we must identify $H^k_\infty(M;\mathbb R)$ with $H^k_{\mathrm{sing}}(M;\mathbb R)$. Let
\begin{align*}
\iota_\bullet:C^\infty_\bullet(M;\mathbb R)&\to C^{\mathrm{sing}}_\bullet(M;\mathbb R)
\end{align*}
denote the inclusion of the smooth singular chain complex into the ordinary singular chain complex. Its algebraic dual is the restriction morphism of cochain complexes
\begin{align*}
\iota^\#:C^\bullet_{\mathrm{sing}}(M;\mathbb R)&\to C^\bullet_\infty(M;\mathbb R),
\end{align*}
which sends an ordinary singular cochain to its restriction to smooth simplices.
The smoothing theorem for singular chains says that $\iota_\bullet$ is a chain homotopy equivalence. More explicitly, the Whitney approximation theorem relative to the faces of $\Delta^q$ gives, after subdivision if necessary, a smooth approximation of every continuous simplex $\sigma:\Delta^q\to M$ that agrees with already prescribed smooth face data. The prism construction for the homotopy between $\sigma$ and its smooth approximation gives a singular chain homotopy, and the relative face condition makes these choices compatible with the boundary operator. Applying the same construction to smooth simplices gives chain homotopies
\begin{align*}
\iota_\bullet S_\bullet &\simeq \operatorname{id}_{C^{\mathrm{sing}}_\bullet(M;\mathbb R)}, & S_\bullet\iota_\bullet &\simeq \operatorname{id}_{C^\infty_\bullet(M;\mathbb R)}
\end{align*}
for a smoothing chain map $S_\bullet:C^{\mathrm{sing}}_\bullet(M;\mathbb R)\to C^\infty_\bullet(M;\mathbb R)$. Therefore $\iota^\#$ is a quasi-isomorphism, and it induces an isomorphism
\begin{align*}
\iota^*:H^k_{\mathrm{sing}}(M;\mathbb R)\xrightarrow{\cong}H^k_\infty(M;\mathbb R).
\end{align*}
This is the standard smooth-versus-ordinary singular cohomology comparison theorem (external input; see Lee, Theorem 18.7).
Naturality under smooth maps follows at the chain level from composition: if $f:N\to M$ is smooth and $\sigma:\Delta^q\to N$ is a smooth simplex, then $f\circ\sigma:\Delta^q\to M$ is smooth. Hence restriction of cochains to smooth simplices commutes with pullback by $f$, and the induced map $\iota^*$ is natural on cohomology. Combining this comparison with Step 6 gives
\begin{align*}
I_M^*:H^k_{\mathrm{dR}}(M)\xrightarrow{\ \cong\ }H^k_\infty(M;\mathbb R)\xleftarrow[\ \cong\ ]{\iota^*}H^k_{\mathrm{sing}}(M;\mathbb R),
\end{align*}
so the composite $(\iota^*)^{-1}\circ I_M^*$ is the desired isomorphism $H^k_{\mathrm{dR}}(M)\to H^k_{\mathrm{sing}}(M;\mathbb R)$.
[/step]
[step:Conclude the de Rham isomorphism and its naturality]
Combining Steps 1–7: the cochain map $I_M$ is well-defined and natural (Steps 1–2); $I_M^*$ is an isomorphism on each convex open in $\mathbb R^n$ (Step 3); Mayer–Vietoris and the [Five Lemma](/theorems/1938) propagate this isomorphism to any manifold with a finite good cover (Steps 4–5); the odd-even exhaustion argument extends the result to arbitrary Hausdorff, second-countable smooth manifolds (Step 6); and the comparison between smooth and ordinary singular cohomology identifies the codomain (Step 7). Naturality of the resulting isomorphism under smooth $f:N\to M$ follows from the cochain identity $I_N^k\circ f^*=f^\#\circ I_M^k$ and from the naturality of the smoothing comparison $\iota^*$.
Therefore $I_M^*:H^k_{\mathrm{dR}}(M)\to H^k_{\mathrm{sing}}(M;\mathbb R)$ is a natural isomorphism for every Hausdorff, second-countable smooth manifold $M$ and every $k\ge 0$. $\blacksquare$
[/step]
Explore Further
Hörmander $L^2$ Existence Theorem for the $\bar\partial$-Equation
analysis
Exterior Derivative Recovers Gradient, Curl, and Divergence on $\mathbb{R}^3$
analysis
Conservation of Conjugate Momentum for Cyclic Coordinates
analysis
Equivalence of Holomorphicity Definitions
analysis
Diffeomorphism Invariance of de Rham Cohomology
analysis
Necessary Condition for an Extremum
analysis
$\bar\partial^2 = 0$
analysis
Legendre's Necessary Condition
analysis