Functional calculus of several variables It is well know that for a normal element $a$ of C*-algebra $A$ there exists functional calculus namely there is a *-homomorphism $C(\sigma({a})) \to A$ uniquely determined by sending $z \mapsto a$. 
Is that true that for, say, two normal elements $a,b \in A$ such that everything commutes ($a, a^{*}, b, b^{*}$) there is a *-homomorphism $\sigma(a) \times \sigma(b) \subset \mathbb{C^2} \to A$ such that $z_1 \mapsto a, z_2 \mapsto b$? I guess it is to say that a unital  $C^{*}$-algebra generated by two commuting normal elements $a,b$  is isomorphic to $C(\sigma(a)\times \sigma(b))$  or that $Max(A)$  is homeomorphic to  $\sigma(a)\times \sigma(b) \subset \mathbb{C^2}$. 
I would prove it as follows: send $z_1 \mapsto a$, $z_2 \mapsto b $, by Stone-Weierstrass the subalgebra generated by $z_1, z_2$ is dense so the map extends to *-homomorphism $C(\sigma(a) \times \sigma(b)) \to C^{*} \langle a,b \rangle$  where $C^{*} \langle a,b \rangle$ means a $C^{*}$-algebra generated by $a,b$. I understand that it is rather a sketch and it feels like using coproduct. I mean, I have the *-homomorphisms $C(\sigma(a)) \to C^{*} \langle a,b \rangle $ and $C(\sigma(a)) \to C^{*} \langle a,b \rangle$ so I have a morphism from coproduct to $C^{*} \langle a,b \rangle$. I am not sure what coproduct is though. It must be some kind of tensor product. And of course $Max$ of the coproduct must be homeomorphic to $(\sigma(a) \times \sigma(b))$. 
 A: You have a typo/misconception in your question. The map you want (if anything) should be from $C(\sigma(a)\times\sigma(b))\to A$. But this will not usually work. 
With very few exceptions, $\sigma(a)\times\sigma(b)$ is too big. For a simple case, note that if $b=a$, then you should obtain $C(\sigma(a))$, and not $C(\sigma(a)\times\sigma(a))$. 
What you can do is the following. Since $C^*(a,b)$ is abelian, you have $C^*(a,b)\simeq C(\Delta)$, where $\Delta$ is the spectrum of $C^*(a,b)$ (i.e., the characters). So you have a natural map $\Gamma:\Delta\to\sigma(a)\times \sigma(b)$ given by $\Gamma:\varphi\longmapsto (\varphi(a),\varphi(b))$. This map $\Gamma$ is continuous and injective, but normally not surjective. The image $\sigma(a,b):=\Gamma(\Delta)$ is what we often call the joint spectrum of $a,b$. And we have $$C^*(a,b)\simeq C(\Delta)\simeq C(\sigma(a,b))\subset C(\sigma(a)\times\sigma(b)).$$In general, it is not easy to identity $\sigma(a,b)$ explicitly.  
A: Let me give some remarks in addition to Martin's answer. First note that $ab=ba$ immediately implies $a^\ast b^\ast=b^\ast a^\ast$, while $a^\ast b=ba^\ast$ and $ab^\ast=b^\ast a$ follow from Fuglede's theorem. Hence "everything commutes" boils down to "$a$ and $b$ commute".
As Martin mentioned, the spectrum of $C^\ast(a,b)$ is in general not homeomorphic to $\sigma(a)\times\sigma(b)$. But since the joint spectrum is not very accessible, one often uses the (non-isometric) $\ast$-homomorphism $\Phi\colon C(\sigma(a)\times \sigma(b))\to C^\ast(a,b)$ as functional calculus in practice.
The map $\Phi$ can be constructed as you indicate. Just note that it for the complex version you need polynomials not only in $z_1$, $z_2$, but also their conjugates. As for the spectral theorem for a single operator, the crucial step is to show that this map is contractive so that it can be extended to all of $C(\sigma(a)\times \sigma(b))$.
If you already know the spectral theorem for a single operator, you can skip this step (showing contractivity) by "gluing together" the homomorphisms $\Phi_1\colon C(\sigma(a))\to A$ and $\Phi_2\colon C(\sigma(b))\to A$. The coproduct of $C(\sigma(a))$ and $C(\sigma(b))$, however, is not what you want to use here.
The coproduct of two $C^\ast$-algebras $A$ and $B$ is what is called the free product $A\ast B$. This algebra is always noncommutative unless one of the factors is trivial, as has to be expected. In other words, the free product has the universal property that every pair of $\ast$-homomorphisms $\alpha\colon A\to C$, $\beta\colon B\to C$ induces a unique $\ast$-homomorphism $\gamma\colon A\ast B\to C$. This is more than what you need for the functional calculus, though, because $\Phi_1$ and $\Phi_2$ have the additional property that their ranges commute (because $a$ and $b$ do).
The $C^\ast$-algebra with the universal property of the free product, but only for commuting $\ast$-homomorphisms, also exists and is a tensor product, as you correctly anticipated, called the maximal tensor product. In the commutative case one has $C(X)\otimes_\max C(Y)\cong C(X\times Y)$. Thus one can form $\Phi_1\otimes \Phi_2\colon C(\sigma(a))\otimes_\max C(\sigma(b))\to A$ and it is not hard to see that this map has the desired properties of a functional calculus.
