In one of the exercises in McDuff and Salamon, they mention homology with compact supports. I know how to define *co*homology with compact supports, but I can't picture the homology version. How do I say that a chain has compact support? If I use singular chains, don't they all have compact support anyway?

Google isn't a big help here, so any references would really help me out.

Also, I've added some basic sub-questions that would also help me out tremendously. This must all be pretty simple, but my background in algebraic topology is weak and it completely baffles me!

McDuff-Salamon go on to state that for the open annulus $(1/2 < r < 1)$ in the plane, the first compact homology group is generated by the arc $\theta = 0$, $1/2 < r < 1$, which I can understand with hindsight: this is just the generator of the homology rel. the boundary and most likely there will be an isomorphism between the compact and relative homologies, just like there is one between the compact and relative co-homologies.

They also implicitly use an isomorphism between the compact homology and compact cohomology in certain dimensions. Should I just use this as the definition for the compact homology? I.e. $H_{k, c} = (H^k_c)^\ast$?