This is a question which arose while working through Flajolet-Sedgewick's Analytic Combinatorics.
In their terminology, the cartesian product of two combinatorial classes $\mathcal{A},\mathcal{B}$ gives a new combinatorial class
$$\mathcal{C}=\mathcal{A}\times \mathcal{B}$$
and the generating function of $\mathcal{C}$ is simply
$$C(z)=A(z)\cdot B(z).$$
However, this rule assumes that the "size" of the objects in $\mathcal{C}$ is inherited as
$$\forall a\in\mathcal{A},b\in\mathcal{B}:|(a,b)|_{\mathcal{C}}:=|a|_{\mathcal{A}}+|b|_{\mathcal{B}}$$
Now, assume I define a different product $$\mathcal{C}=\mathcal{A}\circ\mathcal{B}$$ which shall fulfill that
$$|(a,b)|_{\mathcal{C}}:=\max(|a|_{\mathcal{A}},|b|_{\mathcal{B}})$$
What would then be the rule to obtain $C(z)$. Simple counting brings me to
$$C(z)=\sum_{n,m\in\mathbb{N}_0}A_n B_m z^{\max(n,m)}=...$$ $$ = \sum_{k\in\mathbb{N}_0}\left(\sum_{n\leq k}(A_n B_k+A_k B_n)-A_k B_k\right)z^k$$
But I was unable to bring this to a "simple" form, which expresses $C(z)$ in terms of $A(z)$ and $B(z)$. Can anyone help?