https://en.wikipedia.org/wiki/Neo-Riemannian_theory There is some work on experimenting with this. Search the repo for "triadic_tranformations.clj"