Let ${E}$ be a multiplicative cohomology theory. We say that ${E}$ is complex-oriented if one is given the data of an element ${t \in \widetilde{E}^2(\mathbb{CP}^\infty)}$ which restricts to the canonical generator of ${\widetilde{E}^2(\mathbb{CP}^1) \simeq \widetilde{E}^0(S^0)}$. It turns out that one has a bit more: a complex orientation gives on a functorial, multiplicative choice of Thom classes for complex vector bundles. In fact, this is a perhaps more natural definition of such a theory.

What does this mean? Given a vector bundle ${\zeta \rightarrow X}$, one can form the Thom space ${T(\zeta) = B(\zeta)/S(\zeta)}$: in other words, the quotient of the unit ball bundle ${B(\zeta)}$ in ${\zeta}$ (with respect to a choice of metric) by the unit sphere bundle ${S(\zeta)}$. When ${X}$ is compact, this is just the one-point compactification of ${\zeta}$.

Definition 1 The vector bundle ${\zeta}$ is orientable for a multiplicative cohomology theory ${E}$ if there exists an element ${\theta \in \widetilde{E}^*( T(\zeta)) = E^*(B(\zeta), S(\zeta))}$ which restricts to a generator on each fiberwise ${E^*(B^n, S^{n-1})}$, where ${\dim \zeta = n}$. Such a ${\theta}$ is called a Thom class.

Observe that for each point ${x \in X}$, there is a restriction map ${\widetilde{E}^*(T(\zeta)) \rightarrow E^*(B_x^n, S_x^{n-1})}$ if the dimension of ${\zeta}$ is ${n}$.

The existence of a Thom class implies a Thom isomorphism, as for ordinary homology.

Theorem 2 (Thom isomorphism) A Thom class ${\theta \in \widetilde{E}^*(T(\zeta))}$ induces an isomorphism

$\displaystyle E^*(X) \simeq \widetilde{E}^*(T(\zeta))$

given by cup-product with ${\theta}$.

In the case of ordinary homology, a Thom class is unique (up to sign) if it exists; in general, though, a Thom class is highly non-unique, and an orientation is additional data than simple orientability.

Here are a few basic cases:

1. Any vector bundle is orientable for ${\mathbb{Z}/2}$-cohomology.
2. An oriented (in the usual sense: i.e., the top wedge power is trivial) vector bundle is one oriented for ${\mathbb{Z}}$-cohomology.
3. Complex vector bundles are oriented for ${K}$-theory. We will see this below.
4. Spin bundles are oriented for ${KO}$-theory. An explicit construction of Thom classes can be made, as virtual bundles arising from Clifford modules: this is in Atiyah-Bott-Shapiro’s paper.
5. A trivial bundle is orientable for any cohomology theory (this is rather uninteresting: the Thom space is just a suspension).

Given a vector bundle ${\zeta_1 \rightarrow X}$ and another vector bundle ${\zeta_2 \rightarrow X}$, a choice of Thom classes ${\theta_1 \in \widetilde{E}^*(T(\zeta_1)), \theta_2 \in \widetilde{E}^*(T(\zeta_2))}$, we can take the product

$\displaystyle \theta_1 \theta_2 \in \widetilde{E}^*(T(\zeta_1) \wedge T(\zeta_2)) = \widetilde{E}^*(T(\zeta_1 \oplus \zeta_2)).$

In particular, given orientations for ${\zeta_1, \zeta_2}$, we get an orientation for the direct sum ${\zeta_1 \oplus \zeta_2}$. Also, observe that if ${\zeta \rightarrow X}$ is oriented and ${f: Y \rightarrow X}$ is any continuous map, then one gets an orientation for the pull-back ${f^* \zeta \rightarrow Y}$.

Definition 3 complex-oriented cohomology theory ${E^*}$ is a multiplicative cohomology theory ${E^*}$ together with a functorial, multiplicative choice of Thom classes for complex vector bundles.

In other words, a complex orientation for ${E^*}$ is the data of, for every complex vector bundle ${\zeta \rightarrow X}$, an orientation ${\theta_\zeta \in \widetilde{E}^*(T(\zeta))}$. This is required to satisfy the conditions:

1. If ${f: Y \rightarrow X}$, then ${\theta_{f^*\zeta} = f^* \theta_\zeta \in \widetilde{E}^*(T(f^* \zeta))}$. That is, naturality.
2. If ${\zeta_1, \zeta_2 \rightarrow X}$, then ${\theta_{\zeta_1 \oplus \zeta_2} = \theta_{\zeta_1} \theta_{\zeta_2}}$. That is, multiplicativity.

Ordinary cohomology, for instance, is complex orientable: a complex structure on a real vector bundle determines a choice of orientation in the usual sense. Complex K-theory is also complex-orientable. Given a complex vector bundle ${\pi: \zeta \rightarrow X}$, we define an element in the compactly supported ${K}$-theory ${K^*_{cpt}(\zeta) = \widetilde{K}^*(T(\zeta))}$ via the Koszul complex

$\displaystyle 0 \rightarrow \mathbb{C} \rightarrow \pi^* \zeta \rightarrow \bigwedge^2 \pi^* \zeta \rightarrow \dots \rightarrow \bigwedge^{\dim \zeta} \pi^* \zeta \rightarrow 0,$

where the map on a point ${(x, v), v \in \zeta_x}$, is given by wedging with the vector ${v}$. It turns out (and this is one formulation of Bott periodicity) that what one has constructed is an actual orientation of complex ${K}$-theory ${K}$. The point is that this complex is exact away from the zero section, so it defines an element of the compactly supported ${K}$-theory ${K^*_{cpt}(\zeta)}$.

1. Chern classes

What does a complex orientation on a multiplicative cohomology theory ${E}$ buy us? For one thing, it lets us define Chern classes in ${E^*}$-cohomology, using the techniques of Grothendieck. Let’s recall what the input to this machinery requires: we need a choice of first Chern class for complex line bundles, and we need that ${\mathbb{CP}^n}$ have the appropriate cohomology.

The first Chern class of a line bundle in ordinary cohomology is the same as the Euler class, and that’s what we’ll do here. Let ${\mathcal{L}}$ be a line bundle on a space ${X}$. Then we know that we have an element ${\theta_{\mathcal{L}} \in \widetilde{E}^*(T(\mathcal{L}))}$ with the appropriate properties. We can use the zero section map

$\displaystyle 0 : X \rightarrow T(\mathcal{L})$

to define the first Chern class

$\displaystyle c_1(\mathcal{L}) = 0^* (\theta_{\mathcal{L}}) \in E^2(X).$

This satisfies naturality.

The next claim is that the cohomology of projective spaces looks like what we are used to. Henceforth, we write ${\pi_* E = E^*(\ast)}$ (if we represent ${E}$ by a spectrum, this is reasonable).

Proposition 4 If ${E}$ is a complex-oriented cohomology theory, then ${E^*(\mathbb{CP}^n) = \pi_* E[x]/x^{n+1}}$ for ${x = c_1(\mathcal{O}(1))}$, where ${\mathcal{O}(1)}$ is the usual bundle on ${\mathbb{CP}^n}$.

In fact, the strategy is to work inductively. The Thom space ${T(\mathcal{O}(1))}$ of the line bundle ${\mathcal{O}(1)}$ on ${\mathbb{CP}^n}$ is ${\mathbb{CP}^{n+1}}$. So we find that there is an isomorphism

$\displaystyle E^*(\mathbb{CP}^n) \simeq \widetilde{E}^*(\mathbb{CP}^{n+1})$

given by multiplication by ${x}$. If we know ${E^*(\mathbb{CP}^n)}$ (${\pi_* E}$-free on ${1, x, \dots, x^n}$), then we get ${E^*(\mathbb{CP}^{n+1})}$ to be what was desired (i.e., free on ${1, x, \dots, x^{n+1}}$).

Taking the inverse limit, we find:

Corollary 5 ${E^*(\mathbb{CP}^\infty) = \pi_* E[[x]]}$ for ${x = c_1(\mathcal{O}(1))}$.

The reason we actually need the power series ring (as opposed to a simple polynomial ring) is that ${\pi_* E}$ might be all over the place, including in negative dimensions.

OK, so with this in mind, we can imitate the whole Grothendieck theory. Let’s recall how this works. Let ${X}$ be a space, and ${\zeta \rightarrow X}$ be a ${\mathbb{C}}$-vector bundle of dimension ${n}$. We want to define Chern classes ${c_i(\zeta), 0 \leq i \leq n}$, in ${E^*(X)}$ satisfying the naturality and multiplicativity properties as in ordinary cohomology.

The strategy is to take the projectivization ${\mathbf{P}(\zeta) \rightarrow X}$: this is a fiber bundle with fibers complex projective spaces. There is a line bundle bundle ${\mathcal{O}_\zeta(1) \in \mathrm{Pic}(\mathbf{P}(\zeta))}$ which restricts to the usual ${\mathcal{O}(1)}$ on each fiber. In particular, if we let ${x = c_1(\mathcal{O}_\zeta(1)) \in E^*(\mathbf{P}(\zeta))}$, it follows that ${1, x, \dots, x^{n-1}}$ when restricted to any fiber is a basis for the cohomology. Using the Leray-Hirsch theorem, we find that there is an isomorphism of ${\pi_*E}$-modules

$\displaystyle E^*(\mathbf{P}(\zeta)) \simeq E^*(X)\left\{1, x, \dots, x^{n-1}\right\}.$

This is not necessarily an isomorphism of rings, though. Using the usual formulas, we can define the Chern classes. We have a relation

$\displaystyle x^{n} + c_1 x^{n-1} + \dots + c_n = 0, \quad c_i \in E^*(X),$

and we can define the Chern classes ${c_i(\zeta) = c_i}$. By the same arguments, we find that these satisfy the usual properties: naturality and multiplicativity.

We have analogous formulas as in ordinary cohomology:

$\displaystyle E^*(BU(n)) = \pi_* E [[ c_1, \dots, c_n]],$

where each ${c_i}$ is the Chern class of the universal bundle on ${BU(n)}$, and the map ${BU(1) \times \dots \times BU(1) \rightarrow BU(n)}$ induces a map

$\displaystyle E^*( BU(n)) \rightarrow E^*(BU(1) \times \dots \times BU(1)) = \pi_* E [[x_1, \dots, x_n]],$

which sends each ${c_i}$ to the ${i}$th symmetric function of the ${x_i}$. One way to see these formulas is to imitate the proofs in ordinary (co)homology via the Serre spectral sequence, but with the version of the Serre spectral sequence for generalized homology. Another is to use a different spectral sequence: that is, to argue that since the Atiyah-Hirzebruch spectral sequence for ${\mathbb{CP}^\infty}$ degenerates (by the equality ${E^*(\mathbb{CP}^\infty) = \pi_*(E) [[t]]}$), it has to degenerate for a whole bunch of other spaces. In fact, these considerations are precisely how one proves that an orientation for the line bundle ${\mathcal{O}(1)}$ on ${\mathbb{CP}^\infty}$ (the first definition of a complex orientation suggested in this blog post) actually gives you the full strength of the second definition.

2. Formal group laws

Let ${E^*}$ be a complex-oriented cohomology theory. In ordinary cohomology, we have the identity

$\displaystyle c_1(\mathcal{L} \otimes \mathcal{L}') = c_1(\mathcal{L}) + c_1(\mathcal{L}') ,$

for line bundles ${\mathcal{L}, \mathcal{L}'}$ on a space ${X}$. This is false for a general complex-oriented cohomology theory and, in fact, the degree of its falseness is a highly interesting phenomenon.

Let ${E}$ be a complex-oriented cohomology theory. Then we have

$\displaystyle E^*(\mathbb{CP}^\infty) = \pi_* E [[x]],$

where ${x = c_1(\mathcal{O}(1))}$. Similarly, we have ${E^*(\mathbb{CP}^\infty \times \mathbb{CP}^\infty) = \pi_* E [[x_1,x_2]]}$ where ${x_1, x_2}$ are the pull-backs of ${x}$ under the two projections: alternatively, they are ${c_1}$ of the two line bundles ${p_1^*\mathcal{O}(1), p_2^*\mathcal{O}(1)}$. One can see this by arguing that since the Atiyah-Hirzebruch spectral sequence degenerates on ${\mathbb{CP}^\infty}$, it has to degenerate on ${\mathbb{CP}^\infty \times \mathbb{CP}^\infty}$ (because all the differentials are derivations in an appropriate sense).

Now we’d like to figure out what the formula that expresses the Chern class in ${E}$-cohomology of the tensor product of line bundles in terms of the Chern classes of the individual ones. We just have to do this in the universal case. This is precisely what we’re set up for: we have the tensor product ${p_1^*(\mathcal{O}(1)) \otimes p_2^*(\mathcal{O}(1))}$ of line bundles on ${\mathbb{CP}^\infty \times \mathbb{CP}^\infty}$, and we have

$\displaystyle c_1( p_1^*(\mathcal{O}(1)) \otimes p_2^*(\mathcal{O}(1))) \in \pi_*E[[x_1, x_2]].$

So we get a formal power series in two variables, ${f(x_1, x_2) \in \pi_*E[[x_1, x_2]]}$.

Proposition 6 ${f(x_1, x_2)}$ is a (commutative) formal group law over ${\pi_* E}$.

To see this, we might note that ${\mathbb{CP}^\infty}$ is the classifying space for line bundles, and consequently there is a multiplication map

$\displaystyle m: \mathbb{CP}^\infty \times \mathbb{CP}^\infty \rightarrow \mathbb{CP}^\infty$

classifying the tensor product of line bundles (i.e., classifying ${p_1^*\mathcal{O}(1) \otimes p_2^*\mathcal{O}(1)}$). We have then

$\displaystyle f(x_1, x_2) = m^* x.$

The fact that ${m}$ is a homotopy commutative, associative map implies that ${f(x_1, x_2)}$ is in fact a formal group law: in fact, the map ${m}$ defines on ${\pi_*E[[t]]}$ the structure of a one-dimensional formal group scheme over ${\pi_* E}$.

For example, the formal group law for ordinary cohomology is the additive formal group law ${f(x_1, x_2) = x_1 + x_2}$, because the Chern classes in ordinary cohomology satisfy ${c_1(\mathcal{L} \otimes \mathcal{L}') = c_1(\mathcal{L}) + c_1(\mathcal{L}')}$.

The formal group law in ${K}$-theory is given by the multiplicative formal group law ${f(x_1, x_2) = x_1 + x_2 - x_1 x_2}$. In fact, the complex orientation of ${K}$-theory is such that given a line bundle ${\mathcal{L}}$, the first Chern class (or Euler class) of ${\mathcal{L}}$ is the class ${1 - \mathcal{L} \in K^*(X)}$. That’s easy to see by pulling back the Thom class described earlier. Consequently, in ${K}$-theory,

$\displaystyle c_1(\mathcal{L} \otimes \mathcal{L}') = 1 - \mathcal{L} \otimes \mathcal{L}' = (1 - \mathcal{L}) + (1 - \mathcal{L}) - (1 - \mathcal{L})(1 - \mathcal{L}') = f(c_1(\mathcal{L}), c_1(\mathcal{L}')).$