[step:Define the homotopy operator by integrating contraction in the time direction]
Since $f_0$ and $f_1$ are smoothly homotopic, choose a smooth homotopy
\begin{align*}
F: [0,1]\times M &\to N
\end{align*}
from $f_0$ to $f_1$, where $[0,1]$ is regarded as a smooth manifold with boundary. Let $\mathcal{L}^1$ denote one-dimensional Lebesgue measure on $[0,1]$. Thus, for each $t\in[0,1]$, the time-slice map
\begin{align*}
f_t: M &\to N \\
p &\mapsto F(t,p)
\end{align*}
is smooth, with $f_t=F\circ\iota_t$ for the inclusion
\begin{align*}
\iota_t: M &\to [0,1]\times M \\
p &\mapsto (t,p).
\end{align*}
In particular $f_0 = F\circ \iota_0$ and $f_1 = F\circ \iota_1$.
Let $T \in \mathfrak{X}([0,1]\times M)$ denote the smooth vector field tangent to the $[0,1]$ factor, defined by
\begin{align*}
T_{(t,p)}=\frac{\partial}{\partial t}\bigg|_{(t,p)}.
\end{align*}
For each integer $k\geq 1$, define a [linear map](/page/Linear%20Map)
\begin{align*}
I_k: \Omega^k([0,1]\times M) \to \Omega^{k-1}(M)
\end{align*}
as follows. If $\eta \in \Omega^k([0,1]\times M)$, $p \in M$, and $v_1,\dots,v_{k-1}\in T_pM$, then
\begin{align*}
(I_k\eta)_p(v_1,\dots,v_{k-1})
=
\int_0^1
\eta_{(t,p)}
\bigl(
T_{(t,p)},
(d\iota_t)_p(v_1),
\dots,
(d\iota_t)_p(v_{k-1})
\bigr)
\, d\mathcal{L}^1(t).
\end{align*}
For $k=0$, set $I_0=0$, where $\Omega^{-1}(M)$ is interpreted as the zero [vector space](/page/Vector%20Space).
Now define, for every integer $k\geq 0$, the homotopy operator
\begin{align*}
K_k: \Omega^k(N) \to \Omega^{k-1}(M)
\end{align*}
by
\begin{align*}
K_k\omega = I_k(F^*\omega).
\end{align*}
When $k=0$, this means $K_0=0$.
[/step]