Background, Notation, Definitions: Given a set $X$, I define the set $M(X)$ of monomials with $X$-indeterminates to be the set of elements of $\omega^X$ having finite support. Given $m_0,m_1\in M(X)$, I define the operation $*$ on $M(X)$ by $$(m_0*m_1)(x):=m_0(x)+_\omega m_1(x).$$ $\langle M(X),*\rangle$ is then a commutative, cancellative monoid, with the zero element of $\omega^X$ as the identity.
Given a ring $R$, it is then natural to define the set $R[X]$ of polynomials with $R$-coefficients and $X$-indeterminates to be the set of elements of $R^{M(X)}$ having finite support. We define the addition and multiplication operations $\oplus$ and $\odot$ on $R[X]$ in terms of the addition and multiplication operations $+$ and $\cdot$ on $R$ as follows: $$(p_0\oplus p_1)(m):=p_0(m)+p_1(m)$$ $$(p_0\odot p_1)(m):=\underset{m_0*m_1=m}{\sum_{m_0,m_1\in M(X)}}p_0(m_0)\cdot p_1(m_1).$$ Then $\langle R[X],\oplus,\odot\rangle$ is a ring. It will be commutative when $R$ is, with unity when $R$ has one.
I define the function $\deg:M(X)\to\omega$ by $$\deg(m):=\sum_{x\in X}m(x),$$ and the function $\sigma:\bigl(R[X]\smallsetminus\{0_{R[X]}\}\bigr)\to\omega$ by $$\sigma(p):=\max\{\deg(m):m\in M(X),p(m)\ne0_R\}.$$ It is readily seen that $\deg(m_0*m_1)=\deg(m_0)+_\omega\deg(m_1)$ and that $\sigma(p_0\odot p_1)\le\sigma(p_0)+_\omega\sigma(p_1)$ whenever $p_0,p_1,p_0\odot p_1\ne 0_{R[X]}$.
I define the set $H(R,X)$ of homogeneous polynomials with $R$-coefficients and $X$-indeterminates to be the set of all $p\in R[X]\smallsetminus\{0_{R[X]}\}$ such that $$\sigma(p)=\min\{\deg(m):m\in M(X),p(m)\ne0_R\}.$$ It is readily seen that $H(R,X)\cup\{0_{R[X]}\}$ is a sub-semigroup of $\langle R[X],\odot\rangle$ (a sub-monoid if $R$ is unital).
The Actual Question: It seems clear to me that $R$ has the zero product property ($a\cdot b=0_R$ implies $a=0_R$ or $b=0_R$) if and only if $\langle H(R,X),\odot\rangle$ is a semigroup. In that case, the restriction of $\sigma$ to $H(R,X)$ should be a semigroup homomorphism--that is, $\sigma(h_0\odot h_1)=\sigma(h_0)+_\omega\sigma(h_1)$.
Unfortunately, I have been banging my head against the wall trying to prove these for some time now. In particular, I'm having trouble showing that whenever $R$ has the zero product property, then $h_0\odot h_1\ne0_{R[X]}$ whenever $h_0,h_1\in H(R,X)$. I've tried to proceed by induction on the cardinalities of the supports of $h_0,h_1$, but I can't figure out how to make the induction step click.
Any suggestions, hints, or nice proofs of this?