I've seen two constructions of these characteristic classes. The first comes from Milnor and Stasheff's book and involves the Thom isomorphism and (at least for me) the rather mysterious Steenrod squaring operations.

The other construction comes from Hatchers Vector Bundles and K-Theory book. There Hatcher uses the Leray-Hirsh theorem to pick out specific classes for the tautological line bundle over $\mathbb{P}_{\mathbb{R}}^\infty$ for the Stiefel-Whitney classes and does the analogous thing over $\mathbb{C}$ for the Chern classes.

Does anyone know of a good way of comparing these constructions i.e. verifying that they pick out the same classes? Or is there a good source where this is discussed?

Also the cohomology rings of the infinite Grassmanians $G_n(\mathbb{R}^\infty), G_n(\mathbb{C}^\infty)$ have nice descriptions as polynomials rings in the respective characteristic classes, is there a similar description for the cohomology ring of the Thom space $T = T(\gamma_n)$ associated to the tautological vector bundle $\gamma_n$ over $G_n(\mathbb{R}^\infty), G_n(\mathbb{C}^\infty)$?

  • 3
    $\begingroup$ Be careful not to mess up the name - the guy is called Stiefel (German for a certain type of boots)! $\endgroup$
    – Orbicular
    Feb 2, 2010 at 16:01
  • 16
    $\begingroup$ You're not the first to be flummoxed by Milnor-Stasheff's def of SW classes. The thing to do is to learn the axioms uniquely characterizing SW classes, prove existence by another method, and then view the M-S def as a theorem about Steenrod squares. Now those squares are just a tiny bit less mysterious! $\endgroup$
    – Tim Perutz
    Feb 2, 2010 at 16:08
  • $\begingroup$ @Orbicular thanks! Spelling has never been my strong suit. $\endgroup$
    – solbap
    Feb 2, 2010 at 18:55
  • $\begingroup$ Relatedly, here is a well-answered question I asked a while ago in an attempt to better understand those still-fairly-mysterious Steenrod squares: mathoverflow.net/questions/461/understanding-steenrod-squares $\endgroup$ Feb 3, 2010 at 7:39

4 Answers 4


As Thorny said, Milnor's axiomatic definition seems to be precisely the best way of proving that different definitions are the same. The main thrust of his "definition" is the proof that any invariants that satisfy these axioms must be the same as Stiefel-Whitney classes. In his book, they connect the two notions I describe below as well as the Steenrod-squares definition. They should also serve to prove that all the definitions you talk about are the same.

The rest of this answer might have less to do with your exact question than with my tendency to see an interesting question title and start writing. Sorry! Still, I feel that they are things that should be said (or, at least, don't deserve to be deleted).

I think there are two very important ways to understand characteristic classes. Both are explained in Milnor's Characteristic Classes, but not as the definition, since they are not as precise (but, to me, they are much more intuitive).

  • Think of your vector bundle as a map from your space X into a Grassmanian. The cohomology of the Grassmanian (more precisely, either the $\mathbb Z/2$ cohomology of the real Grassmanian, or the usual cohomology of the complex Grassmanian) is a polynomial algebra on some generators. The characteristic classes (Stiefel-Whitney or Chern, respectively) are precisely the pullbacks of these cohomology classes to X via the map.

    Reading your question carefully, I guess you already knew this. Still, I think you should give this definition more credit. In particular, I think that this is the best explanation of the philosophical reason why "characteristic classes" exist. On thing that confuses me: why are the pullbacks of the integer cohomology of the real Grassmanian never called characteristic classes? I'm sure they are a pain to calculate, but that doesn't justify why nobody seems to care for them at all...

  • You can understand them through obstruction theory (another reference: Steenrod's "Theory of Fibre Bundles). The idea is to generalize the definition of the Euler characteristic using vector fields. Namely, try to construct a nowhere-zero section of your bundle. The obstruction will be a cohomology class, which is called the Euler class (and corresponds mod 2 to the top Stiefel-Whitney class). Try to construct two linearly independent nowhere-zero sections of the bundle. The obstruction will be a cohomology class which, mod 2, will be the next (one dimension lower) Stiefel-Whitney class. If you keep going like this, you'll construct all the classes.

Here is an explanation of why the obstructions to constructing non-zero sections are cohomology classes, for the case of a single section.

Think of your space X as a CW-complex; start constructing it on the 0-skeleton, and then try extending the section to 1-skeleton, and so on. At each step, you will basically be solving the following problem:

Given a vector field on the boundary $S^{n-1}$ of the ball $B^n$, can you extend it to the whole ball?

To solve this, think of the vector field as a map $S^{n-1}\to \mathbb R^m$ where m is the dimension of your bundle (you can assume that the bundle is trivial over the ball $B^n$ since the ball is contractible). Since the vector field is supposed to be nowhere zero, you can think of this as a map $S^{n-1}\to S^{m-1}$. If $n<m$, this map is always nullhomotopic and always extends to the ball. If $n=m$, you get an integer, the degree of the map, which tells you if you can extend. Since you get an integer for each degree-m cell of the CW-complex, you get something that looks like a cohomology class in $H^m(X)$ (of course, you need to verify separately that it actually is one, and if you are precise enough, you'll see that these integers only make sense mod 2). This is the Euler class.

If you wanted to construct two linearly independent sections, first construct one up to the $n-1$-skeleton (which is always possible). Now, let's start making the second one. You might as well require the second section to be orthogonal to the first. So, in the extension problem, you'll have a map $S^{n-1}\to \mathbb R^{m-1}$ where the $\mathbb R^{m-1} \subset \mathbb R^m$ is the subspace orthogonal to the first section. Since it also can't be zero, it's really a map $S^{n-1}\to S^{m-2}$. The rest of the argument is the same; you get a class in $H^{m-1}(X)$.

Usual disclaimer: there may be mistakes anywhere. Please point them out!

  • $\begingroup$ I always thought only the Z/2Z-part of the cohomology of the real Grassmannians in question are nonzero. (Think of classifying real line bundles. Then the classifying space is RP^infty, whose cohomology you surely know!) $\endgroup$
    – Orbicular
    Jul 23, 2010 at 9:57

This is not an answer to your question. Rather, it is a "less mysterious" version of the Milnor-Stasheff construction of the Stiefel-Whitney classes, which doesn't refer explicitly to Steenrod operations. (I think I learned about this from my thesis advisor when I was a lad ... it was so long ago ...)

Let $V\to X$ be a real vector bundle. Let $S^\infty=\bigcup S^n$, the infinite dimension sphere. Taking product with $S^\infty$ gives a vector bundle $V\times S^\infty\to X\times S^\infty$. I produce a vector bundle $V'\to X\times RP^\infty$ by dividing out by an action of the cyclic group of order $2$ on both base and total space:

  • on the base $X\times S^\infty$, the involution is $(x,y)\mapsto (x,-y)$;
  • on the total space $V\times S^\infty$, the involution is $(v,y)\mapsto (-v,-y)$.

The Euler class $e(V')$ of $V'$ is an element of degree $n$ in $H^*(X\times RP^\infty; Z/2) = H^*(X;Z/2)[t]$. The following formula holds: $$ e(V') = t^n + w_1(V)t^{n-1}+\cdots + w_n(V).$$ So if you have an Euler class, then you can use this as the definition of the Stiefel-Whitney classes. The mod-2 Euler class is fairly easy to define from Milnor-Stasheff's point of view: $e(V')$ is the pullback along the $0$ section of the orientation class in the cohomology of the Thom space of $V'$.

It's easy to check the axioms for this guy. It's certainly natural, since $V\mapsto V'$ and $e$ are functorial. Whitney sum follows from $(V\oplus W)'\approx V'\oplus W'$ and the Whitney sum formula for the Euler class. If $R\to *$ is the trivial bundle, then $R'\to RP^\infty$ is the canonical line, so $e(R')=t$ and so $w_0(R)=1$ and $w_1(R)=0$. You can use this to show that $w_0(V)\in H^0X$ is equal to $1$ for any bundle over $X$, by pulling back $V$ over any point of $X$ (where it becomes trivial). If $L\to RP^\infty$ is the canonical line, then $L'\to RP^\infty\times RP^\infty$ is $L_1\otimes L_2$, the tensor product of the canonical line bundles over each factor. So $e(L')=s+t= 1\cdot t^1 + s\cdot t^0$, giving $w_0(L)=1$ and $w_1(L)=s$ (where $s\in H^1RP^\infty$ is the generator).

Added later. I wrote the above while I was a bit feverish :). It didn't occur to me when describing it that it's a pretty standard way to construct characteristic classes; the variant which gives chern classes is probably more familiar.

I also said that it's a "version" of the Steenrod operation construction of SW classes, so let me try to explain that. I'll sketch a "direct" proof that the Steenrod operation definition of SW classes is equivalent to the one I gave above (i.e., without refering the axioms that M-S give for SW classes).

Steenrod operations come from an "extended square" construction on cohomology classes (see my answer in Why does one think to Steenrod squares and powers?). If $X$ is a space, let $DX=(X\times X \times S^\infty)/(Z/2)$, where I divide by the involution $(x_1,x_2,y)\to (x_2,x_1,-y)$. The "extended square" is a function $$P: H^n(X) \to H^{2n}(DX).$$ Cohomology is with mod-2 coefficients. If you restict along the "diagonal" embedding $d: X\times RP^\infty \to DX$, you get Steenrod squares: $$d^*(P(a)) = t^{n}Sq^0(a) + t^{n-1}Sq^1(a) + \cdots + Sq^n(a).$$ There's a relative version of this: if $V\to X$ is a vector bundle, so is $DV\to DX$; write $T(V)$ for the Thom space of $V$, and write $f: T(V) \to T(DV)$ for the map induced by diagonal inclusion. If $u\in H^nT(V)$ is the orientation class, then $$f^*(P(u))= t^{n}Sq^0(u)+t^{n-1}Sq^1(u)+\cdots +Sq^n(u).$$ According to Milnor-Stasheff, $Sq^i(u)=u\,w_i(V)$.

The neat fact is that $P(u)\in H^{2n}T(DV)$ has to be the orientation class $u'$ of $DV\to DX$! So as long as I can describe the orientation class, I don't need to know about Steenrod opeartions! Thus, $f^*(u')\in H^*TV[t]$ is the polynomial whose coefficients are the SW classes. To get the formula I gave originally, observe that $f^*(u')=u\, e(V')$; this is because the pullback of the bundle $TV\to TX$ along $d: X\to DX$ is the same as the bundle $V+V' \to X$.

Why is $P(u)$ the orientation class of $DV$? The orientation class of a bundle in ordinary cohomology mod-2 is the unique element which restricts to the fundamental class of the sphere when you restrict to each fiber, so you just have to check that $P(u)$ has this property. And this is pretty easy (the operation $P$ is natural, and it's easy to understand how $P$ works when you have a discrete space, or a bundle over a discrete space.)


Let me offer another definition not far from obstruction theory (as Ilya gave), but without referring to obstruction theory and thus more elementary.

Suppose for simplicity that $X$ is a simplicial complex, and the bundle $E$ is piecewise-linear (trivialized over each simplex, with transition maps over common faces which are linear) and of dimension $n$. First consider a piecewise-linear section on the $n$-skeleton of $X$ with isolated zeros (such sections are dense in the space of all sections). Then the Euler class, which is the $n$th SW class $w_n(E)$, is represented by the cochain whose value on an $n$-simplex $\sigma$ is the (mod-two) count of the zeros of that section on $\sigma$. Fun exercises: show this is a cocycle, and that different choices of sections give rise to cohomologous cocycles.

More generally, consider $i$ different sections over the $n-i+1$ skeleton which are linearly dependent at only a finite collection of points. The SW class $w_{n-i}$ evaluates on some $n-i$ simplex $\sigma$ as the count of the points of dependence of these sections.

I like to teach SW classes from this perspective first because it is an explicit, cochain-level definition and thus illustrates that there are good geometric reasons to consider cochains. But then I do like to go ahead and develop the classifying space perspective as well, using Milnor's axioms and uniqueness theorem to connect them. I conjecture (but cannot be sure) that at Milnor's time this kind of "dependence of sections" approach was widely known, so he could assume some of that familiarity as he stressed axiomatics.

  • $\begingroup$ Can you explain what you mean when you say that the transition maps are linear? In some sense, transition maps for vector bundles are always linear... But you presumably mean something else, having to do with the simplicial structure on the base space? $\endgroup$
    – Dan Ramras
    Apr 1, 2010 at 5:35
  • 1
    $\begingroup$ First, note that this can just be done smoothly, etc. Transition maps are always maps from U \int V --> GL_n(R). But now since U \int V is the intersection of two simplices (I'll edit to specify that), it is itself some simplex and has a linear structure, and I want this map to GL_n(R) to be linear. On needs this to define a `piecewise linear section' - otherwise what looks linear over one simplex might not look linear to neighbor on their overlap. $\endgroup$
    – Dev Sinha
    Apr 1, 2010 at 5:58
  • 2
    $\begingroup$ How hard is it to show that the classes you define this way are the ordinary SW classes? You seem to indicate that you do it by showing that these obstruction-type classes satisfy the axioms. I remember Greg Brumfiel once saying that Hassler Whitney considered the Whitney Sum Theorem to be the hardest thing he ever proved; the point being, it's hard to check that the obstruction classes satisfy the axioms. Having heard that, I've never tried it for myself... I suppose this may be hidden somewhere in Steenrod's book, but not in the nice language you're using here. $\endgroup$
    – Dan Ramras
    Apr 6, 2010 at 20:44

The easy way of comparing those is to check that they both satisfy the axioms and then use the unicity of the characteristic classes. The splitting lemma (every vector bundle can be pulled back from a sum of line bundles with a map that induces an injective map in cohomology) makes unicity trivial.

As to the second question, vector bundles' total spaces are homotopically equivalent to their bases. Maybe you meant Thom spaces? In this latter case, you get $G_{n-1}$ from $\gamma_n$, and this is one of the ways to calculate the cohomology ring of $G_n$.

  • $\begingroup$ Oh yes that is what I meant, thanks for clarifying. $\endgroup$
    – solbap
    Feb 2, 2010 at 18:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.