Dan wrote:

> \\(\\{\textrm{Bob} \mapsto \textrm{Alice}, \textrm{Alice} \mapsto \textrm{Bob}, \textrm{Tyler} \mapsto \textrm{Bob}\\}\\)

Ooh! I didn't think about that, but I see why it works! This map is precisely \\(\mathrm{FriendOf}\\), so of course it commutes with itself!

It would be nice if there was a constructive presentation of natural tranformations between databases -- or even over the same database, as with \\(H \Rightarrow H\\). I've been trying to figure out a general procedure to find all natural transformations without using brute force, but I'm not seeing anything yet.

> \\(\\{\textrm{Bob} \mapsto \textrm{Alice}, \textrm{Alice} \mapsto \textrm{Bob}, \textrm{Tyler} \mapsto \textrm{Bob}\\}\\)

Ooh! I didn't think about that, but I see why it works! This map is precisely \\(\mathrm{FriendOf}\\), so of course it commutes with itself!

It would be nice if there was a constructive presentation of natural tranformations between databases -- or even over the same database, as with \\(H \Rightarrow H\\). I've been trying to figure out a general procedure to find all natural transformations without using brute force, but I'm not seeing anything yet.