Classification of vector bundles Let $G_n$ be the infinite Grassmanian and $E_n$ the canonical $n$-vector bundle over $G_n$. For a paracompact $X$, the map $[X,G_n] \to \operatorname{Vect}^n(X)$ sending the homotopy class $[f]$ to the pullback bundle $f^\ast(E_n)$ is a bijection.
What is the intuition behind this result?
 A: The Grassmannian is an example of a moduli space: a space where the points consist of certain type of geometric objects. It is often the case that functors are represented by moduli spaces. Why might this be the case? Let's do something ill defined: let $FG_n$ (our fantasy Grassmannian) denote the moduli space of all vector spaces of rank $n$. Then if I have a vector bundle $E \rightarrow X$, there is a canonical map $X \rightarrow FG_n$ which sends $x$ to the fiber $E_x$. In this way, its pretty clear that our fantasy Grassmannian wants to represent vector bundles.
There is a glaring issue: $FG_n$ is not a set, let alone a space with a natural topology. The way we fix this is to instead assume that all our vector spaces are actually subspaces of $\mathbb{R}^\infty$. This yields $G_n$. This fixes both the set theoretic issues and the issues of what topology to use. What remains to be checked is that $G_n$ really represents rank $n$ bundles. Some bundles are easy to represent, for example the tangent bundle of an embedded submanifold of $\mathbb{R}^n$ is the pullback of the map which sends $x$ to the tangent plane translated to the origin. The general statement is not this easy to prove, but nevertheless true.
