Neo-Riemannian Theory in music21

Here’s a script that brute-forces its way through the 24 operations on PLR space for sucessive pairs of chords in the reduction of a Bach chorale.

I use a canonical name for the operation. Of course, most of these operations have homologues. The shortest label may not accurately reflect the relations between the harmonies (or so one school of thought has it). Choosing from equivalent composed operations lends an element of expressivity to NRT.