# Why don't any pentachords have transpositional symmetry?

Other than in the trivial case of T0, none of the thirty-eight pentachords have transpositional symmetry. This makes them unique among all 12-tone sets (well, OK, septachords are the same way, but they're just the complements of the pentachords). I'm having trouble expressing the question: is there a specific mathematical reason for this lack of symmetry? In a way, the answer is obviously yes, since it's true, but I guess what I mean is: if you had to provide a proof that no 12-tone-based set of five notes could ever have transpositional symmetry, what would it be?

There are several fantastic answers to this question. Anyone coming to the question should really look at several answers, not just the one I accepted. The accepted answer is great, and has the most rigorous proof, but the one by Aaron is probably the most intuitive. The one by cmaster provides some very helpful details, as does the fantastic look into non-12-tone situations by leftaroundabout. These answers in combination will really help any readers get a deeper understanding of the question. Thanks all!

• Could you add examples and explain what symmetry you have in mind? Aug 26, 2020 at 18:15
• Aug 26, 2020 at 18:19
• Seems like more of a maths question than a music one.
– Tim
Aug 26, 2020 at 18:24
• @user1079505 A set with transpositional symmetry is a set that can be transposed by some number of semitones and yet be the exact same set. For example, if you transpose an augmented triad up four semitones, you end up with the exact same pitch classes as you began. All sets have one level of symmetry, but it's kind of stupid, because it's defined by transposing by zero semitones. Obviously, that transposition gives you the same pitch classes as you started with, but not in an interesting way. Sets with non-trivial transpositional symmetry are rare, and thus potentially interesting. Aug 26, 2020 at 19:29
• @Tim I had the same thought; however, in contemporary music theory, this kind of mathematical question is the subject of a great quantity of research. IMO, the question should remain here but also be asked in a math forum. Aug 26, 2020 at 20:35

First of all thanks to @Aaron and @PatMuchmore for helping me to understand the formalism presented in learnmusictheory.com.

• Let's consider a system with N pitch classes (you can take N = 12).

• A set x of s elements can be presented as: x = [x0, x1, ..., xs-1].

• In prime form x0 = 0 (the first note is C).

• A transposition by interval t is the following operation: Tt(xi) = (xi + t) mod N.

• A set has transpositional symmetry if there is such pair (or pairs) of t and k so that for each element of set Tt(xi) = x(i+k) mod s (each set element is transformed into another element of the same set).

• Combining these two formula we get (xi + t) mod N = x(i+k) mod s. In particular for i = 0 this simplifies to (x0 + t) = xk.

• This means that a set with transpositional symmetry w.r.t interval t must contain note t and all its unique multiples. In other words it has a subset in the following form [0, t, 2t, ..., (n-1)·t], where n·t = N

• In addition, in between these notes, there might be (m–1) < t additional notes ai in form of 0 < a1 < ...< am–1 < t, which repeat by interval t.

• A set symmetric w.r.t. transposition by interval t must therefore have a form:

An example of such set for N=12 and t=4 and m = 3 might be:

[ C,  C#, D           [ 0, 1, 2           [   0,     1,     2
E,  F,  Gb     =      4, 5, 6      =        4,   4+1,   4+2
G#, A,  Bb ]          8, 9, 10 ]          2·4, 2·4+1, 2·4+2 ]


here a1 = 1, a2 = 2. As ai must be between 0 and t, we can build another combinations, e.g. for a1 = 1, a2 = 3:

[ C,  C#, D#          [ 0, 1, 3           [   0,     1,     3
E,  F,  G      =      4, 5, 7      =        4,   4+1,   4+3
G#, A,  B  ]          8, 9, 11 ]          2·4, 2·4+1, 2·4+3 ]


The number of notes in a set with transpositional symmetry is s = n·m, which must fulfill the following conditions:

• n is a divisor of N (as n·t = N) (note neither t nor n must be prime divisors)
• 1 ≤ m ≤ N/n

As you can see, for N = 12 pitch classes and set with s = n·m = 5 notes, the only pair of n and m which fulfills these condition is n = 1 and m = 5, which makes t = N/n = 12, transposition by octave (or unison), a trivial case.

perhaps the math formalism presented here could be improved, but I hope this is sufficient for a music forum ;)

• I’m having some trouble figuring out the nature of m in the proof, could you explain it just a bit? Aug 27, 2020 at 14:25
• @PatMuchmore I added some examples. I hope it's more clear now. m is the number of notes that repeat by interval t. Aug 27, 2020 at 14:44

Simple. 5 does not have any common divisors with 12.

For a chord to have transpositional symmetry, the length of the transposition interval must divide 12, because repeated application of the symmetry needs to return to the original position after some iterations. The transpositionally symmetric chord may subdivide the transposition interval in any way it likes, but the pattern of these subdivision intervals must repeat after a full transposition interval.

For an example, consider a transposition interval of 4 half tone steps (major third): You can choose to take, say C, C#, D# into the chord, but then also E, F and G must be part of it (one transposition up), as must be G#, A and B (two transpositions up). Since the pattern in each transposition interval is the same, the number of notes is a multiple of the number of repetitions.

Now, you can divide 12 like this:

2 parts: tritone transposition
Chords have 2, 4, 6, 8, 10 or 12 notes

3 parts: major third transposition
Chords have 3, 6, 9 or 12 notes

4 parts: minor third transposition
Chords have 4, 8, or 12 notes

6 parts: major second transposition
Chords have 6 or 12 notes


Thus, the complete list of chord sizes that allow for transpositionally symmetric chords is 2, 3, 4, 6, 8, 9, 10, 12. As you see, all these numbers share at least one divisor with 12, namely the count of transposition intervals that fit into the octave.

• It's not so simple, as @PatMuchmore observed you can have 8-note sets maintaining the symmetry, and 8 does not divide 12 either. See my answer for full explanation. Also, it is not true that all intervals in a symmetric set must be the same, e.g. C-Db-F#-G has a symmetry w.r.t. transposition by a tritone. Aug 27, 2020 at 14:07
• Also, a five note set doesn’t have five intervals, it has 10. Unless I’m misunderstanding your wording. Aug 27, 2020 at 14:15
• @user1079505 Right, I oversimplified too much. I have rewritten my answer now to include the non-equally spaced chords. Aug 27, 2020 at 19:02
• With the update to no common divisors, this is a good answer. Aug 28, 2020 at 8:24
• I ultimately chose to accept the answer with the most rigorous proof, but I added language to the question directing any future readers to also look at your fabulous answer too. Thank you! Aug 30, 2020 at 0:06

The 12-tone octave can be partitioned in two basic, non-intersecting, equal divisions: the tritone division [0, 6], and the major-third division [0, 4, 8]. Past that, any symmetric subset will contain at least one of those basic subdivisions. For example, the 4-division of minor thirds [0, 3, 6, 9] contains as a subset the 2-division, as does [0, 1, 6, 7]. The 6-division contains both the 2- and 3-divisions [0, 2, 4, 6, 8, T], as does [0, 1, 4, 5, 8, 9]. We need not go beyond six pitches, since anything beyond that is just the complement of a less-than-six pitch partition.

The part that needs proof, but which I'm claiming as sufficiently clear, is that any symmetric partition of the the 12-tone octave must be symmetric under T4 and/or T6.

This isn't possible for a pentachord. For example, suppose a pentachord contains [0, 6]. Then there must be two pitches between 0 and 6 and only 1 between 6 and 0 (the reverse cases are just T6 of this), making it non-symmetrical under T6. Similarly a pentachord containing [0, 4, 8], allowing only two additional pitches, would leave one of the major-third subdivisions without an intervening pitch, making it non-symmetrical under T4. Thus no pentachord can be symmetrical under either of the "required" transpositional levels.

• Long story short, isn't the answer "because 12 doesn't divide by 5"? In temperament with 5, or 10 (or 15...) pitch classes, it could be done. Aug 26, 2020 at 19:34
• @user1079505 No, because 12 doesn't divide by 8, but there are octachords with transpositional symmetry. It may be an aspect of it that 12 and 5 don't have common divisors, but I think Aaron's point about partitioning gets at the real meat of the question in a way that just talking about GCDs wouldn't. I suspect you're right about other temperaments however, and it would be interesting to look into that. Aug 26, 2020 at 19:48
• @user1079505 As a brief supplement to PatMuchmore's comment, I suspect the answer has to do with prime factors. I suspect my "proof" could be extended to your 15-temperament by showing that all transpositionally symmetrical subsets must be symmetrical under T_3 or T_5. Aug 26, 2020 at 20:09
• To add on Aaron, that is probably has to do with the fact that these two numbers has to be prime between each other, ie. not sharing a common integer divider. Both 12 and 8 can be divided by two.. The only numbers fulfilling this condition with 12 are... 5 and 7.... (And 11). As a bonus, these are all prime numbers.
– Tom
Aug 26, 2020 at 20:42
• @user1079505 As Pat says, the non-divisibility is not sufficient. The key factor is that 12 and 5 are co-prime, that is they have no common non-trivial factor. Aug 28, 2020 at 8:22

It does indeed boil down to having no common divisors, as explained by cmaster. Here's for all n-EDOs up to 25 the scale-cardinalities i highlighted where there are no transpositional-symmetric ones, together with gcd(n,i):

1(1)

1(1) 2(2)

1(1) 2(1) 3(3)

## 4-edo

1(1) 2(2) 3(1) 4(4)

## 5-edo

1(1) 2(1) 3(1) 4(1) 5(5)

## 6-edo

1(1) 2(2) 3(3) 4(2) 5(1) 6(6)

## 7-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(7)

## 8-edo

1(1) 2(2) 3(1) 4(4) 5(1) 6(2) 7(1) 8(8)

## 9-edo

1(1) 2(1) 3(3) 4(1) 5(1) 6(3) 7(1) 8(1) 9(9)

## 10-edo

1(1) 2(2) 3(1) 4(2) 5(5) 6(2) 7(1) 8(2) 9(1) 10(10)

## 11-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(1) 8(1) 9(1) 10(1) 11(11)

## 12-edo

1(1) 2(2) 3(3) 4(4) 5(1) 6(6) 7(1) 8(4) 9(3) 10(2) 11(1) 12(12)

## 13-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(1) 8(1) 9(1) 10(1) 11(1) 12(1) 13(13)

## 14-edo

1(1) 2(2) 3(1) 4(2) 5(1) 6(2) 7(7) 8(2) 9(1) 10(2) 11(1) 12(2) 13(1) 14(14)

## 15-edo

1(1) 2(1) 3(3) 4(1) 5(5) 6(3) 7(1) 8(1) 9(3) 10(5) 11(1) 12(3) 13(1) 14(1) 15(15)

## 16-edo

1(1) 2(2) 3(1) 4(4) 5(1) 6(2) 7(1) 8(8) 9(1) 10(2) 11(1) 12(4) 13(1) 14(2) 15(1) 16(16)

## 17-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(1) 8(1) 9(1) 10(1) 11(1) 12(1) 13(1) 14(1) 15(1) 16(1) 17(17)

## 18-edo

1(1) 2(2) 3(3) 4(2) 5(1) 6(6) 7(1) 8(2) 9(9) 10(2) 11(1) 12(6) 13(1) 14(2) 15(3) 16(2) 17(1) 18(18)

## 19-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(1) 8(1) 9(1) 10(1) 11(1) 12(1) 13(1) 14(1) 15(1) 16(1) 17(1) 18(1) 19(19)

## 20-edo

1(1) 2(2) 3(1) 4(4) 5(5) 6(2) 7(1) 8(4) 9(1) 10(10) 11(1) 12(4) 13(1) 14(2) 15(5) 16(4) 17(1) 18(2) 19(1) 20(20)

## 21-edo

1(1) 2(1) 3(3) 4(1) 5(1) 6(3) 7(7) 8(1) 9(3) 10(1) 11(1) 12(3) 13(1) 14(7) 15(3) 16(1) 17(1) 18(3) 19(1) 20(1) 21(21)

## 22-edo

1(1) 2(2) 3(1) 4(2) 5(1) 6(2) 7(1) 8(2) 9(1) 10(2) 11(11) 12(2) 13(1) 14(2) 15(1) 16(2) 17(1) 18(2) 19(1) 20(2) 21(1) 22(22)

## 23-edo

1(1) 2(1) 3(1) 4(1) 5(1) 6(1) 7(1) 8(1) 9(1) 10(1) 11(1) 12(1) 13(1) 14(1) 15(1) 16(1) 17(1) 18(1) 19(1) 20(1) 21(1) 22(1) 23(23)

## 24-edo

1(1) 2(2) 3(3) 4(4) 5(1) 6(6) 7(1) 8(8) 9(3) 10(2) 11(1) 12(12) 13(1) 14(2) 15(3) 16(8) 17(1) 18(6) 19(1) 20(4) 21(3) 22(2) 23(1) 24(24)

## 25-edo

1(1) 2(1) 3(1) 4(1) 5(5) 6(1) 7(1) 8(1) 9(1) 10(5) 11(1) 12(1) 13(1) 14(1) 15(5) 16(1) 17(1) 18(1) 19(1) 20(5) 21(1) 22(1) 23(1) 24(1) 25(25)

Note that exactly those where the GCD is 1 are highlighted.

import Data.List

transpositions :: [a] -> [[a]]
transpositions l = map (take ll) . take ll $iterate tail$ cycle l
where ll = length l

isTpSym :: Eq a => [a] -> Bool
isTpSym scl = any (==scl) . tail $transpositions scl type Scale = [Bool] allScales :: Int -> [Scale] allScales 0 = [[]] allScales n = [False, True] >>= \h -> (h:)<$>allScales (n-1)

sclsInfo :: Int -> String
sclsInfo n = show n++"-edo\n---\n"
++ intercalate " "
[ (if ielemtscs then id else \s->"**"++s++"**")
$show i++"("++show(gcd i n)++")" | i <- [1..n] ] ++"\n" where tscs = map head . group . sort$ [ length $filter id scl | scl <- allScales n, isTpSym scl ] main :: IO () main = mapM_ putStrLn$ sclsInfo<\$>[1..25]

• Thanks for putting the thought into these additional systems, I think it adds a great deal. I’ve added some language to the question urging any future readers to also check out your answer. Aug 30, 2020 at 0:08