Vector bundle associated to a locally free sheaf

I spent a lot of time during my masters (and still now) trying to resolve such questions which frequently appear : "Should I apply the sheaf or its dual here? Which directions should my arrows go?" and the reason why it's so confusing is because this question has not been settled once and for all ; people keep arguing about it and there is no widely accepted consensus. I am personally trying to fix it at least for myself, and I think that in the case of this particular question, I have done it.

So here's the deal. If we are to choose between $\mathcal E$ and $\mathcal E^{\vee}$, our choice should at least make the algebra work. So we place ourselves in the most general setting where we can think of having the informal equality

Vector bundle = Locally free sheaf of finite constant rank

and we go on from there. I began by inspiring myself from differential geometry and worked in the category of vector bundles over an arbitrary manifold. In that case, a morphism of vector bundles $(E \to X) \to (E' \to X')$ is a morphism of manifolds $f : X \to X'$ paired with a morphism of vector bundles $f^{\sharp} : E \to f^* E'$, the pullback bundle. Another way to phrase this is that we have a commutative square formed by $f : X \to X'$ and $g : E \to E'$ such that the morphism is linear on fibers, but that's a differential-geometric condition so we won't look at that and focus on the other one instead, which resembles more the algebro-geometric setting.

So if we are to push the analogy to algebraic geometry, we should work the same way : a morphism of algebraic vector bundles $(E \to X) \to (E' \to X')$ should be a morphism of schemes $f : X \to X'$ and a morphism $g : E \to f^* E' = X \times_{X'} E'$ satisfying some properties (those properties are not important for the direction of the arrows or knowing whether we should put $^{\vee}$ or not).

Now to each vector bundle $\pi : E \to X$, we associate the locally free sheaf of sections $\Gamma_{E/X}$, which is literally what it is : for an open set $U$, $\Gamma_{E/X}(U)$ is the collection of sections $U \to \pi_E^{-1}(U)$. I won't discuss the $\mathcal O_X$-module structure of this sheaf for the moment. In the world (read: category) where we see a vector bundle as a locally free sheaf, we need to identify morphisms of vector bundles with morphisms of locally free sheaves.

But what is a morphism of "locally free sheaves" $(X, \mathcal E) \to (X',\mathcal E')$? Well, we have defined morphisms of schemes $(X, \mathcal O_X) \to (X', \mathcal O_{X'})$ via a continuous map $f : X \to X'$ and a morphism of sheaves $f^{\sharp} : \mathcal O_{X'} \to f_* \mathcal O_X$. If we use the $f^{-1}/f_*$ adjunction on this (because we expect pushforward to behave badly on bundles), this is the morphism $f^{\flat} : f^{-1} \mathcal O_{X'} \to \mathcal O_X$. In other words, a morphism of schemes is a continuous map and a morphism of sheaves which tells you how to pullback sections. After base extension, this gives you the isomorphism $f^{\flat} : f^* \mathcal O_{X'} \to \mathcal O_X$.

Why don't we do the same for modules?

Definition. A morphism of "locally free sheaves" $(X, \mathcal E) \to (X', \mathcal E')$ is a pair $(f, f^{\flat})$ where $f : X \to X'$ is a morphism of schemes and $f^{\flat} : f^{-1} \mathcal E' \to \mathcal E$ is a morphism of $f^{-1}\mathcal O_{X'}$-modules, or equivalently, a morphism $f^{\flat} : f^* \mathcal E' \to \mathcal E$.

But... wait! For vector bundles, we have a morphism $E \to f^* E'$, and for locally free sheaves, we have a morphism $f^* \mathcal E' \to \mathcal E$! We know that morally, the case of vector bundles is going in the "correct" direction. So the issue now is how to get from the category of vector bundles to the category of locally free sheaves and get that arrow pointing the right way.

Suppose we start with a morphism of locally free sheaves $(X, \mathcal E) \to (X', \mathcal E')$ with $f^{\flat} : f^* \mathcal E' \to \mathcal E$. Applying the symmetric algebra functor, we get $$ \mathrm{Sym}(f^{\flat}) : \mathrm{Sym}(f^* \mathcal E') \to \mathrm{Sym}(\mathcal E), $$ and applying the contravariant relative $\mathrm{Spec}$ functor, we obtain $$ \mathbf{Spec}(\mathrm{Sym}(f^{\flat})) : \mathbf{Spec}(\mathrm{Sym}(\mathcal E)) \to \mathbf{Spec}(\mathrm{Sym}(f^*\mathcal E')) $$ If we wish to identify $\mathcal E$ or $\mathcal E^{\vee}$ to the vector bundle $E$, one sees here that applying $^{\vee}$ to $f^{\flat}$ before applying $\mathbf{Spec}(\mathrm{Sym}(-))$ would get the arrow in the wrong direction! So we should not apply $^{\vee}$, and the correct functor is $\mathbf{Spec}(\mathrm{Sym}(-))$ from locally free sheaves to vector bundles.

In the other direction, if we start with a morphism of vector bundles $(E \to X) \to (E' \to X')$, we have a morphism of vector bundles $E \to f^* E'$ over $X$, so given a section $s : X \to E$, we can compose it with $E \to f^*E'$ and obtain a section $f^* s : X \to E \to f^* E'$, i.e. we have a morphism of sheaves $\Gamma_{E/X} \to \Gamma_{X/f^*E'} = f^* \Gamma_{E'/X'}$. Now this morphism does not make us happy, it is in the wrong direction! So we should apply duals on it to get it back right. (Duals commute with pullback; you need to worry about sheaf $\mathrm{Hom}$s, but this is a tractable issue.)

So the identification "Vector bundle = Locally free sheaf" is given by $$ \mathcal E \mapsto \mathbf{Spec}(\mathrm{Sym}(\mathcal E)), \quad E \mapsto \Gamma_{E/X}^{\vee}. $$ It is the only way to do it that categorically makes sense. If I remove or add $^{\vee}$ to any one of those functors, the constructions make no sense anymore.

A small remark; if you are not working with vector bundles (but say with coherent sheaves) and you still use $\mathbf{Spec}(\mathrm{Sym}(-))$ from $\mathfrak{Coh}(X)$ to $\mathbf{Sch}_X$, instead of using the functor $\Gamma_{E/X}$ or $\Gamma_{E/X}^{\vee}$, it is better to use $\pi_*(-)_1$, the degree $1$ part of the pushforward (the pushforward is a sheaf of graded $\mathcal O_X$-algebras). In this case, you also have an adjunction $$ \mathcal M \mapsto \mathbf{Spec}(\mathrm{Sym}(\mathcal M)), \quad E \mapsto (\pi_* \mathcal O_E)_1 $$ I don't know of anyone who does this though (work with coherent sheaves), so I don't know how useful it is or what one does with that.

EDIT : As for your attempt at understanding, consider the following. Given a vector bundle $\pi : E \to X$, a section of this vector bundle $s : X \to E$ is just a morphism of schemes satisfying $\pi \circ s = \mathrm{id}_X$. This $s$ is a morphism of affine $X$-schemes $X \to E$ which we can re-write as a morphism $$ \mathbf{Spec}(\mathrm{Sym}(\mathcal O_X)) \simeq X \to E \simeq \mathbf{Spec}(\mathrm{Sym}(\Gamma_{E/X}^{\vee})). $$ Note that those isomorphisms are natural by the adjunction I described above.

Since everything is affine, the above morphism corresponds to a morphism of graded $\mathcal O_X$-algebras $\mathrm{Sym}(\Gamma_{E/X}^{\vee}) \to \mathrm{Sym}(\mathcal O_X)$. Both sheaves are finitely generated $\mathcal O_X$-algebras in degree $1$, so this corresponds to a morphism of $\mathcal O_X$-modules $\Gamma_{E/X}^{\vee} \to \mathcal O_X$, i.e. a global section of the sheaf $$ \mathscr H\!\mathit{om}_{\mathcal O_X}(\Gamma_{E/X}^{\vee},\mathcal O_X) = \Gamma_{E/X}^{\vee \vee} \simeq \Gamma_{E/X}. $$ (these isomorphisms are again natural).

Going back to your example, the sheaf of global sections should be $\mathbb C[x]^{\oplus 2}$, not $\mathbb C[x]^2$; you pick two global sections in $\mathbb C[x]$ via a morphism of $\mathcal O_{\mathrm{Spec}(\mathbb C[x])}$-modules $\widetilde{\mathbb C[x]}^{\oplus 2} \to \widetilde{\mathbb C[x]}$ and you apply $\mathbf{Spec}(\mathrm{Sym}(-))$ on it. The reason why you need a morphism of $\mathbb C[x]$-modules and not a morphism of $\mathbb C[x]$-algebras (as you did and erroneously obtained $\mathbb C[x]^2$) is explained along the lines of my proof.

The essential detail that you skipped, geometrically speaking, is that the corresponding morphism of vector bundles must be linear on the fibers; this is all captured in the properties of the $\mathbf{Spec}(\mathrm{Sym}(-))$ functor since it builds the corresponding morphism on a morphism of $\mathcal O_X$-modules (which is a linear construction, not a polynomial one).

But after all, $\mathbb C[x]^2$ and $\mathbb C[x]^{\oplus 2}$ are equal as sets, so you weren't that far off. You just weren't looking for a ring of global sections, but for an $\mathcal O_X$-module of sections.

Hope that helps,