[proofplan]
The strategy is to exhibit the diagram as the long exact sequence in cohomology associated to a short exact sequence of cochain complexes. We first verify that
\begin{align*}
0 \to \Omega^*(M) \xrightarrow{r} \Omega^*(U) \oplus \Omega^*(V) \xrightarrow{s} \Omega^*(U \cap V) \to 0
\end{align*}
is a short exact sequence of cochain complexes — checking that $r$ and $s$ commute with the [exterior derivative](/theorems/1525), that $r$ is injective, that $\operatorname{im} r = \ker s$ via the sheaf property of differential forms, and that $s$ is surjective via a smooth [partition of unity](/page/Partition%20of%20Unity) subordinate to the cover $\{U, V\}$. Applying the [Long Exact Cohomology Sequence](/theorems/3471) of a short exact sequence of complexes then yields the Mayer–Vietoris sequence.
[/proofplan]
[step:Set up the short sequence of cochain complexes and verify it is a sequence of cochain maps]
For each $k \ge 0$ define the linear maps
\begin{align*}
r_k : \Omega^k(M) &\to \Omega^k(U) \oplus \Omega^k(V), & \omega &\mapsto (\omega|_U,\, \omega|_V), \\
s_k : \Omega^k(U) \oplus \Omega^k(V) &\to \Omega^k(U \cap V), & (\beta, \gamma) &\mapsto \beta|_{U \cap V} - \gamma|_{U \cap V},
\end{align*}
where $\omega|_W := \iota_W^* \omega$ is the pullback by the inclusion $\iota_W : W \hookrightarrow M$ (and analogously for the inclusions $U \cap V \hookrightarrow U$, $U \cap V \hookrightarrow V$). Endow $\Omega^*(U) \oplus \Omega^*(V)$ with the differential $d \oplus d$, i.e. $(d \oplus d)(\beta, \gamma) := (d\beta, d\gamma)$.
We claim that $r := (r_k)_{k \ge 0}$ and $s := (s_k)_{k \ge 0}$ are cochain maps. The [exterior derivative](/theorems/1525) commutes with pullback by smooth maps: for any smooth map $f : N \to M$ and $\omega \in \Omega^k(M)$, one has $d(f^*\omega) = f^*(d\omega)$. Applying this to each inclusion gives
\begin{align*}
d(\omega|_W) = (d\omega)|_W \qquad \text{for } W \in \{U, V, U \cap V\}.
\end{align*}
Hence
\begin{align*}
(d \oplus d) \circ r_k(\omega) = (d(\omega|_U),\, d(\omega|_V)) = ((d\omega)|_U,\, (d\omega)|_V) = r_{k+1}(d\omega),
\end{align*}
and
\begin{align*}
d \circ s_k(\beta, \gamma) &= d(\beta|_{U \cap V} - \gamma|_{U \cap V}) = (d\beta)|_{U \cap V} - (d\gamma)|_{U \cap V} \\
&= s_{k+1}(d\beta, d\gamma) = s_{k+1} \circ (d \oplus d)(\beta, \gamma).
\end{align*}
Thus $r$ and $s$ are cochain maps.
[guided]
We need three cochain complexes connected by two cochain maps. The complexes are $\Omega^*(M)$, $\Omega^*(U) \oplus \Omega^*(V)$, and $\Omega^*(U \cap V)$, each equipped with the [exterior derivative](/theorems/1525) as differential (with the obvious direct-sum differential $d \oplus d$ on the middle term, defined by $(d \oplus d)(\beta, \gamma) := (d\beta, d\gamma)$, which manifestly satisfies $(d \oplus d)^2 = 0$).
The maps $r$ and $s$ are defined componentwise in degree $k$ as above; note the **minus sign** in the definition of $s$. The minus sign is essential — without it, the kernel of $s$ would not be the "agreeing on the overlap" pairs we need, but pairs summing to zero on the overlap, which gives a different (and useless) sequence.
To say that $r$ and $s$ are *cochain maps* means each commutes with the differentials of its source and target complexes. The key fact is **naturality of $d$ under pullback**: for any smooth map $f : N \to M$ and $\omega \in \Omega^k(M)$,
\begin{align*}
d(f^*\omega) = f^*(d\omega).
\end{align*}
Why is this naturality automatic? Because $d$ is intrinsically defined from the algebra and topology of forms — it does not refer to coordinates or local structure — so any smooth map preserves it. Applying this to the inclusion maps $\iota_W : W \hookrightarrow M$ (and analogously for inclusions into $U$ and $V$) gives $d(\omega|_W) = (d\omega)|_W$. The cochain-map identities $(d \oplus d) \circ r = r \circ d$ and $d \circ s = s \circ (d \oplus d)$ then follow by writing out both sides:
\begin{align*}
(d \oplus d) \circ r_k(\omega) &= (d(\omega|_U),\, d(\omega|_V)) = ((d\omega)|_U,\, (d\omega)|_V) = r_{k+1}(d\omega), \\
d \circ s_k(\beta, \gamma) &= d(\beta|_{U \cap V} - \gamma|_{U \cap V}) = (d\beta)|_{U \cap V} - (d\gamma)|_{U \cap V} \\
&= s_{k+1}(d\beta, d\gamma) = s_{k+1} \circ (d \oplus d)(\beta, \gamma).
\end{align*}
The linearity of pullback handles the minus sign cleanly.
[/guided]
[/step]
[step:Verify injectivity of $r$ via the sheaf property of forms]
Fix $k \ge 0$ and suppose $\omega \in \Omega^k(M)$ satisfies $r_k(\omega) = 0$. Then $\omega|_U = 0$ and $\omega|_V = 0$. For each $p \in M$, since $M = U \cup V$, we have $p \in U$ or $p \in V$. Recall that for the inclusion $\iota_W : W \hookrightarrow M$ and a point $p \in W$, the pullback satisfies $(\iota_W^*\omega)_p = \omega_p \circ (d\iota_W)_p^{\otimes k}$; since $\iota_W$ is the identity on $W$, $(d\iota_W)_p : T_pW \to T_pM$ is the canonical identification of $T_pW$ with $T_pM$ for $p \in W \subseteq M$ open, and so $(\omega|_W)_p = \omega_p$. Therefore $\omega_p = 0$ for all $p \in M$, giving $\omega = 0$. Hence $r_k$ is injective.
[/step]
[step:Show $\operatorname{im} r = \ker s$ via gluing forms across the cover]
We prove $\ker s_k = \operatorname{im} r_k$.
**$\operatorname{im} r_k \subseteq \ker s_k$.** For $\omega \in \Omega^k(M)$,
\begin{align*}
s_k(r_k(\omega)) = (\omega|_U)|_{U \cap V} - (\omega|_V)|_{U \cap V}.
\end{align*}
Since pullback is functorial, $(\omega|_U)|_{U \cap V} = \omega|_{U \cap V} = (\omega|_V)|_{U \cap V}$, so $s_k \circ r_k = 0$.
**$\ker s_k \subseteq \operatorname{im} r_k$.** Suppose $(\beta, \gamma) \in \Omega^k(U) \oplus \Omega^k(V)$ satisfies $\beta|_{U \cap V} = \gamma|_{U \cap V}$. Define $\omega : M \to \Lambda^k T^*M$ pointwise by
\begin{align*}
\omega_p := \begin{cases} \beta_p, & p \in U, \\ \gamma_p, & p \in V. \end{cases}
\end{align*}
This is well-defined: for $p \in U \cap V$, the hypothesis $\beta|_{U \cap V} = \gamma|_{U \cap V}$ together with the identification $(\beta|_{U \cap V})_p = \beta_p$, $(\gamma|_{U \cap V})_p = \gamma_p$ (as in the previous step) gives $\beta_p = \gamma_p$. Smoothness is a local property: every $p \in M$ has a neighbourhood (either $U$ or $V$) on which $\omega$ agrees with a smooth form ($\beta$ or $\gamma$). Hence $\omega \in \Omega^k(M)$, and by construction $\omega|_U = \beta$, $\omega|_V = \gamma$, so $r_k(\omega) = (\beta, \gamma)$.
[guided]
Exactness at the middle term has two halves, each illustrating a sheaf-theoretic principle.
The inclusion $\operatorname{im} r_k \subseteq \ker s_k$ is the easy half: it says that restricting a global form to $U$ and to $V$ produces two forms that agree on the overlap. This is automatic because in both cases, we are evaluating the same form $\omega$ at points of $U \cap V$. Formally we use **functoriality of pullback**: for inclusions $U \cap V \hookrightarrow U \hookrightarrow M$, the composition equals the inclusion $U \cap V \hookrightarrow M$, so $(\omega|_U)|_{U \cap V} = \omega|_{U \cap V}$, and likewise via $V$. Subtracting these equal forms gives $0$.
The inclusion $\ker s_k \subseteq \operatorname{im} r_k$ is the **gluing axiom** for the sheaf of differential $k$-forms. Concretely: given a pair $(\beta, \gamma)$ with $\beta|_{U \cap V} = \gamma|_{U \cap V}$, we must produce a single form $\omega$ on $M = U \cup V$ that restricts to $\beta$ and $\gamma$. Define $\omega_p := \beta_p$ if $p \in U$ and $\omega_p := \gamma_p$ if $p \in V$. On the overlap $U \cap V$ both definitions apply, and they agree by hypothesis (using that pointwise values are preserved by inclusion-pullback as in the previous step), so $\omega$ is well-defined as a section of $\Lambda^k T^*M$. Why is $\omega$ smooth? Smoothness is a local property — to check $\omega$ is smooth at $p$, we need only check it in any neighbourhood of $p$. If $p \in U$ take that neighbourhood to be $U$, where $\omega = \beta$ is smooth; if $p \in V$ but $p \notin U$, use $V$, where $\omega = \gamma$ is smooth. Hence $\omega \in \Omega^k(M)$, with $r_k(\omega) = (\beta, \gamma)$ by construction.
[/guided]
[/step]
[step:Show surjectivity of $s$ via a partition of unity subordinate to $\{U, V\}$]
We prove that $s_k$ is surjective for every $k \ge 0$. Let $\eta \in \Omega^k(U \cap V)$.
By the [Existence of Smooth Partitions of Unity](/theorems/57), since $\{U, V\}$ is an open cover of the smooth manifold $M$, there exist functions $\rho_U, \rho_V \in C^\infty(M)$ such that
\begin{align*}
0 \le \rho_U,\, \rho_V \le 1, \quad \operatorname{supp} \rho_U \subseteq U, \quad \operatorname{supp} \rho_V \subseteq V, \quad \rho_U + \rho_V \equiv 1 \text{ on } M.
\end{align*}
Here $\operatorname{supp} \rho_U$ denotes the closure in $M$ of $\{p \in M : \rho_U(p) \ne 0\}$, and analogously for $\rho_V$.
Define
\begin{align*}
\beta : U &\to \Lambda^k T^*U, & \beta_p &:= \begin{cases} (\rho_V|_U)(p) \cdot \eta_p, & p \in U \cap V, \\ 0, & p \in U \setminus \operatorname{supp} \rho_V, \end{cases}
\end{align*}
\begin{align*}
\gamma : V &\to \Lambda^k T^*V, & \gamma_p &:= \begin{cases} -(\rho_U|_V)(p) \cdot \eta_p, & p \in U \cap V, \\ 0, & p \in V \setminus \operatorname{supp} \rho_U. \end{cases}
\end{align*}
We verify $\beta$ is well-defined and smooth on $U$. The two cases cover $U$: indeed $U = (U \cap V) \cup (U \setminus \operatorname{supp} \rho_V)$ because $\operatorname{supp} \rho_V \subseteq V$ implies $U \setminus V \subseteq U \setminus \operatorname{supp} \rho_V$. On the overlap of the two cases — points $p \in U \cap V$ with $p \notin \operatorname{supp} \rho_V$ — we have $\rho_V(p) = 0$ (since $\rho_V$ vanishes off its support), so both definitions give $0_p$. Hence $\beta$ is a well-defined section of $\Lambda^k T^*U$. Smoothness is again local: $U \cap V$ is open in $U$ and on it $\beta = (\rho_V|_{U \cap V}) \cdot \eta$, a product of smooth objects; while $U \setminus \operatorname{supp} \rho_V$ is open in $U$ (since $\operatorname{supp} \rho_V$ is closed) and on it $\beta \equiv 0$. The analogous argument gives $\gamma \in \Omega^k(V)$.
Now we compute $s_k(\beta, \gamma) = \beta|_{U \cap V} - \gamma|_{U \cap V}$ on $U \cap V$: for $p \in U \cap V$,
\begin{align*}
(\beta|_{U \cap V} - \gamma|_{U \cap V})_p = \rho_V(p) \eta_p - (-\rho_U(p) \eta_p) = (\rho_U(p) + \rho_V(p)) \eta_p = \eta_p.
\end{align*}
Hence $s_k(\beta, \gamma) = \eta$, proving surjectivity.
[guided]
This is the core analytic step in the entire proof — the place where smoothness of the manifold structure is genuinely used (as opposed to mere set-theoretic gluing). We want, given $\eta \in \Omega^k(U \cap V)$, to find $\beta \in \Omega^k(U)$ and $\gamma \in \Omega^k(V)$ with $\beta|_{U \cap V} - \gamma|_{U \cap V} = \eta$.
The naive idea — "set $\beta := \eta$ on $U \cap V$ and $\beta := 0$ on $U \setminus V$" — fails: the form $\eta$ may not extend continuously, let alone smoothly, by zero across the boundary of $U \cap V$ within $U$. The trick is to multiply by a smooth cutoff that **kills $\eta$ near the boundary**.
We invoke the [Existence of Smooth Partitions of Unity](/theorems/57). The hypotheses are: $M$ is a smooth manifold (assumed) and $\{U, V\}$ is an open cover of $M$ (given: $M = U \cup V$). The conclusion gives $\rho_U, \rho_V \in C^\infty(M)$ with $\operatorname{supp} \rho_U \subseteq U$, $\operatorname{supp} \rho_V \subseteq V$, $0 \le \rho_U, \rho_V \le 1$, and $\rho_U + \rho_V \equiv 1$.
The key observation is asymmetric: $\rho_V$ vanishes outside $V$, in particular near the part of $\partial(U \cap V)$ that sits inside $U \setminus V$. So $\rho_V \cdot \eta$, originally defined on $U \cap V$, **extends by zero smoothly to all of $U$**. Define
\begin{align*}
\beta_p := \begin{cases} \rho_V(p)\, \eta_p, & p \in U \cap V, \\ 0, & p \in U \setminus \operatorname{supp} \rho_V. \end{cases}
\end{align*}
The two cases overlap on $(U \cap V) \setminus \operatorname{supp} \rho_V$, where $\rho_V(p) = 0$ so both formulas give $0$. Their union covers $U$: any point of $U$ is either in $V$ (case 1) or not in $V$, and the latter is contained in $U \setminus \operatorname{supp} \rho_V$ since $\operatorname{supp} \rho_V \subseteq V$. Smoothness of $\beta$ on each open piece is clear (a product of smooth objects, and zero), and smoothness is local, so $\beta \in \Omega^k(U)$.
Why the minus sign on $\gamma$? Because $s$ is the **difference** $\beta|_{U \cap V} - \gamma|_{U \cap V}$, and we want this to equal $\eta$. Define $\gamma := -\rho_U \cdot \eta$ (extended by zero outside $\operatorname{supp} \rho_U$). Then on $U \cap V$,
\begin{align*}
\beta - \gamma = \rho_V \eta - (-\rho_U \eta) = (\rho_U + \rho_V)\eta = \eta,
\end{align*}
using the partition-of-unity identity $\rho_U + \rho_V \equiv 1$. This delivers $s_k(\beta, \gamma) = \eta$.
The asymmetry between $\beta$ and $\gamma$ — $\beta$ uses the "other" cutoff $\rho_V$ — is what makes the extensions possible. Each form is multiplied by the cutoff supported in the *opposite* [open set](/page/Open%20Set), ensuring the product vanishes near the boundary of $U \cap V$ within its target.
[/guided]
[/step]
[step:Apply the long exact cohomology sequence to obtain the Mayer–Vietoris sequence]
Combining the previous three steps, we have established that
\begin{align*}
0 \to \Omega^*(M) \xrightarrow{r} \Omega^*(U) \oplus \Omega^*(V) \xrightarrow{s} \Omega^*(U \cap V) \to 0
\end{align*}
is a short exact sequence of cochain complexes of abelian groups (in fact, of real vector spaces): Step 1 verified that $r$ and $s$ are cochain maps; Step 2 verified injectivity of $r$ at each degree; Step 3 verified $\ker s_k = \operatorname{im} r_k$ at each degree; Step 4 verified surjectivity of $s$ at each degree.
By the [Long Exact Cohomology Sequence](/theorems/3471), every short exact sequence of cochain complexes induces, via the connecting homomorphism, a long exact sequence in cohomology. The cohomology of $\Omega^*(M)$ is by definition $H^*_{\mathrm{dR}}(M)$, and the cohomology of $\Omega^*(U) \oplus \Omega^*(V)$ with the differential $d \oplus d$ is $H^*_{\mathrm{dR}}(U) \oplus H^*_{\mathrm{dR}}(V)$ (cohomology commutes with finite direct sums of cochain complexes). Hence there exist connecting homomorphisms
\begin{align*}
\delta_k : H^k_{\mathrm{dR}}(U \cap V) \to H^{k+1}_{\mathrm{dR}}(M)
\end{align*}
such that the sequence
\begin{align*}
\cdots \to H^k_{\mathrm{dR}}(M) \xrightarrow{r_k^*} H^k_{\mathrm{dR}}(U) \oplus H^k_{\mathrm{dR}}(V) \xrightarrow{s_k^*} H^k_{\mathrm{dR}}(U \cap V) \xrightarrow{\delta_k} H^{k+1}_{\mathrm{dR}}(M) \to \cdots
\end{align*}
is exact. The induced maps $r_k^*$ and $s_k^*$ act on cohomology classes by the formulas in the theorem statement: $r_k^*[\alpha] = ([\alpha|_U], [\alpha|_V])$ and $s_k^*([\beta], [\gamma]) = [\beta|_{U \cap V} - \gamma|_{U \cap V}]$, which is well-defined precisely because $r_k$ and $s_k$ are cochain maps. This completes the proof.
[guided]
We have constructed the short exact sequence of cochain complexes
\begin{align*}
0 \to \Omega^*(M) \xrightarrow{r} \Omega^*(U) \oplus \Omega^*(V) \xrightarrow{s} \Omega^*(U \cap V) \to 0,
\end{align*}
and want to extract a long exact sequence in cohomology.
We apply the [Long Exact Cohomology Sequence](/theorems/3471) (the cohomological version of the zig-zag lemma / snake construction). Its hypothesis is exactly what we have proved: a short exact sequence of cochain complexes. Its conclusion produces connecting homomorphisms $\delta_k : H^k(C^*) \to H^{k+1}(A^*)$ (where here $A^* = \Omega^*(M)$, $C^* = \Omega^*(U \cap V)$) and asserts exactness of the resulting long sequence at every position.
One small bookkeeping point: the middle term of our short exact sequence is the direct sum $\Omega^*(U) \oplus \Omega^*(V)$ with the direct-sum differential $d \oplus d$. The cohomology of a direct sum of cochain complexes is the direct sum of cohomologies — this is because $\ker(d \oplus d) = \ker d \oplus \ker d$ and $\operatorname{im}(d \oplus d) = \operatorname{im} d \oplus \operatorname{im} d$, so quotients commute with the sum. Hence $H^k$ of the middle complex is $H^k_{\mathrm{dR}}(U) \oplus H^k_{\mathrm{dR}}(V)$, as claimed.
The induced maps on cohomology are descents of the cochain maps to equivalence classes: $r_k^*[\alpha] := [r_k(\alpha)] = ([\alpha|_U], [\alpha|_V])$, and likewise $s_k^*([\beta], [\gamma]) = [\beta|_{U \cap V} - \gamma|_{U \cap V}]$. These descents are well-defined because $r$ and $s$ send closed forms to closed forms and exact forms to exact forms — a direct consequence of being cochain maps, which we established in Step 1. The connecting homomorphism $\delta_k$ is the standard one from the [long exact cohomology sequence](/theorems/3471): pick a closed $\eta \in \Omega^k(U \cap V)$, lift via surjective $s_k$ to $(\beta, \gamma) \in \Omega^k(U) \oplus \Omega^k(V)$, take $(d\beta, d\gamma)$, which lies in $\ker s_{k+1} = \operatorname{im} r_{k+1}$, and pull back through the injective $r_{k+1}$ to obtain a closed form on $M$ whose class is $\delta_k[\eta]$. Concretely, using the partition-of-unity construction of Step 4, $\delta_k[\eta]$ is represented by the closed form on $M$ that equals $d(\rho_V \eta)$ on $U$ (extended by zero) and $-d(\rho_U \eta)$ on $V$ (extended by zero), which patches into a globally defined closed $(k+1)$-form on $M$.
[/guided]
[/step]