[proofplan]
We first show that extension of scalars sends finitely generated projective left $R$-modules to finitely generated projective left $S$-modules by tensoring a finite direct-summand decomposition of the module. We then check that this assignment respects isomorphism classes and direct sums, giving a monoid homomorphism $V(R)\to V(S)$. The universal property of group completion extends this monoid homomorphism uniquely to $K_0(R)\to K_0(S)$. Finally, the unit and associativity isomorphisms for tensor products identify the maps induced by the identity homomorphism and by a composite homomorphism with the expected maps on $K_0$.
[/proofplan]
[step:Show that extension of scalars preserves finite projectivity]
Let $P$ be a finitely generated projective left $R$-module. By definition of finite projectivity, there exist an integer $n\ge 0$, a left $R$-module $Q$, and an isomorphism of left $R$-modules
\begin{align*}
\theta:P\oplus Q\to R^n.
\end{align*}
Regard $S\otimes_R P$ as a left $S$-module by
\begin{align*}
a\cdot(s\otimes p)=(as)\otimes p
\end{align*}
for $a,s\in S$ and $p\in P$.
The [tensor product](/page/Tensor%20Product) functor $S\otimes_R -$ preserves finite direct sums, so there is a left $S$-module isomorphism
\begin{align*}
S\otimes_R(P\oplus Q)\cong (S\otimes_R P)\oplus(S\otimes_R Q).
\end{align*}
Tensoring $\theta$ with $S$ gives an isomorphism of left $S$-modules
\begin{align*}
S\otimes_R(P\oplus Q)\cong S\otimes_R R^n.
\end{align*}
The standard map $S\otimes_R R\to S$, $s\otimes r\mapsto s\varphi(r)$, is an isomorphism of left $S$-modules, and applying it componentwise gives
\begin{align*}
S\otimes_R R^n\cong S^n.
\end{align*}
Thus $(S\otimes_R P)\oplus(S\otimes_R Q)\cong S^n$, so $S\otimes_R P$ is a direct summand of a finite free left $S$-module. Hence $S\otimes_R P$ is finitely generated projective as a left $S$-module.
[guided]
The point of this step is to verify that the formula $[P]\mapsto[S\otimes_R P]$ even lands in the correct monoid. We begin with a finitely generated projective left $R$-module $P$. By the definition of finite projectivity, there are an integer $n\ge 0$, a left $R$-module $Q$, and an isomorphism
\begin{align*}
\theta:P\oplus Q\to R^n
\end{align*}
of left $R$-modules.
The left $S$-module structure on $S\otimes_R P$ is the one induced by multiplication on the first tensor factor:
\begin{align*}
a\cdot(s\otimes p)=(as)\otimes p
\end{align*}
for $a,s\in S$ and $p\in P$. This is well-defined because the balancing relation uses the right $R$-module structure on $S$, namely $s\cdot r=s\varphi(r)$.
Now tensor the direct-summand decomposition of $P$ with $S$. The tensor product functor $S\otimes_R-$ preserves finite direct sums, giving an isomorphism
\begin{align*}
S\otimes_R(P\oplus Q)\cong (S\otimes_R P)\oplus(S\otimes_R Q).
\end{align*}
It also carries the isomorphism $\theta$ to an isomorphism
\begin{align*}
S\otimes_R(P\oplus Q)\cong S\otimes_R R^n.
\end{align*}
Finally, the left $S$-module map
\begin{align*}
S\otimes_R R&\to S
\end{align*}
given by $s\otimes r\mapsto s\varphi(r)$ is an isomorphism, with inverse $s\mapsto s\otimes 1_R$. Applying this componentwise yields
\begin{align*}
S\otimes_R R^n\cong S^n.
\end{align*}
Combining these isomorphisms, we obtain
\begin{align*}
(S\otimes_R P)\oplus(S\otimes_R Q)\cong S^n.
\end{align*}
Therefore $S\otimes_R P$ is a direct summand of the finite free left $S$-module $S^n$. This is exactly the criterion for $S\otimes_R P$ to be finitely generated projective over $S$.
[/guided]
[/step]
[step:Construct the monoid homomorphism on isomorphism classes]
Let $V(R)$ denote the commutative monoid of isomorphism classes of finitely generated projective left $R$-modules under direct sum. Define a function
\begin{align*}
V(\varphi):V(R)\to V(S)
\end{align*}
by
\begin{align*}
V(\varphi)([P])=[S\otimes_R P].
\end{align*}
If $f:P\to P'$ is an isomorphism of finitely generated projective left $R$-modules, then
\begin{align*}
\operatorname{id}_S\otimes f:S\otimes_R P\to S\otimes_R P'
\end{align*}
is an isomorphism of left $S$-modules. Hence $V(\varphi)$ is well-defined on isomorphism classes.
For finitely generated projective left $R$-modules $P$ and $Q$, the canonical direct-sum isomorphism gives
\begin{align*}
S\otimes_R(P\oplus Q)\cong (S\otimes_R P)\oplus(S\otimes_R Q).
\end{align*}
Therefore
\begin{align*}
V(\varphi)([P]+[Q])=V(\varphi)([P])+V(\varphi)([Q]).
\end{align*}
Also $S\otimes_R 0\cong 0$, so $V(\varphi)([0])=[0]$. Thus $V(\varphi)$ is a homomorphism of commutative monoids.
[/step]
[step:Extend the monoid homomorphism to $K_0$]
Let $\iota_R:V(R)\to K_0(R)$ and $\iota_S:V(S)\to K_0(S)$ denote the canonical monoid homomorphisms into the Grothendieck group completions. The composite
\begin{align*}
\iota_S\circ V(\varphi):V(R)\to K_0(S)
\end{align*}
is a homomorphism of commutative monoids from $V(R)$ to the underlying commutative monoid of the abelian group $K_0(S)$, because both $V(\varphi)$ and $\iota_S$ preserve addition and zero. Applying the universal property of group completion, as stated in [citetheorem:8633], to this composite, there exists a unique [group homomorphism](/page/Group%20Homomorphism)
\begin{align*}
K_0(\varphi):K_0(R)\to K_0(S)
\end{align*}
such that
\begin{align*}
K_0(\varphi)\circ\iota_R=\iota_S\circ V(\varphi).
\end{align*}
Equivalently, for every finitely generated projective left $R$-module $P$,
\begin{align*}
K_0(\varphi)(\iota_R([P]))=\iota_S([S\otimes_R P]).
\end{align*}
This proves that extension of scalars induces the asserted homomorphism on $K_0$.
[/step]
[step:Identify the map induced by the identity homomorphism]
Let $R$ be a unital ring and let $P$ be a finitely generated projective left $R$-module. For $\varphi=\operatorname{id}_R$, define the left $R$-[module homomorphism](/page/Module%20Homomorphism)
\begin{align*}
\mu_P:R\otimes_R P\to P
\end{align*}
by
\begin{align*}
\mu_P(r\otimes p)=rp.
\end{align*}
Its inverse is the left $R$-module homomorphism
\begin{align*}
\eta_P:P\to R\otimes_R P
\end{align*}
defined by
\begin{align*}
\eta_P(p)=1_R\otimes p.
\end{align*}
The balancing relation gives $\eta_P(\mu_P(r\otimes p))=1_R\otimes rp=r\otimes p$, and $\mu_P(\eta_P(p))=p$. Thus $R\otimes_R P\cong P$, so
\begin{align*}
K_0(\operatorname{id}_R)(\iota_R([P]))=\iota_R([P]).
\end{align*}
By the construction of $K_0(R)$ as the Grothendieck group completion of $V(R)$, the subgroup generated by the image of $\iota_R:V(R)\to K_0(R)$ is all of $K_0(R)$. Hence equality on all elements $\iota_R([P])$, with $P$ finitely generated projective, gives
\begin{align*}
K_0(\operatorname{id}_R)=\operatorname{id}_{K_0(R)}.
\end{align*}
[/step]
[step:Identify the map induced by a composite homomorphism]
Let $\varphi:R\to S$ and $\psi:S\to T$ be unital ring homomorphisms. When $T$ is regarded as a right $R$-module for the composite $\psi\circ\varphi$, the action is
\begin{align*}
t\cdot r=t\psi(\varphi(r))
\end{align*}
for $t\in T$ and $r\in R$.
For a finitely generated projective left $R$-module $P$, define a left $T$-module homomorphism
\begin{align*}
\alpha_P:T\otimes_S(S\otimes_R P)\to T\otimes_R P
\end{align*}
by
\begin{align*}
\alpha_P(t\otimes(s\otimes p))=t\psi(s)\otimes p.
\end{align*}
We verify that $\alpha_P$ is balanced. For the $S$-balancing in $T\otimes_S(S\otimes_R P)$, if $u\in S$, then
\begin{align*}
\alpha_P((t\psi(u))\otimes(s\otimes p))=t\psi(u)\psi(s)\otimes p=t\psi(us)\otimes p
\end{align*}
and
\begin{align*}
\alpha_P(t\otimes(u s\otimes p))=t\psi(us)\otimes p.
\end{align*}
For the $R$-balancing inside $S\otimes_R P$, if $r\in R$, then
\begin{align*}
\alpha_P(t\otimes(s\varphi(r)\otimes p))=t\psi(s\varphi(r))\otimes p=t\psi(s)\psi(\varphi(r))\otimes p
\end{align*}
while
\begin{align*}
\alpha_P(t\otimes(s\otimes rp))=t\psi(s)\otimes rp.
\end{align*}
These are equal in $T\otimes_R P$ because the right $R$-action on $T$ for $\psi\circ\varphi$ is $t'\cdot r=t'\psi(\varphi(r))$. Hence $\alpha_P$ is well-defined.
Its inverse is induced by the map
\begin{align*}
T\times P\to T\otimes_S(S\otimes_R P)
\end{align*}
given by $(t,p)\mapsto t\otimes(1_S\otimes p)$. This map is $R$-balanced because, for $r\in R$,
\begin{align*}
t\psi(\varphi(r))\otimes(1_S\otimes p)=t\otimes(\varphi(r)\otimes p)
\end{align*}
and
\begin{align*}
t\otimes(\varphi(r)\otimes p)=t\otimes(1_S\otimes rp)
\end{align*}
by the $S$-balancing in the outer tensor product and the $R$-balancing in the inner tensor product. Therefore it gives the left $T$-module homomorphism
\begin{align*}
\beta_P:T\otimes_R P\to T\otimes_S(S\otimes_R P)
\end{align*}
with
\begin{align*}
\beta_P(t\otimes p)=t\otimes(1_S\otimes p).
\end{align*}
For elementary tensors, $\alpha_P(\beta_P(t\otimes p))=t\otimes p$, and
\begin{align*}
\beta_P(\alpha_P(t\otimes(s\otimes p)))=\beta_P(t\psi(s)\otimes p)=t\psi(s)\otimes(1_S\otimes p)=t\otimes(s\otimes p).
\end{align*}
Hence
\begin{align*}
T\otimes_S(S\otimes_R P)\cong T\otimes_R P
\end{align*}
as left $T$-modules.
Therefore, on the generator $\iota_R([P])\in K_0(R)$,
\begin{align*}
(K_0(\psi)\circ K_0(\varphi))(\iota_R([P]))=\iota_T([T\otimes_S(S\otimes_R P)])=\iota_T([T\otimes_R P])=K_0(\psi\circ\varphi)(\iota_R([P])).
\end{align*}
By the construction of $K_0(R)$ as the Grothendieck group completion of $V(R)$, the subgroup generated by the image of $\iota_R:V(R)\to K_0(R)$ is all of $K_0(R)$. Since the two group homomorphisms agree on every generator $\iota_R([P])$, they are equal:
\begin{align*}
K_0(\psi\circ\varphi)=K_0(\psi)\circ K_0(\varphi).
\end{align*}
[/step]