In this post, I want to outline a very general framework for defining and working with a really far-out generalization of cohomology. Now I’m not talking about Generalized Cohomology Theories here, there are tons of notions of cohomology in the literature (differential, twisted, etc.) that don’t fit into this notion. I’m talking about the nlab notion of cohomology. This blog post is basically going to be a dumbed-down version of that nlab post.

So I’ll have to introduce a good deal of machinery, and I won’t be able to dive deeply into any of them. I’ll try and provide lots of links for each gear of this hefty machine.