Chow ring
Fulton and MacPherson extended the Chow ring to singular varieties by defining the "operational Chow ring" and more generally a bivariant theory associated to any morphism of schemes. A bivariant theory is a pair of covariant and contravariant functors that assign to a map a group and a ring respectively. It generalizes a cohomology theory, which is a contravariant functor that assigns to a space a ring, namely a cohomology ring. The name "bivariant" refers to the fact that the theory contains both covariant and contravariant functors.