Hey John,

> I've never heard of a "matrix homomorphism", so you'd have to define that concept before I could answer. I know what a homomorphism of matrix algebras is, but that doesn't go between matrices: it goes between _sets_ of matrices.

I think I know what Keith is getting at.

Take the free [semigroup](https://en.wikipedia.org/wiki/Semigroup) \$$\mathfrak{S} = \langle S, ; \rangle\$$ over an infinite alphabet (using Frederick Eisel's notation).

As you noted, you can make a [rig](https://en.wikipedia.org/wiki/Rig) using multisets over \$$\mathfrak{S}\$$ with \$$\cup\$$ and \$$\otimes\$$, with \$$\otimes\$$ defined as:

$X \otimes Y := ⦃ x ; y \; : \; x \in X \text{ and } y \in Y ⦄$

Moreover, while multisets form a rig, we also have *finite* multisets form a rig.

For any rig, the finite \$$n \times n\$$ square matrices over that rig form another rig.

There's a "rig-homomorphism" that takes \$$n \times n\$$ matrices over finite multisets to \$$n \times n\$$ matrices over \$$\mathbb{N}\$$. In particular, it maps corresponding matrix-elements \$$a_{ij} \mapsto \lVert a_{ij} \rVert \$$.

I don't think there's an adjunction there, though.