A presheaf on \(X\) with value in \(\mathcal{C}\) is a contravariant functor \(\mathcal{F}: X^{op}\to \mathcal{C}\), where \(X\) is the category of open subsets in \(X\) ordered by inclusion.
Example, for \(E\to X\) a vector bundle, the sections over \(U\), \(\mathcal{E}(U)\) form a sheaf of modules over \(C^\infty(U)\). Actually there is a categorical equivalence
\[ \text{Vector Bundles }(M) \xrightarrow{\text{take sections}} \text{Sheaves of }C^\infty\text{-modules }(M)\]
One example of a presheaf that is not a sheaf:
The topological analogue of de-Rham complex, \(C^k_X(U)=\text{Singular }k\text{-cochains on }U\) is a presheaf but not a sheaf. Why? Because if a cochain is zero on chains inside \(U_1,U_2\), it does not uniquely glue: it can be non-zero on some very large chains that goes over the three regions \(U_1-U_2, U_1\cap U_2, U_2-U_1\).
The solution is to do sheafification, any presheaf can be sheafified.
Let \((M,C^\infty_M)\) be a locally ringed space (actually \(\mathbb{R}\)-algebra) such that \(\forall x\in M\), there is \(U\ni x\) such that \(V\cong V\subset \mathbb{R}^n\) and it takes an isomorphism of functions
\[C^\infty_U \cong i^*C^\infty_V \in {\bf Sh}(U)\]
where \(i: U\to V\) is the inclusion, and for \(M\) to be a manifold, it is required to be paracompact, Hausdorff, and second countable.
Verdier duality is a cohomological duality in algebraic topology that generalizes Poincare duality for manifolds
Recall that Poincare duality claims that if \(M\) is an \(n\)-dimensional oriented closed manifold, then the \(k\)-th cohomology group is isomorphic to the \(n-k\)-th homology group, i.e. for any coefficient ring that the orientation respects to,
\[H^k(M) \cong H_{n-k}(M): \quad \alpha\mapsto [M]\cap \alpha\]
where \([M]\) is the fundamental class of \(M\) and \(\cap\) is the cap product.
Since orientation is trivial when taking mod \(2\), you can drop the orientation condition for \(R=\mathbb{Z}/2\mathbb{Z}\).
In the case the manifold is not compact, we have to either
replace homology by Borel-Moore homology
\[H^k(M)\cong H_{n-k}^{BM}(M)\]
or replace cohomology by compactly supported cohomology
\[H_c^k(M)\cong H_{n-k}(M)\]
Ideas: Proofs of
Poincare duality
\[H^*(M)\xrightarrow{\sim} H^{n-k}_c(M)^*\]
Kunneth theorem
\[H^k(M_1\times M_2)\cong \bigoplus_{i+j=k} H^i(M_1)\otimes H^j(M_2)\]
De-Rham theorem
\[H_{dR}^*(M,\mathbb{R})\cong H_{sing}^*(M,\mathbb{R})\]
Using sheaves, everything reduces to contractible open coverings, Mayer-Vietoris sequence is actually a special case of such a Cech cohomology style argument.
\[H^k_{dR}(M) \cong H^k_{sheaf}(M,\underline{\mathbb{R}}) \cong H_{sing}^k(M,\mathbb{R})\]
where we used the resolution by soft sheaves (sections on closed \(Z\subset M\) always extends to \(M\).
\[\underline{\mathbb{R}}\to \Omega_M^\bullet\]
Take a local version of Poincare duality, \(H^{n-k}(M,\mathbb{R}) \cong \mathrm{Hom}(H_c^k(M,\mathbb{R}),\mathbb{R})\)
Verdier duality generalizes to \(X\xrightarrow{f} Y\) of topological map,
\[R\mathrm{Hom}(\mathcal{F}^\bullet, f^! \mathcal{G}^\bullet) \cong R\mathrm{Hom}(R f_{!}\mathcal{F}^\bullet, \mathcal{G}^\bullet)\]
\(f_!\) are sections with compact support