Grothendieck group of coherent sheaves is not a ring? My question is motivated by the fact that the Grothendieck group $K^0(X)$ of vector bundles on $X$ can be given a ring structure via the tensor product. But it seems to me that the Grothendieck group of coherent sheaves $K_0(X)$ has no such structure. Why?
Let $X$ be any scheme. Denote by $K_0(X)$ the Grothendieck group of coherent sheaves on $X$, defined as the quotient of the free abelian group $G_{\text{coh}}$ generated by formal symbols $[\mathscr F]$, where $\mathscr F$ is a coherent sheaf on $X$, by the relations $[\mathscr F] = [\mathscr F_1] + [\mathscr F_2]$ whenever there is a short exact sequence $0\to \mathscr F_1 \to \mathscr F\to \mathscr F_2 \to 0$.
It seems that the tensor product defines a ring structure on $G_{\text{coh}}$, so I assume that the subgroup generated by $[\mathscr F] - [\mathscr F_1] - [\mathscr F_2]$ is not an ideal in $G_{\text{coh}}$. Is there a concrete example of this?
Replacing every occurrence of "coherent sheaf" by "vector bundle", we obtain the Grothendieck group $K^0(X)$ of vector bundles on $X$. My understanding is that tensor product on $G_{\text{vb}}$ descends to a ring structure on $K^0(X)$, i.e. the subgroup of $G_{\text{vb}}$ generated by $[E] - [E_1] - [E_2]$ is an ideal of the ring $G_{\text{vb}}$.
Is there a philosophical reason why this should hold for $K^0$ but not $K_0$?
 A: I think the reason that we don't have a natural multiplication is that the tensor product is not exact, which can be seen in the affine case. So given $0\rightarrow M_1\rightarrow M_2\rightarrow M_3\rightarrow 0$ a short exact sequence of modules, we only have the exact exact sequence $M_1\otimes N\rightarrow M_2\otimes N\rightarrow M_3\otimes N\rightarrow 0$, where this first map need not be injective.
An explicit counterexample is $0\rightarrow \mathbb{Z}\xrightarrow{\times 2} \mathbb{Z}\rightarrow \mathbb{Z}/2\mathbb{Z}\rightarrow 0$, with $N=\mathbb{Z}/2\mathbb{Z}$, and our ring being $\mathbb{Z}$.
The reason for using vector bundles is that for finitely generated modules over reasonable rings, we have that $N$ is projective (that is, a vector bundle) if and only if its a flat module, which is the condition that the functor $\_\otimes N$ is exact.
So defining $K^0$ using only finitely generated flat modules is precisely what you do if you want the obvious tensor product to yield a ring structure on the Grothendieck group.
