Swan's Theorem Over Any Base

Prerequisites: A previous brush with projective modules, equivalences of categories, vector bundles (including sections and pullbacks), and partitions of unity. While I hope to write a more introductory account at some point, this post is unfortunately not that… But I hope it can still be useful to some!

Acknowledgements: I would like to thank a few people: Kimball, for entertaining my speculations about a generalization and soon after sending me Vaserstein's paper; Brendan, for pointing out that bump functions (rather than the finite numerations that I was using) are the key to full-faithful-ness; and Julio, for consistently encouraging me to maintain my blog and helping me to believe that I have something of worth to share.

The homotopy classification of numerable principal bundles over any topological space, due to Dold, is a result that never ceases to amaze me. This is not what I will discuss here, but it is quite a testament to the sheer power of partitions of unity. A loosely related finding, due to Vaserstein, extends Swan's theorem theorem to classify (certain) vector bundles over any space. This theorem requires a fairly reasonable constraint on the vector bundles in question, which does not mention partitions of unity, but still allows for the practical use of them. This condition and the resulting theorem will be the topic of what follows. There are surely mistakes, so I would be thrilled if any reader who has a question, comment or correction would hit me up in the comments and say so.

We will write $\mathbb F$ to denote either $\mathbb R$ or $\mathbb C$. Similar results hold over $\mathbb H$, but I am too lazy to qualify everything with the appropriate prefixes of "left" and "right." All vector bundles will be assumed finite-dimensional. To do Swan's theorem (and topological K-theory more generally), we need to consider vector bundles with locally constant dimension. The quintessential example is the following. For a natural number $n$, let $Gr(n)$ denote the Grassmannian of all subspaces of $\mathbb F^n$ (this is the disjoint union of the $n+1$ usual Grassmannians with constant dimension). If $\mathcal M_n$ denotes the vector space $n\times n$ matrices with coordinates in $\mathbb F$, we can view $Gr(n)\subset \mathcal M_n$ by identifying any $P\in Gr(n)$ with the orthogonal projection $\text{proj}_P$ (with the standard inner product on $\mathbb F^n$). Then we have $n^2$ coordinate maps $a_{ij}:\mathcal M_n\rightarrow \mathbb{F}$ and a map $f:X\rightarrow Gr(n)$ is continuous if and only if each $a_{ij}\circ f$ is continuous (for all $1\leq i,j\leq n$). In terms of subspaces and the standard basis of $\mathbb F^n$, we have $$a_{ij}(P)=\big\langle e_i,\text{proj}_P(e_j)\big\rangle.$$This space $Gr(n)$ also has a "tautological" vector bundle $\tau$ over it, whose total space is $$E(\tau)=\{(P,v)\in Gr(n)\times \mathbb F^n:v\in P\}.$$The fiber over any subspace $P\in Gr(n)$ is the subspace $P$ itself, so we see that the dimension of this bundle is not constant when $n>0$. Although seemingly unnatural, this will be useful for our purpose.
The projection $\tau:E(\tau)\rightarrow Gr(n)$ is clearly continuous, since it is just a restriction of the projection $Gr(n)\times \mathbb F^n\rightarrow Gr(n).$ To get local trivializations, consider the continuous trace map $\text{tr}:\mathcal M_n\rightarrow \mathbb F$. Since $\text{tr}(\text{proj}_P)=\dim(P)$, we see that the map $\dim:Gr(n)\rightarrow \mathbb N$ is continuous. If $\dim(P)=k$, then there exist some indices $1\leq i_1<i_2<\dots<i_k\leq n$ such that $\text{proj}_P:\text{span}(e_{i_1},\dots,e_{i_k})\rightarrow P$ is an isomorphism. Define a continuous map $D:Gr(n)\rightarrow \mathbb F$ by $$D(X)=\det\left(\begin{array}{cc}a_{i_{1}i_1}(X) & a_{i_1i_2}(X) & \cdots & a_{i_1i_k}(X)\\ a_{i_2i_1}(X) & a_{i_2i_2}(X) & \cdots & a_{i_2i_k}(X)\\ \vdots && \ddots &\vdots \\ a_{i_ki_1}(X) & a_{i_ki_2}(X) & \cdots & a_{i_ki_k}(X)\end{array}\right)$$
Then $U=\dim^{-1}(k)\cap D^{-1}(\mathbb F-0)$ is an open set in $Gr(n)$, consisting of all $k$-planes $Q\in Gr(n)$ such that $\text{proj}_Q:\text{span}(e_{i_1},\dots,e_{i_k})\rightarrow Q$ is an isomorphism. Thus we have $P\in U$ and the map $$\big(Q,(x_1,\dots,x_k)\big)\mapsto \big(Q,\text{proj}_Q(x_1e_{i_1}+\dots+x_ke_{i_k})\big)$$ is a trivialization $U\times \mathbb F^k\rightarrow \tau^{-1}(U)$. This proves the local trivializability of $\tau$ near any $P\in Gr(n)$.

A couple of other notions will be useful before we dive in:
  • Two vector bundles $\xi$ and $\eta$ are said to be "complementary" if $\xi\oplus \eta$ is trivializable.
  • A bundle $\xi$ is "numerable" if there is an open cover $\mathscr U=\{U_i:i\in I\}$ admitting a subordinate partition of unity, such that $\xi$ is trivializable over each $U_i$. If we can choose this $\mathscr U$ to be finite, we say that $\xi$ is "finitely numerable."
  • For a bundle $\xi$ over a base $X$, the evaluation map $\text{ev}:X\times \Gamma(\xi)\rightarrow E(\xi)$ is $\text{ev}(x,s)=s(x).$ We say a vector subspace $V\subset \Gamma(E)$ is "ample" (borrowing this term from Atiyah's K-theory) if $\text{ev}(X\times V)=E(\xi).$ This means that any vector in any fiber is in the image of some $s\in V$. 
With this language in hand, we can now state our first result. The reasonable constraint I mentioned (and the usual definition of "finite type") is our condition (a) below. Once we prove that $(\text a)\Longrightarrow (\text c)$, we will see that the existence of a complementary bundle allows us the tool of partitions of unity. When enough is left to the imagination of the familiar reader, the parts of this proofs are "one-liners." However, I would rather give a little bit of extra detail than ask the reader to place undue trust in me, which will make some of the arguments a tad longer.

Lemma 1. For any vector bundle $\xi:E\rightarrow X$, the following are equivalent:
(a) $\xi$ admits a complementary bundle $\eta$;
(b) $\xi\cong f^*\tau$ for some map $f:X\rightarrow Gr(n)$ (for some $n\in \mathbb N$);
(c) $\xi$ is finitely numerable;
(d) there exists a finite-dimensional, ample subspace $V\subset \Gamma(\xi)$;
(e) there exists a surjective bundle map $\varphi:X\times \mathbb F^n\rightarrow E$ (for some $n\in \mathbb N$).
If any (and thus all) of these conditions hold(s), we say that $\xi$ is of finite type.

Proof. There are five implications that we need to prove.
$(\text a)\Longrightarrow (\text b)$ Choose an isomorphism $\varphi:E(\xi\oplus \eta)\rightarrow X\times \mathbb F^n$. We view $\xi$ as a sub-bundle of $\xi\oplus \eta,$ so that we have an inclusion $E(\xi)\subset E(\xi\oplus \eta)$. We have an inner product on $\xi\oplus \eta$, given by $$(v,w)\mapsto \big\langle \pi\circ \varphi(v),\pi\circ\varphi(w)\big\rangle,$$ where $\pi:X\times \mathbb F^n\rightarrow \mathbb F^n$ denotes projection. Therefore, we get an orthogonal projection $$\text{proj}_\xi:E(\xi\oplus \eta)\rightarrow E(\xi).$$(Note: this may not agree with the direct sum projection $\xi\oplus \eta\rightarrow \xi$). Define a map $f:X\rightarrow Gr(n)$ by $f(x)=\pi\circ \varphi(\xi_{\,x})$, where $\xi_{\,x}$ is the fiber over $x\in X$. To prove that $f$ is continuous, we need to prove that $a_{ij}\circ f$ is continuous for every $1\leq i,j\leq n$ (where $a_{ij}:Gr(n)\rightarrow \mathbb F$ is as defined above). For a fixed $v\in \mathbb F^n$, we can see that $\text{proj}_{f(x)}(v)$ is continuous in $x$, because $$\text{proj}_{f(x)}(v)=\text{proj}_{\pi \circ\varphi(\xi_x)}(v)=\pi\circ \varphi\Big(\text{proj}_{\xi}\big(\varphi^{-1}(x,v)\big)\Big).$$It follow that for any $1\leq i,j\leq n$, the function $a_{ij}\circ f(x)=\big\langle e_i,\text{proj}_{f(x)}(e_j)\big\rangle$ is continuous in $x$. Thus $f$ is continuous. We can also define a continuous map $F:E(\xi)\rightarrow E(\tau)$ by $$F(u)=\big(f\circ \xi(u),\pi\circ \varphi(v)\big).$$This mapping is a lift of $f$ to the total spaces of $\xi$ and $\tau$. But for any $x\in X$, the map $\pi\circ \varphi:\xi_x\rightarrow \mathbb F^n$ is a linear injection with image $\pi\circ\varphi(\xi_x)=f(x)=\tau_{f(x)}.$ Therefore $F$ is a fiber-wise isomorphism, which implies that $F$ factors through an isomorphism $\xi\cong f^*\tau$. 
$(\text b)\Longrightarrow (\text c)$ For this part, we will use that $Gr(n)$ is compact Hausdorff (in particular, it is normal). By compactness of $Gr(n)$, we can find a finite open cover $\{U_1,\dots,U_n\}$ such that $\tau$ is trivializable over each $U_i$. Since $Gr(n)$ is normal, we can find functions $\rho_i:Gr(n)\rightarrow [0,1]$ with $\sum_{i=1}^n\rho_i=1$ and $\text{supp}(\rho_i)\subset U_i$ for each $i=1,\dots,n$ (i.e. a subordinate partition of unity). Then the functions $\rho_i\circ f:X\rightarrow [0,1]$ form a partition of unity subordinate to $\{f^{-1}(U_1),\dots,f^{-1}(U_n)\}$, since $$\text{supp}(f\circ \rho_i)\subset f^{-1}\big(\text{supp}(\rho_i)\big)\subset f^{-1}(U_i).$$Over each $f^{-1}(U_i)$, we see that $\xi|_{f^{-1}(U_i)}\cong (f^*\tau)|_{f^{-1}(U_i)}\cong f^*(\tau|_{U_i})$ is the pullback of a trivializable bundle and thus trivializable. This proves that $\xi$ is finitely numerable. (In short, we have used the facts that every bundle over a compact Hausdorff space is finitely numerable, and that finite numerability is preserved by pullbacks.)
$(\text c)\Longrightarrow (\text d)$ By the finite numerability of $\xi$, we can find an open cover $\{U_1,\dots,U_n\}$, isomorphisms $\varphi_i: U_i\times \mathbb F^{k_i}\rightarrow E(\xi|_{U_i})$ (notice that the dimension may vary), and a partition of unity $\{\rho_1,\dots,\rho_n\}$ with $\text{supp}(\rho_i)\subset U_i$ for each $i=1,\dots,n$. For any $1\leq i\leq n$ and $1\leq j\leq k_i$, we can define $$s_{i,j}(x)=\left\{\begin{array}{cc}\rho_i(x)\varphi_i(x,e_j),&\text{if }x\in U_i\\ 0_x,&\text{otherwise}\end{array}\right.$$ (Here, we write $0_x$ for the zero vector in the fiber $\xi_x$.) Since $\text{supp}(\rho_i)\subset U_i$, this is a well-defined section $s_{i,j}\in \Gamma(\xi).$ Fix any $x\in X$ and any $v\in \xi_x$. For each index $i$ with $x\in U_i$, we can write $$\varphi_i^{-1}(v)=(x,a_{i1}e_1+\dots+a_{ik_i}e_{k_i})$$ for some scalars $a_{i1},\dots,a_{ik_i}\in\mathbb F$. Then we have $$\sum_{j=1}^{k_i}a_{ij}\varphi(x,e_j)=\varphi_i\left(x,a_{i1}e_1+\dots+a_{ik_i}e_{k_i}\right)=v.$$ Setting $a_{ij}=0$ whenever $x\notin U_i$, we can calculate $$\sum_{i=1}^n\sum_{j=1}^{k_i}a_{ij}s_{ij}(x)=\sum_{x\in U_i}\sum_{j=1}^{k_i}a_{ij}\rho_i(x)\varphi_i(x,e_j)=\sum_{x\in U_i}\rho_i(x)\sum_{j=1}^{k_i}a_{ij}\varphi_i(x,e_j)=\sum_{x\in U_i}\rho_i(x)v=v.$$ This proves that any $v\in E(\xi)$ can be realized as the image of some section in $$V=\text{span}\{s_{ij}:1\leq i\leq n\text{ and }1\leq j\leq k_i\}.$$ Therefore, the subspace $V\subset \Gamma(\xi)$ is ample and has finite dimension $k_1+\dots+k_n$. 
$(\text d)\Longrightarrow (\text e)$ We can view the restricted map $\text{ev}|_{X\times V}:X\times V\rightarrow E$ as a bundle map, since $$\xi\circ \text{ev}(x,s)=\xi\circ s(x)=x.$$Since $V$ is ample, this map is surjective. Since $V$ is finite-dimensional, we can identify it with $\mathbb F^n$. 
$(\text e)\Longrightarrow (\text a)$ Since $\varphi$ is surjective, it has locally constant rank and $\ker\varphi\subset X\times \mathbb F^n$ is a sub-bundle. Taking the standard inner product on $\mathbb F^n$, we get a complementary sub-bundle $(\ker\varphi)^\perp\subset X\times \mathbb F^n$.  The restriction $\varphi:(\ker \varphi)^\perp\rightarrow \xi$ is a bijective bundle map, so we have $\xi\cong (\ker\varphi)^\perp$. But now $$(\ker \varphi)\oplus \xi\cong (\ker \varphi)\oplus (\ker \varphi)^\perp$$ is trivializable (the right-hand side is simply $X\times \mathbb F^n$), so $\xi$ and $\ker\varphi$ are complementary. $\square$

Having established several descriptions of this notion of "finite type," we will prove Swan's theorem, which describes the category of finite-type bundles as being (in some sense) the same as the category of finitely generated, projective modules over the ring $C(X)$ of continuous maps $X\rightarrow \mathbb F$. To do so, we seek to understand how a bundle $\xi$ is described by it sections $\Gamma(\xi)$, viewed as a $C(X)$-module. 
This particular presentation is my own, but all proofs closely resemble those in Swan's original paper, from which I have taken both inspiration and the general trajectory of this argument.

For any bundle map $f:E(\xi)\rightarrow E(\eta)$, we define a morphism $\Gamma \!f:\Gamma(\xi)\rightarrow \Gamma(\eta)$ by $\Gamma \!f(s)=f\circ s$. Writing $\textbf{Vect}_X$ for the category of vector bundles over $X$, this is a functor $\Gamma:\textbf{Vect}_X\rightarrow \textbf{Mod}_{C(X)}$. Additionally, if we have two bundle maps $f,g:E(\xi)\rightarrow E(\eta)$ and functions $a,b\in C(X)$, we get $$\Gamma(af+bg)=a\Gamma(f)+b\Gamma(g).$$ $\big($This $C(X)$-linearity condition can be phrased in terms of categories enriched over $\textbf{Mod}_{C(X)}$.$\big)$

We also have a canonical isomorphism $\Gamma(\xi\oplus \eta)\cong \Gamma(\xi)\oplus \Gamma(\eta)$ for any $\xi,\eta\in \textbf{Vect}_X$ (applying $\Gamma$ to the coproduct diagram $\xi\rightarrow \xi\oplus \eta\leftarrow \eta$ produces another coproduct diagram). Let $\varepsilon:X\times \mathbb F\rightarrow X$ be the trivial line bundle. Then we have $\Gamma(\varepsilon)\cong C(X)$ and thus $\Gamma(\varepsilon^{\oplus n})\cong C(X)^{\oplus n}$ for any $n\in \mathbb N,$ so the sections of a trivializable bundle form a free $C(X)$-module. This leads us to our next result:

Lemma 2. If $\xi:E\rightarrow X$ is a bundle of finite type, then $\Gamma(\xi)$ is finitely generated and projective.

Proof. Consider a complement $\xi\oplus \eta\cong \varepsilon^{\oplus n}$. Then we get both an inclusion and a projection map: $$\iota:E(\xi)\rightarrow E(\varepsilon^{\oplus n})\qquad\text{and}\qquad \pi:E(\varepsilon^{\oplus n})\rightarrow E(\xi).$$ Then $\pi\circ \iota=\text{Id}$ and therefore $\Gamma\pi\circ \Gamma\iota=\text{Id}$. Since $\Gamma\pi:\Gamma(\varepsilon^{\oplus n})\rightarrow \Gamma(\xi)$ a surjection with a section, we get a splitting $\Gamma(\varepsilon^{\oplus n})\cong \Gamma(\xi)\oplus \ker(\Gamma \pi)$. Since $\Gamma(\varepsilon^{\oplus n})$ is free, we see that $\Gamma(\xi)$ is projective. Moreover, the module $\Gamma(\xi)$ is finitely generated by the images of the $n$ generators of $\Gamma(\varepsilon^{\oplus n}).$ $\square$ 

We now write $\textbf{Vec}_X^\text{fin}$ for the category of bundles over $X$ of finite type and $\textbf{Proj}_{C(X)}^\text{fin}$ for the category of finitely generated projective $C(X)$-modules. We get a restricted functor $\Gamma:\textbf{Vec}_X^\text{fin}\rightarrow \textbf{Proj}_{C(X)}^\text{fin}$ by Lemma 2. Our ultimate theorem will show that these two categories are identified by the functor $\Gamma$. More precisely, recall that an "equivalence" of categories is a functor $F:\mathscr C\rightarrow \mathscr D$, which is:
  • fully faithful, meaning that $F:\text{Hom}(A,B)\rightarrow \text{Hom}\big(F(A),F(B)\big)$ is a bijection for all objects $A,B\in \text{Ob}(\mathscr C)$ (i.e. morphisms in $\mathscr C$ and $\mathscr D$ look the same under the functor $F$);
  • essentially surjective, meaning that every object $B\in \text{Ob}(\mathscr D)$ is isomorphic to $F(A)$ for some object $A\in \text{Ob}(\mathscr C)$ (i.e. isomorphism classes in $\mathscr D$ all contain objects hit by the functor $F$).
Notice that $F$ being fully faithful already implies that $F$ is injective on isomorphism classes, which is why the second condition only requires essential surjectivity. We will (eventually) show the functor $\Gamma:\textbf{Vec}_X^\text{fin}\rightarrow \textbf{Proj}_{C(X)}^\text{fin}$ to be an equivalence of categories. In fact, the fully faithful condition will hold for a larger class of bundles! Since this post is all about proving things in generality, I will go into these more pedantic details, starting with some more definitions concerning a bundle $\xi:E\rightarrow X$.
  • For our purposes, a "bump function about $x$" means a map $u:X\rightarrow [0,\infty),$ where $u(x)>0$ and $\xi$ is trivializable over some open set $U\supset \text{supp}(u)$. (Possibly rescaling, we can assume that $u(x)=1$.) If every $x\in X$ admits a bump function about $x$, we say that $\xi$ is "bumpable."
  • Using the definition of "ample" above, we will say that $\xi$ has "ample sections" if $\Gamma(\xi)$ is ample, i.e. every vector in every fiber is in the image of some section.
  • We say that sections $s_1,\dots,s_n\in \Gamma(\xi)$ form a "local basis near $x$" if there is a neighborhood $x\in U$ such that $s_1(y),\dots,s_n(y)$ is a basis of the fiber $\xi_y$ for every $y\in U$. We will say that the bundle has local bases to mean that every point $x\in X$ admits a local basis near $x$. 
We begin by collecting some facts about these notions:

Lemma 3. If $s_1,\dots,s_n\in \Gamma(\xi)$ are such that $s_1(x),\dots,s_n(x)$ are a basis for the fiber $\xi_x$, then they form a local basis near $x$. Our properties of bundles obey the following chain of implications:
$$\text{trivializable}\Longrightarrow \text{finite type}\Longrightarrow \text{bumpable}\Longrightarrow \text{ample sections}\Longleftrightarrow \text{local bases}.$$Proof. Suppose that $s_1,\dots,s_n\in \Gamma(\xi)$ are such that $s_1(x),\dots,s_n(x)$ form a basis for the fiber $\xi_x$. Then, by the upper semi-continuity of rank, there is a neighborhood $x\in U$, with $s_1(y),\dots,s_n(y)$ linearly independent for each $y\in U.$ Since $\xi$ has locally constant dimension, there is a neighborhood $x\in V$ with $\dim\xi_y=n$ for each $y\in V$. Thus $s_1(y),\dots,s_n(y)$ is a basis of $\xi_y$ for every $y\in U\cap V$, so the sections $s_1,\dots,s_n$ form a local basis near $x$. 
        Suppose that $\xi$ has ample sections. For any point $x\in X$, we can choose a basis $v_1,\dots,v_n\in \xi_x$ and find sections $s_1,\dots,s_n\in \Gamma(\xi)$, with $s_i(x)=v_i$ for each $i=1,\dots,n$. We have just proven that such sections will form a local basis near $x$. Since $x$ was arbitrary, we see that $\xi$ admits local bases.
        Conversely, suppose that $\xi$ admits local bases. Then for any $x\in X$, we can take a local basis $s_1,\dots,s_n\in \Gamma(\xi)$ near $x$. Since $s_1(x),\dots,s_n(x)$ span the fiber $\xi_x,$ we see that any vector in this fiber is in the image of a section. But $x$ was arbitrary, so $\xi$ has ample sections.
        Suppose that $\xi$ is bumpable. For any $x\in X$, we can find a trivialization $\varphi:U\times \mathbb F^n\rightarrow E(\xi|_U)$ over a neighborhood $x\in U$, and a function $u:X\rightarrow [0,\infty)$ such that $u(x)=1$ and $\text{supp}(u)\subset U$. Any element of the fiber $\xi_x$ is of the form $\varphi(x,v)$ for some $v\in \mathbb F^n$ and thus lies in the image of $$s(y)=\left\{\begin{array}{cc}u(y)\varphi(y,v), & \text{if }x\in U\\ 0_x, & \text{otherwise}\end{array}\right.$$Since $\text{supp}(u)\subset U$, this gives us a well-defined section $s\in \Gamma(\xi)$. Since $x$ and $v$ were both arbitrary, this proves that $\xi$ has ample sections.
        Finally, the implications "$\text{trivializable}\Longrightarrow \text{finite type}$" and "$\text{finite type}\Longrightarrow \text{bumpable}$" follow immediately from Definitions 1(a) and 1(c) of finite type, respectively. $\square$

Let $\textbf{Vect}_X^\text{bump}$ denote the category of bumpable vector bundles over $X$. We now set out to prove that the restricted functor $\Gamma:\textbf{Vect}_X^\text{bump}\rightarrow \text{Mod}_{C(X)}$ is fully faithful, beginning with faithfulness:

Lemma 4. Given two bundles $\xi,\eta\in \textbf{Vect}_X$, where $\xi$ has ample sections, the map of hom-sets $\Gamma:\text{Hom}(\xi,\eta)\rightarrow \text{Hom}\big(\Gamma(\xi),\Gamma(\eta)\big)$ is injective.

Proof. Since the hom-sets are abelian groups and the map $\Gamma$ is a homomorphism, it suffices to show that its kernel is trivial. Suppose that $f:E(\xi)\rightarrow E(\eta)$ is a bundle map with $\Gamma\!f=0.$ By ampleness, for any $v\in E(\xi)$, we have some $x\in X$ and $s\in \Gamma(\xi)$ with $s(x)=v$. But then we have $$f(v)=(f\circ s)(v)=\Gamma\!f(s)(v)=0,$$ since $\Gamma\!f=0$. Since $v\in E(\xi)$ was arbitrary, it follows that $f=0$. $\square$

We can also give a more algebraic description of fibers, in terms of sections. For a vector bundle $\xi:E\rightarrow X$ and a point $x\in X$, we will write $\text{ev}_x:\Gamma(\xi)\rightarrow \xi_x$ to denote evaluation $\text{ev}_x(s)=s(x).$ This is a morphism of $C(X)$-modules and if $\Gamma(\xi)$ is ample, then $\text{ev}_x$ is surjective. Therefore, we can describe $\xi_x\cong \Gamma(\xi)/\ker (\text{ev}_x)$. Recall that if $R$ is a ring, $I\subset R$ is an ideal and $M$ is an $R$-module, we write $IM$ for the submodule of $M$ generated by $\{am:a\in I\text{ and }m\in M\}$, which consists of all finite sums of these generating elements $am$ (with $a\in I$ and $m\in M$). With this notation, we have:

Lemma 5. Consider a bumpable bundle $\xi:E\rightarrow X$. Fix a point $x\in X$ and let $\mathfrak m_x\subset C(X)$ denote the ideal of functions that vanish at $x$. Then $\ker(\text{ev}_x)=\mathfrak m_x \Gamma(\xi)$ and therefore $\xi_x\cong \Gamma(\xi)/\mathfrak m_x\Gamma(\xi)$.

Proof. Since bumpable bundles have ample sections, the second assertion will follow immediately from the first assertion and the paragraph above. If $a\in \mathfrak m_x$ and $s\in \Gamma(\xi)$, then $a(x)=0$ and thus $$\text{ev}_x(as)=(as)(x)=a(x)s(x)=0.$$ Therefore $\mathfrak m_x\Gamma(\xi)\subset \ker(\text{ev}_x).$ To prove the converse inclusion, suppose that $s\in \ker(\text{ev}_x)$. Since $\xi$ is bumpable, there exists a neighborhood $x\in U$, a trivialization $\varphi:E(\xi|_U)\rightarrow U\times \mathbb F^n$, and a map $u:X\rightarrow [0,\infty)$ with $u(x)=1$ and $\text{supp}(u)\subset U$. We define $v:X\rightarrow [0,1]$ and $w:X\rightarrow \mathbb R$ by $$v(y)=\min\left(2u(y),1\right)\qquad\text{and}\qquad w(y)=\min(2-2u(x),1).$$ Now, notice that $v\equiv 1$ on the open set $u^{-1}(1/2,\infty)$ containing $x$, whereas $w\equiv 1$ on $u^{-1}[0,1/2]$. Thus $v(y)<1\Longrightarrow w(y)=1$. Note also that $w(x)=0$, so we have $w\in \mathfrak m_x$. Let $\pi_i:U\times \mathbb F^n\rightarrow \mathbb F$ denote projection onto the $i^\text{th}$ coordinate of $\mathbb F^n$. For each $i=1,\dots,n$, we can define both $$a_i(y)=\left\{\begin{array}{cc}v(y)\cdot (\pi_i\circ \varphi\circ s)(y), & \text{if }y\in U\\ 0, & \text{otherwise}\end{array}\right.\qquad\text{and}\qquad s_i(y)=\left\{\begin{array}{cc}v(y)\cdot \varphi^{-1}(y,e_i), & \text{if }y\in U \\ 0_y, & \text{otherwise}\end{array}\right.$$Since $\text{supp}(v)=\text{supp}(u)\subset U$, we get well-defined $a_1,\dots,a_n\in C(X)$ and $s_1,\dots,s_n\in \Gamma(\xi).$ Since $s(x)=0_x$ by assumption, we have $a_i(x)=0$ and therefore $a_i\in \mathfrak m_x$, for all $i=1,\dots,n$. Whenever $v(y)=1$ (which implies $y\in U$), we can view $s_i(y)$ as the $i^\text{th}$ basis vector of the fiber $\xi_y$ and $a_i(y)$ as the corresponding component of $s(y)\in \xi_y$ (both via the trivialization $\varphi$), so we get $$s(y)=a_1(y)s_1(y)+\dots+a_n(y)s_n(y).$$ Phrased differently, the section $r=s-(a_1s_1+\dots+a_ns_n)$ vanishes on $v^{-1}(1)$. Thus if $r(y)\neq 0$, then $v(y)<1$ and consequently $w(y)=1$. This proves that $r=wr$ and consequently that $$s=r+a_1s_1+\dots+a_ns_n=wr+a_1s_1+\dots+a_ns_n\in \mathfrak m_x \Gamma(\xi).$$Since $s\in \ker(\text{ev}_x)$ was arbitrary, this proves the reverse inclusion $\ker(\text{ev}_x)\subset \mathfrak m_x\Gamma(\xi)$. $\square$

Lemma 5 says that in a bumpable bundle, the vanishing of a section at a point $x$ can be seen to occur "because of functions" vanishing at $x$. This will combine with the $C(X)$-linearity of $\Gamma$ to show that every module homomorphism $\Gamma(\xi)\rightarrow \Gamma(\eta)$ comes from a bundle map $\xi\rightarrow \eta$. More specifically:

Lemma 6. If $\xi$ and $\eta$ are bundles over $X$ and $\xi$ is bumpable, then the map of hom-sets $$\Gamma:\text{Hom}(\xi,\eta)\rightarrow \text{Hom}\big(\Gamma(\xi),\Gamma(\eta)\big)$$ is a bijection. In particular, the functor $\Gamma:\textbf{Vec}_X^\text{bump}\rightarrow \textbf{Mod}_{C(X)}$ is fully faithful.

Proof. Since any bumpable bundle has ample sections, injectivity of this map follows from Lemma 4, so it suffices to consider an arbitrary morphism $\varphi:\Gamma(\xi)\rightarrow \Gamma(\eta)$ and show that it lies in the image. For any $x\in X$, we have a morphism $\text{ev}_x\circ\varphi:\Gamma(\xi)\rightarrow \eta_x$. For any $a\in \mathfrak m_x$ and $s\in \Gamma(\xi)$, we get $$\text{ev}_x\circ \varphi(as)=\text{ev}_x\big(a\varphi(s)\big)=a(x)\cdot \varphi(s)(x)=0,$$ since $a(x)=0$. Thus $\mathfrak m_x\Gamma(\xi)\subset \ker(\text{ev}_x\circ \varphi)$, so this $\text{ev}_x\circ\varphi$ factors through to give a linear map $$f_x:\xi_x\cong \Gamma(\xi)/\mathfrak m_x\Gamma(\xi)\rightarrow \eta_x.$$(Here, we are using Lemma 5 and the assumption that $\xi$ is bumpable.) We want to define a bundle map $f:E(\xi)\rightarrow E(\eta)$ given fiberwise by $f_x:\xi_x\rightarrow \eta_x$. From this definition, for any $s\in \Gamma(\xi)$, we have $$f\big(s(x)\big)=f_x\big(s(x)\big)=\text{ev}_x\circ \varphi(s)=\varphi(s)(x).$$ We don't yet know that $f$ is continuous, but once we do, the rest will fall into place. By its definition, we have $f(\xi_x)\subset \eta_x$, so we indeed get a bundle map. This map also satisfies $\Gamma\!f=\varphi$ (proving that $\varphi$ is in the image of $\Gamma$), because $\Gamma\!f(s)(x)=f\circ s(x)=\varphi(s)(x).$ It remains to prove $f$ is continuous. Fix $x\in X$ and let $s_1,\dots,s_n\in \Gamma(\xi)$ be a local basis near $x$. Then there is a neighborhood $x\in U$ such that $s_1(y),\dots,s_n(y)$ forms a basis of $\xi_y$ for each $y\in U$. Thus we may define a trivialization $$\psi:U\times \mathbb F^n\rightarrow E(\xi|_U)\qquad\text{by}\qquad \psi\big(y,(a_1,\dots,a_n)\big)=a_1s_1(y)+\dots+a_ns_n(y).$$ On this trivialized portion, we can see that $f\circ \psi$ is continuous, being a linear combination of sections: $$f\circ\psi\big(y,(a_1,\dots,a_n)\big)=a_1f\big(s_1(y)\big)+\dots+a_nf\big(s_n(y)\big)=a_1\varphi(s_1)(y)+\dots+a_n\varphi(s_n)(y).$$But $\psi$ is a homeomorphism onto the open set $E(\xi|_U)\subset E(\xi)$ containing the fiber $\xi_x$, so this proves continuity of $f$ near that fiber. Since $x\in X$ was an arbitrary point, we conclude that $f$ is continuous.
        Our final assertion—that the functor $\Gamma:\textbf{Vect}^\text{bump}_X\rightarrow \textbf{Mod}_{C(X)}$ is fully faithful—is really just a restatement of the above result (with the added, unnecessary assumption that $\eta$ is bumpable). $\square$

Knowing this functor to be fully faithful is quite powerful: it is a complete description of bundles and maps between them, purely in terms of their modules of sections. For example, given any bumpable bundles $\xi$ and $\eta$, we have $\xi\cong \eta\Longleftrightarrow \Gamma(\xi)\cong \Gamma(\eta)$. But we are still lacking in one respect: we don't have a good idea of which $C(X)$-modules can be realized as modules of sections. To identify a nice sub-category of $\textbf{Mod}_{C(X)}$ that exactly reflects a category of bundles, we have to restrict to finite type. Once we make this restrction, following the creed that objects are best understood in terms of maps between them, we will see that essential surjectivity follows fairly directly from full-faithful-ness (combined with the fact that "fiber-wise projections have locally constant rank," detailed below). 

Theorem 7. For any finitely generated projective $C(X)$-module $P$, there exists a bundle $\xi:E\rightarrow X$ of finite type, such that $\Gamma(\xi)\cong P$. Hence $\Gamma:\textbf{Vec}_X^\text{fin}\rightarrow \textbf{Proj}_{C(X)}^\text{fin}$ is an equivalence of categories.

Proof. Since $P$ is finitely generated and projective, we can write $P\oplus Q\cong C(X)^{\oplus n}$ for some other $C(X)$-module $Q$ and some $n\in\mathbb N$. Then we have a $C(X)$-linear map $\varphi:C(X)^{\oplus n}\rightarrow C(X)^{\oplus n}$, corresponding to projection $P\oplus Q\rightarrow P$. We can identify $C(X)^{\oplus n}=\Gamma(\varepsilon^{\oplus n})$ and get a bijection $$\Gamma:\text{Hom}(\varepsilon^{\oplus n},\varepsilon^{\oplus n})\rightarrow \text{Hom}\big(C(X)^{\oplus n},C(X)^{\oplus n}\big),$$ because $\Gamma$ is fully faithful on bumpable bundles (e.g. trivial bundles). Now let $f:E(\varepsilon^{\oplus n})\rightarrow E(\varepsilon^{\oplus n})$ be the unique bundle map with $\Gamma\! f=\varphi$. Since $\varphi$ is a projection, we have $\varphi^2=\varphi$ and thus $f^2=f$. Let $f_x:\mathbb F^n\rightarrow \mathbb F^n$ denote the map $f$ on the fiber over some $x\in X$. Since $f_x^2=f_x$, we see that $\mathbb F^n$ splits as the direct sum of two eigenspaces: $\mathbb F^n=\ker(f_x)\oplus \ker(\text{Id}-f_x)$. Thus we have $$\text{rank}(f_x)=n-\dim\ker(f_x)=\dim\ker(\text{Id}-f_x)=n-\text{rank}(\text{Id}-f_x).$$From the upper semi-continuity of rank (applied to $f_x$ and $\text{Id}-f_x$), we can now see that the function $\text{rank}(f_x)$ is upper and lower semi-continuous as a function $X\rightarrow \mathbb N$ and therefore locally constant. Thus, we may define sub-bundles $\eta=\ker f$ and $\xi=\text{im}\,f=\ker(\text{Id}-f)$ with $\xi\oplus \eta=\varepsilon^{\oplus n}$. Then$$\Gamma(\xi)\oplus \Gamma(\eta)\cong \Gamma(\xi\oplus \eta)=\Gamma(\varepsilon^{\oplus n})=C(X)^{\oplus n}.$$ Since $f:\xi\oplus \eta\rightarrow \xi\oplus \eta$ simply annihilates the $\eta$-component, we can see that $$\Gamma\!f:\Gamma(\xi)\oplus \Gamma(\eta)\rightarrow \Gamma(\xi)\oplus \Gamma(\eta)$$ just annihilates the $\Gamma(\eta)$-component. Since $\Gamma\!f=\varphi$, we therefore have $\Gamma(\xi)\cong \text{im}\,\Gamma\!f=\text{im}\,\varphi\cong P$.
        Finally, we put all the pieces together. We proved in Lemma 2 that $\Gamma(\xi)$ is finitely generated and projective whenever $\xi$ has finite type, so we have a functor $\Gamma:\textbf{Vec}_X^\text{fin}\rightarrow \textbf{Proj}_{C(X)}^\text{fin}$. We have just proven that this functor is essentially surjective. It is fully faithful by Lemma 6, since any finite type bundle is bumpable. Therefore, we have proven the desired equivalence of categories. $\square$

Comments