---- > [!definition] Definition. ([[cap product]]) > Let $X$ be a [[topological space]] and $R$ a (say, [[commutative ring|commutative]] [[ring]]). > The **cap product of a [[singular homology|singular chain]] and a [[singular cohomology|singular cochain]] in $X$** is the extension of the rule $\begin{align}- \frown -: C_{k}(X; R) \times C^{\ell}(X; R) &\to C_{k-\ell}(X; R) \\ (\sigma : \Delta^{k} \to X , \varphi ) & \mapsto \varphi(\sigma |_{[e_{0},\dots, e_{\ell}]}) \cdot \sigma |_{[e_{\ell}, \dots, e_{k}]} \end{align}$ to a [[bilinear map]]. > This map descends (see below) to a [[well-defined]] [[bilinear map]] on [[(co)homology of a complex|(co)homology]] $\begin{align}- \frown - : H_{k}(X; R) \otimes H^{\ell} (X; R) & \to H_{k- \ell} (X;R) \\ [\sigma] \otimes [\varphi] & \mapsto [\sigma \frown \varphi]. \end{align}$ [[relative cup product|As with the cup product]], there are also [[relative cap product|relative versions]]. > [!basicproperties] > - (Weird Leibniz) $d(\sigma \frown \varphi)=(-1)^{\ell} \big( (d \sigma) \frown \varphi - \sigma \frown (d \varphi) \big)$ > - ([[singular (co)chain map and homomorphism induced by a continuous map|Pullbacks]] and [[singular (co)chain map and homomorphism induced by a continuous map|pushforwards]]) $f_{*}\big(x \frown f^{*}(y)\big)=f_{*}(x) \frown y$ for $f$ a [[continuous|map]] $X \to Y$. ('Push through and cancel.' Dexter has a diagram.) > - (Cap to cup) $\psi(\sigma \frown \varphi)=(\psi \smile \varphi)(\sigma)$ for $\sigma \in C_{k}$, $\varphi \in C^{\ell}, \psi \in C^{k-\ell}$. ^properties > [!note] Note. > Think about the [[cup product]] as multiplication and the cap product as division (but not too much). ^note ---- #### ---- #### References > [!backlink] > ```dataview > TABLE rows.file.link as "Further Reading" > FROM [[]] > FLATTEN file.tags as Tag > WHERE Tag = "#definition" OR Tag = "#theorem" OR Tag = "#MOC" OR Tag = "#proposition" OR Tag = "#axiom" > GROUP BY Tag > ``` > [!frontlink] > ```dataview > TABLE rows.file.link as "Further Reading" > FROM outgoing([[]]) > FLATTEN file.tags as Tag > WHERE Tag = "#definition" OR Tag = "#theorem" OR Tag = "#MOC" OR Tag = "#proposition" OR Tag = "#axiom" > GROUP BY Tag > ```