Documentation

Formalizations.MusicTheory.NeoRiemannian

The neo-Riemannian PLR group and the T/I group on the 24 triads #

The 24 major and minor triads Triad = ZMod 12 × Bool carry the transposition/inversion action of DihedralGroup 12, which is simply transitive. The neo-Riemannian involutions P, L, R commute with it, and the group they generate is the full centralizer of the T/I action in Equiv.Perm Triad: the two groups are dual in the sense of Crans, Fiore and Satyendra. The key step is that in a faithful transitive action a centralizing permutation with a fixed point is the identity, so the centralizer has at most 24 elements.

Main results #

References #

@[reducible, inline]

A triad is a root pitch-class in ZMod 12 with a quality bit (true = major, false = minor). There are exactly 24.

Equations
Instances For
    @[reducible, inline]

    The root pitch class.

    Equations
    Instances For
      @[reducible, inline]

      Quality: true = major, false = minor.

      Equations
      Instances For

        Pitch-class content: major root r = {r, r+4, r+7}; minor root r = {r, r+3, r+7}.

        Equations
        Instances For

          The T/I (transposition/inversion) action of D₁₂ #

          r i acts as transposition up by i; sr j acts as an inversion (flips quality, root ↦ −x−j−7). The constants are forced by the pitch-class content; the reindex makes this a genuine left action matching Mathlib's DihedralGroup multiplication.

          The T/I action on triads.

          Equations
          Instances For
            @[simp]
            theorem MusicTheory.TI.smul_r (i x : ZMod 12) (b : Bool) :
            @[simp]
            theorem MusicTheory.TI.smul_sr (j x : ZMod 12) (b : Bool) :

            The T/I action is transitive: any triad maps to any other.

            The neo-Riemannian operations P, L, R #

            P (parallel): same root, flip quality. L (leading-tone exchange). R (relative). Each is an involution. The crux of the duality is proved here at generator level: every one of P, L, R commutes with the entire T/I action — i.e. P, L, R lie in the centralizer of the T/I group inside Equiv.Perm Triad.

            Parallel: C major ↔ C minor.

            Equations
            Instances For

              Leading-tone exchange: C major ↔ E minor.

              Equations
              Instances For

                Relative: C major ↔ A minor.

                Equations
                Instances For

                  The three operations as elements of Equiv.Perm Triad (involutions are their own inverse).

                  Equations
                  Instances For

                    The duality crux: P, L, R each commute with the whole T/I action. #

                    theorem MusicTheory.PLR.Pf_comm (g : DihedralGroup 12) (t : Triad) :
                    Pf (g • t) = g • Pf t
                    theorem MusicTheory.PLR.Lf_comm (g : DihedralGroup 12) (t : Triad) :
                    Lf (g • t) = g • Lf t
                    theorem MusicTheory.PLR.Rf_comm (g : DihedralGroup 12) (t : Triad) :
                    Rf (g • t) = g • Rf t

                    The duality engine (centralizer of the regular T/I rep) #

                    The headline. Two layers:

                    The T/I action is faithful (two test triads pin down the dihedral element).

                    theorem MusicTheory.Duality.centralizing_fixedPoint_eq_one {G : Type u_1} {α : Type u_2} [Group G] [MulAction G α] [MulAction.IsPretransitive G α] (σ : Equiv.Perm α) (hcomm : ∀ (g : G), σ * MulAction.toPerm g = MulAction.toPerm g * σ) (a : α) (hfix : σ a = a) :
                    σ = 1

                    Wielandt, regular case (abstract, reusable). In a faithful transitive G-action, any permutation σ commuting with the whole image of G and fixing one point is the identity — the centralizer of a transitive group is semiregular.

                    @[reducible, inline]

                    The image of the T/I group inside Equiv.Perm Triad — the left regular representation.

                    Equations
                    Instances For
                      @[reducible, inline]

                      Its centralizer in Sym(Triad) — the object we identify with PLR.

                      Equations
                      Instances For

                        A centralizer element commutes with every toPerm g.

                        Evaluation at the base triad (0, true) injects the centralizer into Triad (semiregularity).

                        Wielandt bound (concrete): the centralizer of the T/I image has at most 24 elements.

                        theorem MusicTheory.Duality.mem_Cgrp_of_comm (σ : Equiv.Perm Triad) (h : ∀ (g : DihedralGroup 12) (t : Triad), σ (g • t) = g • σ t) :

                        A neo-Riemannian generator (as a permutation) commuting with the whole T/I image, packaged from a pointwise commuting law f (g • t) = g • f t.

                        PLR centralizes T/I. The neo-Riemannian group sits inside the centralizer of the regular T/I representation — the substantive direction of the CFS duality.

                        The Cayley identification: T/I ≅ its image, of order 24 (left regular rep is faithful).

                        Cgrp = ⟨P, L, R⟩ #

                        The remaining numeric obligation |⟨P,L,R⟩| = 24 is discharged by orbit–stabilizer: the PLR subgroup acts on the 24 triads transitively (P, L, R already reach everything: L∘R is the root-translation by −7, a generator of ℤ/12, and P flips quality) and semiregularly (it lies in the semiregular centralizer Cgrp). A transitive + semiregular action is regular, so |⟨P,L,R⟩| = |Triad| = 24. Then ⟨P,L,R⟩ ≤ Cgrp, |Cgrp| ≤ 24 = |⟨P,L,R⟩| force equality.

                        @[reducible, inline]

                        Abbreviation for the neo-Riemannian subgroup of Sym(Triad).

                        Equations
                        Instances For

                          The generators belong to PLRgrp.

                          L ∘ R translates a major triad's root by −7; iterating reaches every major triad.

                          The subgroup element (L*R)^k, packaged in PLRgrp.

                          Equations
                          Instances For
                            theorem MusicTheory.Duality.wk_smul (k : ℕ) :
                            wk k • (0, true) = (-(7 * ↑k), true)

                            Acting by (L*R)^k on the base major triad lands on root −7k.

                            theorem MusicTheory.Duality.reach_major (m : ZMod 12) :
                            ∃ (g : ↥PLRgrp), g • (0, true) = (m, true)

                            Every major triad is reached from the base by some (L*R)^k.

                            theorem MusicTheory.Duality.reach_minor (m : ZMod 12) :
                            ∃ (g : ↥PLRgrp), g • (0, true) = (m, false)

                            Every minor triad is reached from the base (apply P after a major reach).

                            The PLR action is semiregular: the stabilizer of any triad is trivial (it sits inside the semiregular centralizer Cgrp).

                            The numeric crux: the neo-Riemannian group has exactly 24 elements (regular action).

                            Headline: the centralizer of the regular T/I representation is exactly the neo-Riemannian PLR group — the Crans–Fiore–Satyendra duality, deductively closed.

                            M.3 — P, L, R as minimal voice-leadings (Cohn, JMT 41 (1997)) #

                            The neo-Riemannian moves are the parsimonious triad-to-triad voice-leadings: each holds two common tones and shifts the remaining voice by a single step. The precise sizes (in the L¹ voice-leading metric, distances mod 12) are P = 1, L = 1, R = 2 — NOT all equal: R moves its voice by a whole tone. We verify both facts as finite checks over all 24 triads, decoupled from the orbifold (G.1/M.2).

                            A voice-leading is a bijection between the two triads' three voices; its size is the sum of the (circular) semitone displacements; vlDist is the minimum over all 6 bijections.

                            Circular semitone distance on the pitch-class circle: min(d, 12−d).

                            Equations
                            Instances For

                              The three voices of a triad in order (root, third, fifth).

                              Equations
                              Instances For

                                The six bijections of three voices.

                                Equations
                                Instances For
                                  def MusicTheory.VoiceLeading.cost (t u : Triad) (σ : Fin 3 → Fin 3) :

                                  The size of the voice-leading t → u that matches voice i of t to voice σ i of u.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For

                                    The voice-leading distance: minimal size over all bijective matchings of the voices.

                                    Equations
                                    Instances For

                                      P is a single-semitone voice-leading (size 1), for every triad.

                                      L is a single-semitone voice-leading (size 1), for every triad.

                                      R is a whole-tone voice-leading (size 2 — NOT 1), for every triad: the honest correction to "P, L, R are all minimal/equal".

                                      Each of P, L, R retains exactly two common tones (the parsimony that makes them minimal).