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.