EDOs and their friends

43-EDO can be defined over rank-3 interval space by a pure octave and tempering out the acute unison, justly tuned to 81/80, and the Grdddddd4, justly tuned to 50331648/48828125. 

If we write these interval in rank-3 prime harmonic coordinates they are [[1, 0, 0], [-4, 4, -1], [24, 1, -11]]. We might call this an EDO basis.

This matrix isn't unimodular: it has determinant -43, from which we can infer that it defines 43 EDO.

What comma would we have to use in place of the octave to get a unimodular basis? There are tons of options. If we restrict ourself to intervals with just tunings between 1 and 2, we still have tons of options. Here are some options sorted by increasing numerator size:

32805/32768 _ [-15, 8, 1]

393216/390625 _ [17, 1, -8]

531441/524288 _ [-19, 12, 0]

1990656/1953125 _ [13, 5, -9]

10077696/9765625 _ [9, 9, -10]

43046721/41943040 _ [-23, 16, -1]

51018336/48828125 _ [5, 13, -11]

258280326/244140625 _ [1, 17, -12]

3486784401/3355443200 _ [-27, 20, -2]

10460353203/9765625000 _ [-3, 21, -13]

847288609443/781250000000 _ [-7, 25, -14]

68630377364883/62500000000000 _ [-11, 29, -15]

2567836929097728/2384185791015625 _ [29, 14, -22]

12999674453557248/11920928955078125 _ [25, 18, -23]

65810851921133568/59604644775390625 _ [21, 22, -24]

333167437850738688/298023223876953125 _ [17, 26, -25]

1686660154119364608/1490116119384765625 _ [13, 30, -26]

It seems obvious to me to use the simplest one in terms of frequency ratio. That interval, [-15, 8, 1], justly tuned to 32805/32768, is affectionately called the "schisma" in music theory. If we combine it with our other two commas we get a unimodular matrix:

    [[-15, 8, 1], [-4, 4, -1], [24, 1, -11]]

which we could use to define any rank-3 interval in integer coordinates. The inverse of this unimodular matrix is:

    [-43, 89, -12], 

    [-68, 141, -19], 

    [-100, 207, -28]

The columns of this matrix, up to a factor of -1, are the tunings of  [P8, P12, M17] in [43, 89, and 12]-EDO. And those are justly tuned to the first three prime harmonics.

There's more structure here though. 
    12-EDO tempers out the schisma and Ac1, but tuns [24, 1, -11] to -1 step.

    43-EDO tempers out Ac1 and  [24, 1, -11] but tunes the schisma to -1 step.

    89-EDO tempers out the schisma and  [24, 1, -11], but tunes Ac1 to 1 step.

So ... are these three special friends? I don't know. I kind of doubt it, but let's find some other relations like these and see.

Here are some EDO bases with the octave replaced with whatever simple interval will produce a unimodular matrix:

"12-EDO": [[2, 9, -7], [-4, 4, -1], [7, 0, -3]],
"13-EDO": [[1, -2, 1], [-3, -1, 2], [9, -7, 1]],
"14-EDO": [[-4, 4, -1], [0, 3, -2], [11, -4, -2]],
"15-EDO": [[11, -4, -2], [7, 0, -3], [1, -5, 3]],
"16-EDO": [[-4, 4, -1], [-7, 3, 1], [3, 4, -4]],
"17-EDO": [[-4, 4, -1], [-3, -1, 2], [12, -9, 1]],
"18-EDO": [[1, -5, 3], [7, 0, -3], [5, -6, 2]],
"19-EDO": [[-3, -1, 2], [-4, 4, -1], [-10, -1, 5]],
"21-EDO": [[0, 3, -2], [7, 0, -3], [-11, 7, 0]],
"22-EDO": [[-3, -1, 2], [1, -5, 3], [11, -4, -2]],
"23-EDO": [[-4, 4, -1], [-7, 3, 1], [-1, 8, -5]],
"25-EDO": [[1, -5, 3], [8, -5, 0], [-10, -1, 5]],
"26-EDO": [[-3, -1, 2], [-4, 4, -1], [-13, -2, 7]],
"27-EDO": [[11, -4, -2], [7, 0, -3], [5, -9, 4]],
"28-EDO": [[7, 0, -3], [3, 4, -4], [-11, 7, 0]],
"29-EDO": [[-10, -1, 5], [1, -5, 3], [-14, 3, 4]],
"31-EDO": [[-15, 8, 1], [-4, 4, -1], [17, 1, -8]],
.
Let's take the unimodular matrices, invert, transpose, remove negative signs, and interpret as tunings of prime harmonics.

Here's the transpose of the inverse:
12-EDO [[-12, -19, -28], [27, 43, 63], [19, 30, 44]]
13-EDO [[13, 21, 30], [-5, -8, -11], [-3, -5, -7]]
14-EDO [[-14, -22, -33], [12, 19, 28], [-5, -8, -12]]
15-EDO [[-15, -24, -35], [22, 35, 51], [12, 19, 28]]
16-EDO [[-16, -25, -37], [12, 19, 28], [7, 11, 16]]
17-EDO [[17, 27, 39], [5, 8, 12], [7, 11, 16]]
18-EDO [[-18, -29, -42], [-8, -13, -19], [15, 24, 35]]
19-EDO [[19, 30, 44], [3, 5, 7], [-7, -11, -16]]
21-EDO [[21, 33, 49], [-14, -22, -33], [-9, -14, -21]]
22-EDO [[22, 35, 51], [-10, -16, -23], [7, 11, 16]]
23-EDO [[-23, -36, -53], [12, 19, 28], [7, 11, 16]]
25-EDO [[-25, -40, -58], [22, 35, 51], [15, 24, 35]]
26-EDO [[26, 41, 60], [3, 5, 7], [-7, -11, -16]]
27-EDO [[-27, -43, -63], [34, 54, 79], [12, 19, 28]]
28-EDO [[28, 44, 65], [-21, -33, -49], [12, 19, 28]]
29-EDO [[-29, -46, -67], [19, 30, 44], [22, 35, 51]]
31-EDO [[-31, -49, -72], [65, 103, 151], [-12, -19, -28]]

From which we learn that
12-EDO is friends with: 27 and 19 EDO
13-EDO is friends with: 5 and 3 EDO
14-EDO is friends with: 12 and 5 EDO
15-EDO is friends with: 22 and 12 EDO
16-EDO is friends with: 12 and 7 EDO
17-EDO is friends with: 5 and 7 EDO
18-EDO is friends with: 8 and 15 EDO
19-EDO is friends with: 3 and 7 EDO
21-EDO is friends with: 14 and 9 EDO
22-EDO is friends with: 10 and 7 EDO
23-EDO is friends with: 12 and 7 EDO
25-EDO is friends with: 22 and 15 EDO
26-EDO is friends with: 3 and 7 EDO
27-EDO is friends with: 34 and 12 EDO
28-EDO is friends with: 21 and 12 EDO
29-EDO is friends with: 19 and 22 EDO
31-EDO is friends with: 65 and 12 EDO
.
From this it seems that 12-EDO is friends with at least [5, 7, 12, 14, 15, 16, 19, 21, 22, 23, 27, 28, 31, 34, and 65]-EDO.

I think it's pretty clear that these little EDO triples are just alternative descriptions of the comma triplets, and not really specific to the EDO. Each EDO has lots of intervals that it tempers out, and lots of intervals that it tunes to -1 or 1 step, and within that large space there are ...overlaps? Like every pair of EDOs defined on rank-3 interval space has a shared comma. That doesn't mean that they have a special relationship; everyone has that relationship with everyone else. Now we're just saying, "These two EDOs have a shared tempered comma and also each one tunes one of the others' tempered commas to 1 or -1 steps." I don't know, man. It feels like there should be something deeper here, but I'm not seeing it.

How about this: It seems that in rank-n interval space, there's a unimodular matrix of {n} commas associated with every set of {n} distinct EDOs, such that each EDO tempers out {n - 1} of the commas and also tunes the remaining comma to -1 or 1 step.

And um....maybe we can use this to find EDO bases, the regular non-unimodular ones that include the octave? If you want a rank-7 basis for 87-EDO, you take 7-EDOs, including 87-EDO, and look at how they tune the intervals justly associated with the first 7 primes, and then you invert, and uh, all but one of those will be tempered commas of 87 EDO, and you can replace the last one with the octave for an EDO basis, and if the commas aren't to your liking, then roll the dice with a different set of EDOs? It's not a great procedure. I'll probably just stick with my own usual methods for finding EDO bases. But maybe it's something to keep considering.

Higher Rank EDO Generators One More Goddamn Time

Some EDOs can be defined by tempering out a single rank-2 comma and keeping octaves pure. Lots of them. Gobs. And it's dirt simple to know what the comma is, in so far as the EDO can be defined by one such comma. 

First, any EDO of {n} divisions will tune P8 to {n}-steps and P12 to 

    round(n * log_2(3))

steps. If we call this number of steps for P12 {m}, then, in so far as the EDO can be defined with a pure octave and a tempered comma, the comma will have the form

    [-m, n] or [m, -n]

Both such intervals will be tempered, either can be used for the definition, and they're inverses of each other, so they're basically the same thing. They're justly tuned to reciprocal frequency ratios and one will be larger than 1/1 and one will be smaller.

It's only when {n} and {m} are coprime that the EDO can be defined that way. Otherwise you'll need a higher interval space to define the EDO. Like, you could try it for 24-EDO, but you'd find that you had the same definition you previously found for 12-EDO, and when you tried to tune rank-2 interval space, elements of the space would only be tuned to the 12-EDO subspace.

Below 100 divisions, you can do most EDOs this way:

    rank-2 definable EDOs: [5, 7, 8, 9, 11, 12, 13, 16, 17, 18, 19, 22, 23, 26, 27, 29, 31, 32, 33, 37, 39, 40, 41, 42, 43, 45, 46, 47, 49, 50, 53, 55, 56, 59, 61, 63, 64, 65, 67, 69, 70, 71, 73, 74, 75, 77, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 97, 98, 99]-EDO

But I'm not going to devote much more to them because I've done that work in the past and also it's all very very easy to derive.

Below 100-divisions, we also have these EDOs that require higher-rank interval spaces for full definition / interpretation:

    rank-3: [10, 14, 15, 21, 25, 28, 34, 35, 48, 51, 52, 54, 58, 60, 72, 78, 84, 85, 87, 96]-EDO

    rank-4: [6, 24, 36, 38, 57, 66, 68, 76, 86, 100]-EDO

    rank-5: [20, 93]-EDO

    rank-6: [30, 44, 62, 82]-EDO

    rank-8: [92]-EDO

When you name a set of tempered commas, along with the octave, that are sufficient to define an EDO, I've sometimes heard that called a "comma basis". I don't love this, because I often use bases which are entirely made of commas, instead of commas and the octave. So I usually just call the octave and the commas the "EDO generator" but this has problems for other people. But whatever you call it, I'm going to be looking at commas that define EDOs with the addition of a pure octave in this post.

...

So, I've found sets of commas in the past that are sufficient to define all the EDOs up to 100, and indeed commas that have very small frequency ratios, in a way that I considered optimal in some sense at the time, but I never did a good job of explaining my notion of optimality. I've recently found calculators by Sintel and Graham Breed for finding the same things, but with different notions of optimality, and I'm going to put our three sets of definitions together as best as I can and really characterize EDOs.

...

First up, here are commas from Graham Breed at various interval ranks / prime limits. His code uses the Tenney-Euclidean norm to measure vector length, and like Sintel he uses this within LLL reduction to find a small basis. The tempered commas below are not all sufficient to define their associated EDOs, and they couldn't be, because e.g. his program will give two rank-3 tempered commas to define 24-EDO, which are justly tuned to [81/80, 128/125], even though you need three rank-4 commas to do it. I'm also not not positive that I love his notion of minimality, but it's often very good, and I need to look at it more to figure out when and why I think it's inferior to what I've used before. 

I guess here's an example right away: 

Graham Breed's rank-5 EDO basis for 20-EDO: [Sbm2, A1, AsAsSpGrGrd1, SpGr1] :: [28/27, 25/24, 968/945, 64/63]

My rank-5 EDO basis for 20-EDO: 20-EDO: (A1 → 25/24, Sbm2 → 28/27, SbSbAcm2 → 49/48, AsAsGrd1 → 121/120)

Mine has much smaller frequency ratios and somewhat simpler interval names. I'll have to check if his ever do better than mine on those terms.

-

3-EDO, rank-6 : [M2, ReAsM2, m2, Sbm3, Asm2] :: [10/9, 44/39, 16/15, 7/6, 11/10]

3-EDO, rank-5 : [Asm2, SbAcm2, M2, m2] :: [11/10, 21/20, 10/9, 16/15]

3-EDO, rank-4 : [SbAcm2, Sbm3, m2] :: [21/20, 7/6, 16/15]

3-EDO, rank-3 : [M2, m2] :: [10/9, 16/15]


4-EDO, rank-6 : [AcM2, ReAsA1, A1, SpA1, DeAcM2] :: [9/8, 55/52, 25/24, 15/14, 12/11]

4-EDO, rank-5 : [DeAcM3, SpA1, Acm2, AcM2] :: [27/22, 15/14, 27/25, 9/8]

4-EDO, rank-4 : [SpA1, AcM2, Sp1] :: [15/14, 9/8, 36/35]

4-EDO, rank-3 : [A1, AcM2] :: [25/24, 9/8]


5-EDO, rank-6 : [ReAcA1, AsAsGrGrd3, Acm2, AsSpGr1, Asm2] :: [27/26, 484/405, 27/25, 22/21, 11/10]

5-EDO, rank-5 : [AsSpGr1, SbAcm2, Sbm2, m2] :: [22/21, 21/20, 28/27, 16/15]

5-EDO, rank-4 : [SbAcm2, m2, Sp1] :: [21/20, 16/15, 36/35]

5-EDO, rank-3 : [m2, Acm2] :: [16/15, 27/25]


6-EDO, rank-6 : [M2, m2, PrDeSp1, SbSbd3, Prm2] :: [10/9, 16/15, 78/77, 49/45, 13/12]

6-EDO, rank-5 : [AsSpGr1, M2, m2, AsSbm2] :: [22/21, 10/9, 16/15, 77/72]

6-EDO, rank-4 : [SpSpGrA0, m2, M2] :: [50/49, 16/15, 10/9]

6-EDO, rank-3 : [M2, m2] :: [10/9, 16/15]


7-EDO, rank-6 : [ReAsGr1, Ac1, A1, SpA1, DeAcA1] :: [352/351, 81/80, 25/24, 15/14, 45/44]

7-EDO, rank-5 : [AsSpGr1, SpGr1, Sp1, SpA1] :: [22/21, 64/63, 36/35, 15/14]

7-EDO, rank-4 : [SpA1, Sp1, Ac1] :: [15/14, 36/35, 81/80]

7-EDO, rank-3 : [A1, Ac1] :: [25/24, 81/80]


8-EDO, rank-6 : [Prd2, ReAs1, AsGr1, SbAcm2, m2] :: [26/25, 66/65, 55/54, 21/20, 16/15]

8-EDO, rank-5 : [Sbd3, DeSbAcM2, m2, AsGr1] :: [28/25, 35/33, 16/15, 55/54]

8-EDO, rank-4 : [SbAcm2, m2, SbM2] :: [21/20, 16/15, 175/162]

8-EDO, rank-3 : [m2, GrA1] :: [16/15, 250/243]


9-EDO, rank-6 : [ReAcA1, DeAcA1, Sp1, SbAcm2, As1] :: [27/26, 45/44, 36/35, 21/20, 33/32]

9-EDO, rank-5 : [SbAcm2, DeAcA1, AsSp1, Sp1] :: [21/20, 45/44, 297/280, 36/35]

9-EDO, rank-4 : [SbAcm2, Sp1, SpA0] :: [21/20, 36/35, 225/224]

9-EDO, rank-3 : [d2, Acm2] :: [128/125, 27/25]


10-EDO, rank-6 : [PrDem2, ReAsGr1, AsGr1, Sbm2, DeAcA1] :: [104/99, 352/351, 55/54, 28/27, 45/44]

10-EDO, rank-5 : [DeSbAcM2, Sbm2, SpGrA1, A1] :: [35/33, 28/27, 200/189, 25/24]

10-EDO, rank-4 : [SpSpGrA0, A1, Sbm2] :: [50/49, 25/24, 28/27]

10-EDO, rank-3 : [A1, Grm2] :: [25/24, 256/243]


11-EDO, rank-6 : [PrDeAcm2, Acm3, ReSbAcA1, SbAcm2, As1] :: [117/110, 243/200, 105/104, 21/20, 33/32]

11-EDO, rank-5 : [As1, SbAcm2, Spm2, DeAcA1] :: [33/32, 21/20, 192/175, 45/44]

11-EDO, rank-4 : [SbAcm2, SpA0, SpAcM2] :: [21/20, 225/224, 81/70]

11-EDO, rank-3 : [d3, AcA1] :: [144/125, 135/128]


12-EDO, rank-6 : [PrDem2, Ac1, Sp1, SpA0, DeA1] :: [104/99, 81/80, 36/35, 225/224, 100/99]

12-EDO, rank-5 : [AsSpSpGrM0, DeAcA1, Sp1, DeA1] :: [99/98, 45/44, 36/35, 100/99]

12-EDO, rank-4 : [SpSpGrA0, SpGr1, Sp1] :: [50/49, 64/63, 36/35]

12-EDO, rank-3 : [Ac1, d2] :: [81/80, 128/125]


13-EDO, rank-6 : [PrDem2, A1, SpGr1, SbSbd3, DeSbAcM2] :: [104/99, 25/24, 64/63, 49/45, 35/33]

13-EDO, rank-5 : [DeSbAcm2, A1, AsSbm2, SpGr1] :: [56/55, 25/24, 77/72, 64/63]

13-EDO, rank-4 : [SbSbd3, SpGrA1, A1] :: [49/45, 200/189, 25/24]

13-EDO, rank-3 : [A1, GrGrm3] :: [25/24, 2560/2187]


14-EDO, rank-6 : [ReAsSbm2, ReAsSpA0, Prd2, SbAcm2, Sp1] :: [616/585, 1485/1456, 26/25, 21/20, 36/35]

14-EDO, rank-5 : [Sp1, DeSbAcm2, SbAcm2, AsGrd2] :: [36/35, 56/55, 21/20, 704/675]

14-EDO, rank-4 : [SbAcm2, Sp1, SbGrdd3] :: [21/20, 36/35, 3584/3375]

14-EDO, rank-3 : [Acm2, Grd2] :: [27/25, 2048/2025]


15-EDO, rank-6 : [Sbm2, ReA1, SpGr1, DeA1, AsGr1] :: [28/27, 40/39, 64/63, 100/99, 55/54]

15-EDO, rank-5 : [SbSbSbAcdd3, DeSbAcm2, SbSbAcm2, SpGr1] :: [1029/1000, 56/55, 49/48, 64/63]

15-EDO, rank-4 : [Sbm2, SpGr1, SbAcd2] :: [28/27, 64/63, 126/125]

15-EDO, rank-3 : [GrA1, d2] :: [250/243, 128/125]


16-EDO, rank-6 : [As1, ReAs1, Sp1, SbAcd2, DeAcA1] :: [33/32, 66/65, 36/35, 126/125, 45/44]

16-EDO, rank-5 : [DeAcA1, AsSp1, SpSpGrA0, Sp1] :: [45/44, 297/280, 50/49, 36/35]

16-EDO, rank-4 : [SpSpGrA0, Sp1, AcA1] :: [50/49, 36/35, 135/128]

16-EDO, rank-3 : [Acd2, AcA1] :: [648/625, 135/128]


17-EDO, rank-6 : [A1, SpGr1, ReA1, DeAcA1, AsSpSpGrM0] :: [25/24, 64/63, 40/39, 45/44, 99/98]

17-EDO, rank-5 : [DeSbm2, SpGr1, DeSpA1, A1] :: [896/891, 64/63, 80/77, 25/24]

17-EDO, rank-4 : [SpGrA1, SpSpA0, A1] :: [200/189, 405/392, 25/24]

17-EDO, rank-3 : [A1, GrGrm2] :: [25/24, 20480/19683]


18-EDO, rank-6 : [ReAs1, Dem2, SpGrA1, ReA1, Sbm2] :: [66/65, 512/495, 200/189, 40/39, 28/27]

18-EDO, rank-5 : [AsSpGr1, Sbm2, SpGrA1, AsSb1] :: [22/21, 28/27, 200/189, 385/384]

18-EDO, rank-4 : [SpSpGrA0, Sbm2, d2] :: [50/49, 28/27, 128/125]

18-EDO, rank-3 : [d2, GrM2] :: [128/125, 800/729]


19-EDO, rank-6 : [ReSbSbAcm2, DeA1, SpA0, DeAcA1, SbSbAcm2] :: [196/195, 100/99, 225/224, 45/44, 49/48]

19-EDO, rank-5 : [Ac1, SpA0, DeAcA1, SbSbAcm2] :: [81/80, 225/224, 45/44, 49/48]

19-EDO, rank-4 : [SbSbSbAcdd3, SpA0, SbSbAcm2] :: [1029/1000, 225/224, 49/48]

19-EDO, rank-3 : [Ac1, AA0] :: [81/80, 3125/3072]


20-EDO, rank-6 : [ReA1, A1, DeDeSbAcM2, SbSbAcm2, Sbm2] :: [40/39, 25/24, 1120/1089, 49/48, 28/27]

20-EDO, rank-5 : [Sbm2, A1, AsAsSpGrGrd1, SpGr1] :: [28/27, 25/24, 968/945, 64/63]

20-EDO, rank-4 : [SpSpGrA0, A1, Sbm2] :: [50/49, 25/24, 28/27]

20-EDO, rank-3 : [A1, Grm2] :: [25/24, 256/243]


21-EDO, rank-6 : [ReAs1, d2, DeAcA1, Sp1, PrSbAcd2] :: [66/65, 128/125, 45/44, 36/35, 819/800]

21-EDO, rank-5 : [AsSpSpGrM0, DeAcA1, Sp1, AsSbAcd2] :: [99/98, 45/44, 36/35, 2079/2000]

21-EDO, rank-4 : [SbSbSbAcdd3, SpA0, Sp1] :: [1029/1000, 225/224, 36/35]

21-EDO, rank-3 : [AcAcm2, d2] :: [2187/2000, 128/125]


22-EDO, rank-6 : [AsGr1, PrSpGr1, AsSpGrd1, PrSbd2, SpGr1] :: [55/54, 65/63, 176/175, 91/90, 64/63]

22-EDO, rank-5 : [SpA0, AsSpGrd1, AsGr1, SpGr1] :: [225/224, 176/175, 55/54, 64/63]

22-EDO, rank-4 : [SpSpGrA0, SpGr1, SbSbm2] :: [50/49, 64/63, 245/243]

22-EDO, rank-3 : [GrA1, Grd2] :: [250/243, 2048/2025]


23-EDO, rank-6 : [ReAcA1, Sp1, DeA1, AcA1, DeSbAcAcm2] :: [27/26, 36/35, 100/99, 135/128, 567/550]

23-EDO, rank-5 : [DeSpA1, Sp1, AsSpSpGrA0, AcA1] :: [80/77, 36/35, 825/784, 135/128]

23-EDO, rank-4 : [Sp1, SpSpGrAA0, AcA1] :: [36/35, 625/588, 135/128]

23-EDO, rank-3 : [AcA1, AcAcd2] :: [135/128, 6561/6250]


24-EDO, rank-6 : [ReAs1, DeSbAcm2, PrSbAcd2, SbSbAcm2, AsSbd2] :: [66/65, 56/55, 819/800, 49/48, 77/75]

24-EDO, rank-5 : [DeSbAcm2, Ac1, AsSpGrd1, SbSbAcm2] :: [56/55, 81/80, 176/175, 49/48]

24-EDO, rank-4 : [Ac1, SbSbdd3, SbSbAcm2] :: [81/80, 392/375, 49/48]

24-EDO, rank-3 : [Ac1, d2] :: [81/80, 128/125]


25-EDO, rank-6 : [ReAs1, Sbm2, PrAsSpGrGr1, ReA1, ReSbAcA1] :: [66/65, 28/27, 3575/3402, 40/39, 105/104]

25-EDO, rank-5 : [Grm2, DeA1, Sbm2, AsSpGrA0] :: [256/243, 100/99, 28/27, 1375/1344]

25-EDO, rank-4 : [SpGr1, Sbm2, SpGrAA0] :: [64/63, 28/27, 3125/3024]

25-EDO, rank-3 : [GrAA1, Grm2] :: [3125/2916, 256/243]


26-EDO, rank-6 : [AsSpSpGrM0, PrDeSp1, Ac1, DeAcA1, Pr1] :: [99/98, 78/77, 81/80, 45/44, 65/64]

26-EDO, rank-5 : [AsSpSpGrM0, DeAcA1, DeA1, AsSb1] :: [99/98, 45/44, 100/99, 385/384]

26-EDO, rank-4 : [SpSpGrA0, SbAcA1, Ac1] :: [50/49, 525/512, 81/80]

26-EDO, rank-3 : [Ac1, AAA0] :: [81/80, 78125/73728]


27-EDO, rank-6 : [ReAs1, PrGrd2, AsSbd2, AsGr1, AsSpSpGrM0] :: [66/65, 416/405, 77/75, 55/54, 99/98]

27-EDO, rank-5 : [AsSpSpGrM0, AsGr1, d2, SpGr1] :: [99/98, 55/54, 128/125, 64/63]

27-EDO, rank-4 : [SbSbSbdd3, SbAcd2, SpGr1] :: [686/675, 126/125, 64/63]

27-EDO, rank-3 : [d2, GrGrA1] :: [128/125, 20000/19683]


28-EDO, rank-6 : [ReAs1, Sp1, PrAsd1, SbAcd2, DeAcA1] :: [66/65, 36/35, 1287/1280, 126/125, 45/44]

28-EDO, rank-5 : [DeSbAcAcm2, DeAcA1, Sp1, AsAc1] :: [567/550, 45/44, 36/35, 2673/2560]

28-EDO, rank-4 : [SpSpGrA0, Sp1, AcAcA1] :: [50/49, 36/35, 2187/2048]

28-EDO, rank-3 : [Acd2, AcAcA1] :: [648/625, 2187/2048]


29-EDO, rank-6 : [ReAsGr1, SpA0, PrDeSpGr1, ReSbAcA1, AsGr1] :: [352/351, 225/224, 2080/2079, 105/104, 55/54]

29-EDO, rank-5 : [AsGr1, SpA0, DeSbSbAcM2, SbSbAcm2] :: [55/54, 225/224, 1225/1188, 49/48]

29-EDO, rank-4 : [SpSpGrGrA0, SpA0, SbSbAcm2] :: [4000/3969, 225/224, 49/48]

29-EDO, rank-3 : [GrA1, AcAA0] :: [250/243, 16875/16384]


30-EDO, rank-6 : [SpGr1, DeSbAcm2, DeA1, Sbm2, PrPrSpGrd1] :: [64/63, 56/55, 100/99, 28/27, 169/168]

30-EDO, rank-5 : [SbSbSbAcdd3, DeSbAcm2, SbSbAcm2, SpGr1] :: [1029/1000, 56/55, 49/48, 64/63]

30-EDO, rank-4 : [Sbm2, SpGr1, SbAcd2] :: [28/27, 64/63, 126/125]

30-EDO, rank-3 : [GrA1, d2] :: [250/243, 128/125]


31-EDO, rank-6 : [ReAsGr1, ReSbAcA1, Ac1, SpA0, ReDeAcA1] :: [352/351, 105/104, 81/80, 225/224, 144/143]

31-EDO, rank-5 : [DeSbSbAcAcm2, SpA0, Ac1, AsSb1] :: [441/440, 225/224, 81/80, 385/384]

31-EDO, rank-4 : [SbAcd2, Ac1, SpSpSpGrM0] :: [126/125, 81/80, 1728/1715]

31-EDO, rank-3 : [Ac1, Grdddd3] :: [81/80, 393216/390625]


32-EDO, rank-6 : [AsGr1, PrGrd2, PrSpGr1, SpGr1, DeSbM2] :: [55/54, 416/405, 65/63, 64/63, 2800/2673]

32-EDO, rank-5 : [AsGr1, SpSpGrA0, DeSbSbAcM2, SpGr1] :: [55/54, 50/49, 1225/1188, 64/63]

32-EDO, rank-4 : [SpSpGrA0, SpGr1, SbSbM2] :: [50/49, 64/63, 6125/5832]

32-EDO, rank-3 : [GrAA1, Grd2] :: [3125/2916, 2048/2025]


33-EDO, rank-6 : [PrDeSp1, PrAsSpGrd1, SpA0, Sp1, DeSbSbAcAcm2] :: [78/77, 143/140, 225/224, 36/35, 441/440]

33-EDO, rank-5 : [SpA0, DeSbSbAcAcm2, Sp1, AsAsGrd1] :: [225/224, 441/440, 36/35, 121/120]

33-EDO, rank-4 : [Sp1, SpA0, SbSbSbAcAcdd3] :: [36/35, 225/224, 83349/80000]

33-EDO, rank-3 : [d2, AcAcAcm2] :: [128/125, 177147/160000]


34-EDO, rank-6 : [ReSbAcA1, DeSbAcm2, DeA1, ReAsGr1, SbSbAcm2] :: [105/104, 56/55, 100/99, 352/351, 49/48]

34-EDO, rank-5 : [DeSbAcm2, DeSbAcAcA1, SbA1, SbSbAcm2] :: [56/55, 2835/2816, 875/864, 49/48]

34-EDO, rank-4 : [SbSbAcm2, SbAcd2, SbGrm2] :: [49/48, 126/125, 2240/2187]

34-EDO, rank-3 : [GrGrA1, Grd2] :: [20000/19683, 2048/2025]


35-EDO, rank-6 : [ReAcA1, DeSbAcAcm2, AsSpSpGrM0, DeAcA1, AsSb1] :: [27/26, 567/550, 99/98, 45/44, 385/384]

35-EDO, rank-5 : [AsSpSpGrM0, DeAcA1, SbAcd2, AsSb1] :: [99/98, 45/44, 126/125, 385/384]

35-EDO, rank-4 : [SbAcd2, SpSpA0, SbAcA1] :: [126/125, 405/392, 525/512]

35-EDO, rank-3 : [AcAcd2, AcAcA1] :: [6561/6250, 2187/2048]


36-EDO, rank-6 : [PrDeSp1, ReSpAcA0, AsSpGrd1, Ac1, DeSbAcm2] :: [78/77, 729/728, 176/175, 81/80, 56/55]

36-EDO, rank-5 : [DeSpSpAcA0, DeSbAcm2, AsSpGrd1, Ac1] :: [2187/2156, 56/55, 176/175, 81/80]

36-EDO, rank-4 : [SbSbSbAcdd3, Ac1, d2] :: [1029/1000, 81/80, 128/125]

36-EDO, rank-3 : [Ac1, d2] :: [81/80, 128/125]


37-EDO, rank-6 : [PrAsGrGrd2, GrA1, AsGr1, PrSbd2, ReSbSbAcm2] :: [2288/2187, 250/243, 55/54, 91/90, 196/195]

37-EDO, rank-5 : [AsGr1, SbSbSbdd3, DeA1, SpGr1] :: [55/54, 686/675, 100/99, 64/63]

37-EDO, rank-4 : [SbSbGrdd3, SpGr1, GrA1] :: [6272/6075, 64/63, 250/243]

37-EDO, rank-3 : [GrA1, GrGrddd3] :: [250/243, 262144/253125]


38-EDO, rank-6 : [DeDeAcAcA1, ReAs1, AsSpGrd1, SpSpGrA0, Ac1] :: [243/242, 66/65, 176/175, 50/49, 81/80]

38-EDO, rank-5 : [Ac1, SpSpGrA0, AsSpGrd1, AsSb1] :: [81/80, 50/49, 176/175, 385/384]

38-EDO, rank-4 : [SpSpGrA0, Ac1, SpSpGrd1] :: [50/49, 81/80, 6144/6125]

38-EDO, rank-3 : [Ac1, AA0] :: [81/80, 3125/3072]


39-EDO, rank-6 : [ReAsSbSbm2, PrDeSbm2, AsSbd2, SbSbAcm2, DeSbAcm2] :: [1078/1053, 910/891, 77/75, 49/48, 56/55]

39-EDO, rank-5 : [DeSbAcm2, AsSpGrd1, SbSbAcm2, SbGrm2] :: [56/55, 176/175, 49/48, 2240/2187]

39-EDO, rank-4 : [SbGrm2, SbSbdd3, SbSbAcm2] :: [2240/2187, 392/375, 49/48]

39-EDO, rank-3 : [d2, GrGrGrA1] :: [128/125, 1600000/1594323]


40-EDO, rank-6 : [ReAs1, Acd2, AsSb1, AsSpSpGrM0, ReSbAcA1] :: [66/65, 648/625, 385/384, 99/98, 105/104]

40-EDO, rank-5 : [AsSpSpGrM0, SpA0, AsSb1, DeSbAcAcm2] :: [99/98, 225/224, 385/384, 567/550]

40-EDO, rank-4 : [SbSbSbAcdd3, SpA0, Acd2] :: [1029/1000, 225/224, 648/625]

40-EDO, rank-3 : [Acd2, AcAcAA0] :: [648/625, 273375/262144]


41-EDO, rank-6 : [DeA1, ReSbAcA1, ReDeAcA1, DeSbSbAcAcm2, SpA0] :: [100/99, 105/104, 144/143, 441/440, 225/224]

41-EDO, rank-5 : [DeDeSbSbAcAcM2, SbSbm2, SpA0, DeA1] :: [245/242, 245/243, 225/224, 100/99]

41-EDO, rank-4 : [SpA0, SpSpGrGrA0, SbSbm2] :: [225/224, 4000/3969, 245/243]

41-EDO, rank-3 : [AA0, GrGrA1] :: [3125/3072, 20000/19683]


42-EDO, rank-6 : [AsGr1, PrPrGrd2, AsSbd2, PrAsSpGrd1, SpGr1] :: [55/54, 169/162, 77/75, 143/140, 64/63]

42-EDO, rank-5 : [DeDeSbSbSbAcd3, AsGrd2, SpGr1, AsGr1] :: [5488/5445, 704/675, 64/63, 55/54]

42-EDO, rank-4 : [SpGr1, SbAcd2, SbSbSbGrd3] :: [64/63, 126/125, 6860/6561]

42-EDO, rank-3 : [d2, GrGrGrM2] :: [128/125, 5120000/4782969]


43-EDO, rank-6 : [SpA0, AsAsSbSbAcdd2, PrDeDeSbAcm2, AsSpGrd1, Ac1] :: [225/224, 160083/160000, 364/363, 176/175, 81/80]

43-EDO, rank-5 : [AsSpSpGrM0, SpA0, Ac1, DeDeSpAcA1] :: [99/98, 225/224, 81/80, 864/847]

43-EDO, rank-4 : [SbAcd2, Ac1, SpSpSpSpGrM0] :: [126/125, 81/80, 62208/60025]

43-EDO, rank-3 : [Ac1, Grdddddd4] :: [81/80, 50331648/48828125]


44-EDO, rank-6 : [AsGr1, ReReA1, DeSbm2, SpSpGrA0, SpGr1] :: [55/54, 512/507, 896/891, 50/49, 64/63]

44-EDO, rank-5 : [SpA0, AsSpGrd1, AsGr1, SpGr1] :: [225/224, 176/175, 55/54, 64/63]

44-EDO, rank-4 : [SpSpGrA0, SpGr1, SbSbm2] :: [50/49, 64/63, 245/243]

44-EDO, rank-3 : [GrA1, Grd2] :: [250/243, 2048/2025]


45-EDO, rank-6 : [DeAcA1, ReAsSpGrA0, ReSbSbAcAcm2, Ac1, AsSb1] :: [45/44, 275/273, 1323/1300, 81/80, 385/384]

45-EDO, rank-5 : [DeAcA1, Ac1, AsSpSpSpGrAA-1, AsSb1] :: [45/44, 81/80, 1375/1372, 385/384]

45-EDO, rank-4 : [SbA1, Ac1, SpSpSpAAA-1] :: [875/864, 81/80, 5625/5488]

45-EDO, rank-3 : [Ac1, AcAAAAAA-1] :: [81/80, 244140625/226492416]


46-EDO, rank-6 : [PrPrDeGrd2, AsGrGr1, SbAcd2, SbSbm2, PrSbd2] :: [2704/2673, 2200/2187, 126/125, 245/243, 91/90]

46-EDO, rank-5 : [SbSbSbdd3, SbAcd2, DeSbSbAcAcm2, DeSbm2] :: [686/675, 126/125, 441/440, 896/891]

46-EDO, rank-4 : [SbAcd2, SbSbm2, Grd2] :: [126/125, 245/243, 2048/2025]

46-EDO, rank-3 : [AcAcdd2, Grd2] :: [78732/78125, 2048/2025]


47-EDO, rank-6 : [DeAcA1, SbAcd2, AsSpSpGrM0, ReSbAcA1, ReSp1] :: [45/44, 126/125, 99/98, 105/104, 2304/2275]

47-EDO, rank-5 : [AsSpSpGrM0, DeAcA1, SbAcd2, AsSbAc1] :: [99/98, 45/44, 126/125, 2079/2048]

47-EDO, rank-4 : [SbAcd2, SpSpA0, SbSbSbAcAcm2] :: [126/125, 405/392, 1029/1024]

47-EDO, rank-3 : [AcAcd2, AcAA0] :: [6561/6250, 16875/16384]


48-EDO, rank-6 : [ReReA1, AsSb1, DeA1, SpSpGrA0, ReDeAcA1] :: [512/507, 385/384, 100/99, 50/49, 144/143]

48-EDO, rank-5 : [AsSpSpGrM0, AsGrGr1, DeA1, SbA1] :: [99/98, 2200/2187, 100/99, 875/864]

48-EDO, rank-4 : [SpSpGrA0, SbA1, SpAcA0] :: [50/49, 875/864, 3645/3584]

48-EDO, rank-3 : [GrGrA1, AcAA0] :: [20000/19683, 16875/16384]


49-EDO, rank-6 : [PrAsGrdd2, AsSpGrGrA0, SbSbm2, PrSbd2, DeA1] :: [1144/1125, 6875/6804, 245/243, 91/90, 100/99]

49-EDO, rank-5 : [SpGr1, AsAsSpGrGrM0, DeA1, DeSpSpA0] :: [64/63, 3025/3024, 100/99, 540/539]

49-EDO, rank-4 : [SpGr1, SbSbddd3, SbSbm2] :: [64/63, 3136/3125, 245/243]

49-EDO, rank-3 : [GrAA0, GrGrm2] :: [15625/15552, 20480/19683]


50-EDO, rank-6 : [SpA0, PrDeDeSbAcAcm2, ReSbSbAcAcm2, AsSb1, Ac1] :: [225/224, 2457/2420, 1323/1300, 385/384, 81/80]

50-EDO, rank-5 : [DeDeSbSbAcAcM2, AsSbSbAcd2, SbAcd2, Ac1] :: [245/242, 1617/1600, 126/125, 81/80]

50-EDO, rank-4 : [SbAcd2, Ac1, SbSbSbSbSbAcd3] :: [126/125, 81/80, 84035/82944]

50-EDO, rank-3 : [Ac1, AcAAAAAAA-2] :: [81/80, 1220703125/1207959552]


51-EDO, rank-6 : [PrDeSpGr1, AsGr1, ReSbSbAcm2, DeA1, ReSpSpGrA0] :: [2080/2079, 55/54, 196/195, 100/99, 640/637]

51-EDO, rank-5 : [SpA0, DeA1, AsGr1, SbSbSbAcAcm2] :: [225/224, 100/99, 55/54, 1029/1024]

51-EDO, rank-4 : [GrA1, SpA0, SbSbSbAcAcm2] :: [250/243, 225/224, 1029/1024]

51-EDO, rank-3 : [GrA1, AcAcAcAAAA-1] :: [250/243, 34171875/33554432]


52-EDO, rank-6 : [AsSpSpGrM0, PrPrGrdd2, PrDeSp1, SpA0, DeSbAcAcm2] :: [99/98, 676/675, 78/77, 225/224, 567/550]

52-EDO, rank-5 : [AsSpSpGrM0, DeSbAcAcm2, SpA0, AsSbSbAcd2] :: [99/98, 567/550, 225/224, 1617/1600]

52-EDO, rank-4 : [SpAc1, SpA0, SbSbSbAcAcm2] :: [729/700, 225/224, 1029/1024]

52-EDO, rank-3 : [Acd2, AcAcAcAA0] :: [648/625, 4428675/4194304]


53-EDO, rank-6 : [ReSpAcA0, ReAsSpGrA0, PrDeSpSpGrA0, AsSpSpGrM0, SpA0] :: [729/728, 275/273, 1625/1617, 99/98, 225/224]

53-EDO, rank-5 : [AsSpSpGrM0, AsGrGr1, SpA0, DeSpSpA0] :: [99/98, 2200/2187, 225/224, 540/539]

53-EDO, rank-4 : [SpSpGrGrA0, SpA0, SpSpSpGrM0] :: [4000/3969, 225/224, 1728/1715]

53-EDO, rank-3 : [GrAA0, AcAcA0] :: [15625/15552, 32805/32768]


54-EDO, rank-6 : [AsGr1, PrDeA1, SpA0, ReDeSbAcAA1, SpGr1] :: [55/54, 1625/1584, 225/224, 875/858, 64/63]

54-EDO, rank-5 : [SpA0, SpGr1, AsGr1, DeDeSbSbAcA2] :: [225/224, 64/63, 55/54, 30625/29403]

54-EDO, rank-4 : [SpSpGrA0, SpGr1, SbSbGrA2] :: [50/49, 64/63, 765625/708588]

54-EDO, rank-3 : [GrGrAAA1, Grd2] :: [390625/354294, 2048/2025]


55-EDO, rank-6 : [DeDeAcAcA1, ReAs1, DeSbSbAcdd3, AsSpGrd1, Ac1] :: [243/242, 66/65, 7056/6875, 176/175, 81/80]

55-EDO, rank-5 : [Ac1, AsSpGrd1, DeSbSbAcdd3, AsSb1] :: [81/80, 176/175, 7056/6875, 385/384]

55-EDO, rank-4 : [SbSbSbAcdd3, Ac1, SpSpGrd1] :: [1029/1000, 81/80, 6144/6125]

55-EDO, rank-3 : [Ac1, GrGrdddddddd5] :: [81/80, 6442450944/6103515625]


56-EDO, rank-6 : [DeA1, PrDed2, ReAsGr1, PrSbd2, DeSbSbAcAcm2] :: [100/99, 832/825, 352/351, 91/90, 441/440]

56-EDO, rank-5 : [AsSb1, DeSbSbAcAcm2, DeA1, AsSbGrd2] :: [385/384, 441/440, 100/99, 1232/1215]

56-EDO, rank-4 : [SbSbSbdd3, SbGrm2, SbA1] :: [686/675, 2240/2187, 875/864]

56-EDO, rank-3 : [Grd2, GrGrAAA0] :: [2048/2025, 1953125/1889568]


57-EDO, rank-6 : [ReAsSpGrA0, ReSbAcA1, Ac1, AsSb1, DeSpAA0] :: [275/273, 105/104, 81/80, 385/384, 625/616]

57-EDO, rank-5 : [AsSpSpGrM0, Ac1, AsSb1, DeSpAA0] :: [99/98, 81/80, 385/384, 625/616]

57-EDO, rank-4 : [SpSpSpGrM0, Ac1, SpSpSpAAA-1] :: [1728/1715, 81/80, 5625/5488]

57-EDO, rank-3 : [Ac1, AA0] :: [81/80, 3125/3072]


58-EDO, rank-6 : [ReAsAsd1, PrPrGrdd2, PrSpd1, SbAcd2, AsSpGrd1] :: [3267/3250, 676/675, 351/350, 126/125, 176/175]

58-EDO, rank-5 : [DeDeAcAcA1, SbAcd2, AsSpGrd1, DeSbm2] :: [243/242, 126/125, 176/175, 896/891]

58-EDO, rank-4 : [SbAcd2, SpSpSpGrM0, Grd2] :: [126/125, 1728/1715, 2048/2025]

58-EDO, rank-3 : [Grd2, AcAcAcdd2] :: [2048/2025, 1594323/1562500]


59-EDO, rank-6 : [PrDed2, PrSbd2, DeA1, AsGr1, ReSbSbSbdd3] :: [832/825, 91/90, 100/99, 55/54, 43904/43875]

59-EDO, rank-5 : [AsSb1, DeA1, SpGr1, SbSbSbSbdddd4] :: [385/384, 100/99, 64/63, 153664/151875]

59-EDO, rank-4 : [SpGr1, GrA1, SbSbSbSbdddd4] :: [64/63, 250/243, 153664/151875]

59-EDO, rank-3 : [GrA1, GrGrGrddddd4] :: [250/243, 536870912/512578125]


60-EDO, rank-6 : [SpA0, ReSbAcA1, DeA1, PrDeSbSbAcAcm2, AsSb1] :: [225/224, 105/104, 100/99, 5733/5632, 385/384]

60-EDO, rank-5 : [DeA1, SpA0, DeDeSbSbAcAcAcM2, AsSb1] :: [100/99, 225/224, 3969/3872, 385/384]

60-EDO, rank-4 : [SpA0, SbSbSbSbAcAcdd3, SbSbm2] :: [225/224, 64827/64000, 245/243]

60-EDO, rank-3 : [AA0, GrGrGrA1] :: [3125/3072, 1600000/1594323]


61-EDO, rank-6 : [PrAsGrdd2, SbAcd2, PrSbd2, AsSb1, ReDeSbSbAcM2] :: [1144/1125, 126/125, 91/90, 385/384, 3920/3861]

61-EDO, rank-5 : [AsSpGrd1, SbAcd2, AsSb1, SbGrm2] :: [176/175, 126/125, 385/384, 2240/2187]

61-EDO, rank-4 : [SbSbSbAcAcm2, SbAcd2, SbGrm2] :: [1029/1024, 126/125, 2240/2187]

61-EDO, rank-3 : [GrGrA1, GrGrddd3] :: [20000/19683, 262144/253125]


62-EDO, rank-6 : [SpA0, AsSpGrd1, Ac1, AsSb1, PrPrSpGrd1] :: [225/224, 176/175, 81/80, 385/384, 169/168]

62-EDO, rank-5 : [DeSbSbAcAcm2, SpA0, Ac1, AsSb1] :: [441/440, 225/224, 81/80, 385/384]

62-EDO, rank-4 : [SbAcd2, Ac1, SpSpSpGrM0] :: [126/125, 81/80, 1728/1715]

62-EDO, rank-3 : [Ac1, Grdddd3] :: [81/80, 393216/390625]


63-EDO, rank-6 : [DeA1, PrAsGrGrdd2, ReAsGr1, SpA0, DeSpSpA0] :: [100/99, 18304/18225, 352/351, 225/224, 540/539]

63-EDO, rank-5 : [DeA1, SpA0, AsSb1, AsAsSpSpGrGrGrM0] :: [100/99, 225/224, 385/384, 12100/11907]

63-EDO, rank-4 : [SpA0, SpSpSpGrGrGrA0, SbSbm2] :: [225/224, 256000/250047, 245/243]

63-EDO, rank-3 : [AA0, GrGrGrm2] :: [3125/3072, 1638400/1594323]


64-EDO, rank-6 : [ReAs1, Acd2, SpA0, ReDeAcA1, DeSbSbAcAcm2] :: [66/65, 648/625, 225/224, 144/143, 441/440]

64-EDO, rank-5 : [SpA0, DeSbSbAcAcm2, AsAsGrd1, SpAc1] :: [225/224, 441/440, 121/120, 729/700]

64-EDO, rank-4 : [SpA0, SbSbSbSbAcAcdd3, SpAc1] :: [225/224, 64827/64000, 729/700]

64-EDO, rank-3 : [Acd2, AcAcAcAcAA0] :: [648/625, 71744535/67108864]


65-EDO, rank-6 : [ReSbAcA1, PrDeDeDeSbSbAcAcAcM2, AsAsSbGrdd2, ReAsGr1, PrDeSbSbAcm2] :: [105/104, 85995/85184, 3388/3375, 352/351, 3185/3168]

65-EDO, rank-5 : [DeDeSbSbAcAcM2, DeSbSbdd3, SbAcd2, AsSb1] :: [245/242, 12544/12375, 126/125, 385/384]

65-EDO, rank-4 : [SbSbSbdd3, SbAcd2, SbSbAcAcA1] :: [686/675, 126/125, 33075/32768]

65-EDO, rank-3 : [AcAcdd2, AcAcA0] :: [78732/78125, 32805/32768]


66-EDO, rank-6 : [DeA1, ReAsSpGrA0, ReSbSbAcm2, AsGr1, Grd2] :: [100/99, 275/273, 196/195, 55/54, 2048/2025]

66-EDO, rank-5 : [AsGr1, Grd2, SbSbSbdd3, DeA1] :: [55/54, 2048/2025, 686/675, 100/99]

66-EDO, rank-4 : [SbSbSbdd3, GrA1, Grd2] :: [686/675, 250/243, 2048/2025]

66-EDO, rank-3 : [GrA1, Grd2] :: [250/243, 2048/2025]


67-EDO, rank-6 : [SbSbSbAcAcm2, PrPrDeSbAcd2, AsSpGrd1, ReSbSbAcm2, Ac1] :: [1029/1024, 3549/3520, 176/175, 196/195, 81/80]

67-EDO, rank-5 : [DeDeDeSbAcAcM2, SpSpSpGrM0, Ac1, AsSpGrd1] :: [1344/1331, 1728/1715, 81/80, 176/175]

67-EDO, rank-4 : [Ac1, SbSbSbSbAcdddd4, SpSpSpGrM0] :: [81/80, 9604/9375, 1728/1715]

67-EDO, rank-3 : [Ac1, Grddddddddd6] :: [81/80, 4174708211712/3814697265625]


68-EDO, rank-6 : [ReReA1, PrAsAsGrGrd1, DeSbm2, ReSbSbAcm2, ReAsSpGrA0] :: [512/507, 7865/7776, 896/891, 196/195, 275/273]

68-EDO, rank-5 : [DeSbm2, SpSpGrGrA0, AsSpGrd1, AsSb1] :: [896/891, 4000/3969, 176/175, 385/384]

68-EDO, rank-4 : [SpSpGrGrA0, SbSbm2, Grd2] :: [4000/3969, 245/243, 2048/2025]

68-EDO, rank-3 : [GrGrA1, Grd2] :: [20000/19683, 2048/2025]


69-EDO, rank-6 : [PrPrPrDeDeAcd2, ReAcAA0, PrDeDeSbAcm2, PrDeSp1, Ac1] :: [19773/19360, 3375/3328, 364/363, 78/77, 81/80]

69-EDO, rank-5 : [Ac1, AsSpSpGrM0, DeSpAA0, DeDeSpAcA1] :: [81/80, 99/98, 625/616, 864/847]

69-EDO, rank-4 : [Ac1, SpSpSpAAA-1, SpSpGrd1] :: [81/80, 5625/5488, 6144/6125]

69-EDO, rank-3 : [Ac1, AcAcAAAAAAAAAA-3] :: [81/80, 3814697265625/3710851743744]


70-EDO, rank-6 : [ReAsAsAsGrGrd1, PrAsGrdd2, SbAcd2, DeSpSpA0, ReAsGr1] :: [5324/5265, 1144/1125, 126/125, 540/539, 352/351]

70-EDO, rank-5 : [AsSpSpGrM0, SbAcd2, DeSpSpA0, Grd2] :: [99/98, 126/125, 540/539, 2048/2025]

70-EDO, rank-4 : [SbAcd2, SpSpSpM0, Grd2] :: [126/125, 8748/8575, 2048/2025]

70-EDO, rank-3 : [Grd2, AcAcdddd3] :: [2048/2025, 51018336/48828125]


71-EDO, rank-6 : [ReAsAsGrGr1, PrDeSbm2, DeSbSbAcAcm2, DeA1, SbA1] :: [9680/9477, 910/891, 441/440, 100/99, 875/864]

71-EDO, rank-5 : [DeA1, SbSbGrdd3, DeSbSbAcAcm2, AsSb1] :: [100/99, 6272/6075, 441/440, 385/384]

71-EDO, rank-4 : [SbSbSbGrd3, SbA1, SpSpGrGrA0] :: [6860/6561, 875/864, 4000/3969]

71-EDO, rank-3 : [GrGrAAA0, GrGrm2] :: [1953125/1889568, 20480/19683]


72-EDO, rank-6 : [DeDeAcAcA1, PrPrGrdd2, DeSbSbAcAcm2, PrGr1, PrSpd1] :: [243/242, 676/675, 441/440, 325/324, 351/350]

72-EDO, rank-5 : [SpA0, DeSbSbAcAcm2, AsSb1, AsAcd1] :: [225/224, 441/440, 385/384, 8019/8000]

72-EDO, rank-4 : [SpA0, SbSbSbAcAcm2, SbGrA1] :: [225/224, 1029/1024, 4375/4374]

72-EDO, rank-3 : [GrAA0, AcAcAcA0] :: [15625/15552, 531441/524288]


73-EDO, rank-6 : [PrSpd1, DeSbSbAcAcm2, PrSbd2, SbAcd2, DeDeSpA1] :: [351/350, 441/440, 91/90, 126/125, 2560/2541]

73-EDO, rank-5 : [AsGrGr1, SbAcd2, DeSbSbAcAcm2, DeDeAcm2] :: [2200/2187, 126/125, 441/440, 3072/3025]

73-EDO, rank-4 : [SbSbSbdd3, SbAcd2, SpGrGrd2] :: [686/675, 126/125, 131072/127575]

73-EDO, rank-3 : [AcAcdd2, GrGrddd3] :: [78732/78125, 262144/253125]


74-EDO, rank-6 : [ReDeAcAcA1, SbAcd2, DeSbSbAcAcm2, Ac1, PrPrDeSpSpGrd1] :: [729/715, 126/125, 441/440, 81/80, 2704/2695]

74-EDO, rank-5 : [AsSpSpGrM0, SbAcd2, Ac1, DeDeDeSpSpAcA1] :: [99/98, 126/125, 81/80, 331776/326095]

74-EDO, rank-4 : [SbAcd2, Ac1, SpSpSpSpSpSpSpGrGrA-1] :: [126/125, 81/80, 21233664/20588575]

74-EDO, rank-3 : [Ac1, GrGrdddddddddd6] :: [81/80, 19791209299968/19073486328125]


75-EDO, rank-6 : [ReReAsAsGr1, ReGrA1, AsSpGrd1, SpA0, PrGr1] :: [7744/7605, 3200/3159, 176/175, 225/224, 325/324]

75-EDO, rank-5 : [AsSpSpGrM0, SpA0, AsSb1, AsSpSpGrGrGrA0] :: [99/98, 225/224, 385/384, 110000/107163]

75-EDO, rank-4 : [SpA0, SpSpSpGrGrGrA0, SpSpSpGrM0] :: [225/224, 256000/250047, 1728/1715]

75-EDO, rank-3 : [GrGrA1, AcAcAAAA-1] :: [20000/19683, 2109375/2097152]


76-EDO, rank-6 : [PrSpd1, Ac1, DeDeSbSbAcAcM2, ReSpSpSpAAA-1, ReDeAcA1] :: [351/350, 81/80, 245/242, 4500/4459, 144/143]

76-EDO, rank-5 : [DeDeSbSbAcAcM2, DeSpAA0, Ac1, AsSb1] :: [245/242, 625/616, 81/80, 385/384]

76-EDO, rank-4 : [Ac1, SbSbSbSbAcdd3, AA0] :: [81/80, 2401/2400, 3125/3072]

76-EDO, rank-3 : [Ac1, AA0] :: [81/80, 3125/3072]


77-EDO, rank-6 : [PrSpd1, DeSbSbAcAcm2, SbAcd2, AsSb1, ReSpAcA0] :: [351/350, 441/440, 126/125, 385/384, 729/728]

77-EDO, rank-5 : [DeSbSbAcAcm2, SbAcd2, AsSb1, SbSbSbGrdd3] :: [441/440, 126/125, 385/384, 10976/10935]

77-EDO, rank-4 : [SpSpAcM0, SbAcd2, SbSbSbAcAcm2] :: [19683/19600, 126/125, 1029/1024]

77-EDO, rank-3 : [AcAcAcdd2, AcAcA0] :: [1594323/1562500, 32805/32768]


78-EDO, rank-6 : [PrPrDeGrd2, ReAsSpGrA0, AsSbGrd2, DeA1, AsSb1] :: [2704/2673, 275/273, 1232/1215, 100/99, 385/384]

78-EDO, rank-5 : [AsSpSpSpGrAA-1, DeA1, AsSbGrd2, AsSb1] :: [1375/1372, 100/99, 1232/1215, 385/384]

78-EDO, rank-4 : [SpSpSpGrAAA-1, SbGrm2, SbA1] :: [3125/3087, 2240/2187, 875/864]

78-EDO, rank-3 : [Grd2, GrGrGrAAAA0] :: [2048/2025, 244140625/229582512]


79-EDO, rank-6 : [ReReAsAsA0, ReAcAA0, ReAsSpGrA0, PrPrSpGrd1, AsSb1] :: [5445/5408, 3375/3328, 275/273, 169/168, 385/384]

79-EDO, rank-5 : [AsSpSpGrM0, DeDeAcAcA1, AsSb1, DeSpAA0] :: [99/98, 243/242, 385/384, 625/616]

79-EDO, rank-4 : [SpSpGrGrA0, SpAcA0, SpSpSpGrM0] :: [4000/3969, 3645/3584, 1728/1715]

79-EDO, rank-3 : [AA0, AcAcAcAcd1] :: [3125/3072, 129140163/128000000]


80-EDO, rank-6 : [PrPrDeDeAcd2, PrAsSpGrGrd1, PrSpd1, ReAsGr1, DeSpSpA0] :: [3042/3025, 572/567, 351/350, 352/351, 540/539]

80-EDO, rank-5 : [SbSbSbGrdd3, AsSpGrd1, DeSpSpA0, AsGrGr1] :: [10976/10935, 176/175, 540/539, 2200/2187]

80-EDO, rank-4 : [SpSpSpGrM0, SbSbddd3, SpSpGrGrA0] :: [1728/1715, 3136/3125, 4000/3969]

80-EDO, rank-3 : [Grd2, GrGrGrGrAAA0] :: [2048/2025, 390625000/387420489]


81-EDO, rank-6 : [PrSpd1, Ac1, SbAcd2, ReDeAcA1, ReAsAsSpSpSpSpGrA-1] :: [351/350, 81/80, 126/125, 144/143, 156816/156065]

81-EDO, rank-5 : [Ac1, SpA0, AsSb1, DeDeDeSbSbSbAcAcAcA2] :: [81/80, 225/224, 385/384, 42875/42592]

81-EDO, rank-4 : [SpA0, Ac1, SbSbSbSbSbSbSbSbAcAcdd4] :: [225/224, 81/80, 144120025/143327232]

81-EDO, rank-3 : [Ac1, AcAcAAAAAAAAAAA-4] :: [81/80, 476837158203125/474989023199232]


82-EDO, rank-6 : [SpA0, DeA1, PrPrDeSbAcd2, DeSbSbAcAcm2, AsSb1] :: [225/224, 100/99, 3549/3520, 441/440, 385/384]

82-EDO, rank-5 : [DeDeSbSbAcAcM2, SbSbm2, SpA0, DeA1] :: [245/242, 245/243, 225/224, 100/99]

82-EDO, rank-4 : [SpA0, SpSpGrGrA0, SbSbm2] :: [225/224, 4000/3969, 245/243]

82-EDO, rank-3 : [AA0, GrGrA1] :: [3125/3072, 20000/19683]


83-EDO, rank-6 : [PrSbd2, SpSpGrGrA0, ReAsSbGrA1, AsSpGrd1, ReSbSbAcm2] :: [91/90, 4000/3969, 9625/9477, 176/175, 196/195]

83-EDO, rank-5 : [AsSb1, SbGrm2, AsSpGrd1, SbSbSbdd3] :: [385/384, 2240/2187, 176/175, 686/675]

83-EDO, rank-4 : [SpSpGrGrA0, SbSbSbdd3, SpSpGrd1] :: [4000/3969, 686/675, 6144/6125]

83-EDO, rank-3 : [GrAA0, GrGrGrGrdd3] :: [15625/15552, 8388608/7971615]


84-EDO, rank-6 : [ReDeAcAcAcAcAA0, PrDeDeAcA1, PrSpd1, SpA0, DeSbAcAcA1] :: [4782969/4685824, 975/968, 351/350, 225/224, 2835/2816]

84-EDO, rank-5 : [DeSbSbAcAcm2, AsAcd1, DeSpAc1, SpA0] :: [441/440, 8019/8000, 1944/1925, 225/224]

84-EDO, rank-4 : [SpA0, SpSpSpGrM0, SbSbAcAcAcd2] :: [225/224, 1728/1715, 321489/320000]

84-EDO, rank-3 : [AcAcdd2, AcAcAcA0] :: [78732/78125, 531441/524288]


85-EDO, rank-6 : [ReAsAsSpGrGrA0, PrSpSpGrGrA0, SbSbm2, DeA1, SpA0] :: [15125/14742, 8125/7938, 245/243, 100/99, 225/224]

85-EDO, rank-5 : [SpA0, DeA1, AsSb1, AsAsSpSpSpGrGrGrGrM0] :: [225/224, 100/99, 385/384, 774400/750141]

85-EDO, rank-4 : [SpA0, SbSbm2, SpSpSpSpGrGrGrGrA0] :: [225/224, 245/243, 16384000/15752961]

85-EDO, rank-3 : [AA0, GrGrGrGrM2] :: [3125/3072, 409600000/387420489]


86-EDO, rank-6 : [AsAsAcM0, PrDeDeAcA1, PrAsd1, Ac1, AsSbSbAcd2] :: [264627/262144, 975/968, 1287/1280, 81/80, 1617/1600]

86-EDO, rank-5 : [DeDeSbSbAcAcM2, Ac1, DeSpSpA0, DeSbSbAcdd3] :: [245/242, 81/80, 540/539, 7056/6875]

86-EDO, rank-4 : [Ac1, SbSbSbSbAcdddd4, SpSpGrd1] :: [81/80, 9604/9375, 6144/6125]

86-EDO, rank-3 : [Ac1, Grdddddd4] :: [81/80, 50331648/48828125]


87-EDO, rank-6 : [ReSbSbAcm2, PrDeDeSbAcm2, DeSbSbAcAcm2, ReAA0, PrGr1] :: [196/195, 364/363, 441/440, 625/624, 325/324]

87-EDO, rank-5 : [SbSbm2, AsSb1, DeSbSbAcAcm2, AsAsSbGrdd2] :: [245/243, 385/384, 441/440, 3388/3375]

87-EDO, rank-4 : [SbSbSbAcAcm2, SbSbddd3, SbSbm2] :: [1029/1024, 3136/3125, 245/243]

87-EDO, rank-3 : [GrAA0, GrGrGrGrddd3] :: [15625/15552, 67108864/66430125]


88-EDO, rank-6 : [DeSbSbAcAcm2, ReDeAcA1, Ac1, ReSbAcA1, PrDeDeSpAcAA0] :: [441/440, 144/143, 81/80, 105/104, 219375/216832]

88-EDO, rank-5 : [AsSpSpGrM0, Ac1, AsSb1, DeSpSpAcAAAA-1] :: [99/98, 81/80, 385/384, 140625/137984]

88-EDO, rank-4 : [Ac1, SpSpSpGrM0, SpSpSpSpGrAAAAA-2] :: [81/80, 1728/1715, 78125/76832]

88-EDO, rank-3 : [Ac1, Grm-358] :: [81/80, 11920928955078125/11399736556781568]


89-EDO, rank-6 : [SbAcd2, PrDeDeSbAcm2, AsSpGrd1, PrAsd1, DeSpSpA0] :: [126/125, 364/363, 176/175, 1287/1280, 540/539]

89-EDO, rank-5 : [SbAcd2, DeSpSpA0, AsSpGrd1, AsSpAcM0] :: [126/125, 540/539, 176/175, 72171/71680]

89-EDO, rank-4 : [SbAcd2, SpSpSpAcAcAA-1, SpSpSpGrM0] :: [126/125, 177147/175616, 1728/1715]

89-EDO, rank-3 : [Acdddd3, AcAcA0] :: [10077696/9765625, 32805/32768]


90-EDO, rank-6 : [PrPrDeGrd2, ReAsSpGrA0, AsSbGrd2, AsSpGrd1, DeSbm2] :: [2704/2673, 275/273, 1232/1215, 176/175, 896/891]

90-EDO, rank-5 : [DeSbm2, AsSb1, AsSpGrd1, SpSpSpGrAAA-1] :: [896/891, 385/384, 176/175, 3125/3087]

90-EDO, rank-4 : [SpSpSpSpSpGrGrAA-1, SpSpGrd1, SbSbm2] :: [51200/50421, 6144/6125, 245/243]

90-EDO, rank-3 : [Grd2, GrGrGrGrAAAA0] :: [2048/2025, 1220703125/1162261467]


91-EDO, rank-6 : [SpA0, ReSbAcA1, AsAcd1, PrDeDeSbAcm2, AsSb1] :: [225/224, 105/104, 8019/8000, 364/363, 385/384]

91-EDO, rank-5 : [DeDeSbSbAcAcM2, AsSb1, SpA0, AsAcd1] :: [245/242, 385/384, 225/224, 8019/8000]

91-EDO, rank-4 : [SpA0, SbSbSbSbAcAcdd3, SbGrA1] :: [225/224, 64827/64000, 4375/4374]

91-EDO, rank-3 : [GrAA0, AcAcAcAcA0] :: [15625/15552, 43046721/41943040]


92-EDO, rank-6 : [PrPrDeGrd2, AsGrGr1, SbAcd2, SbSbm2, PrSbd2] :: [2704/2673, 2200/2187, 126/125, 245/243, 91/90]

92-EDO, rank-5 : [SbSbSbdd3, SbAcd2, DeSbSbAcAcm2, DeSbm2] :: [686/675, 126/125, 441/440, 896/891]

92-EDO, rank-4 : [SbAcd2, SbSbm2, Grd2] :: [126/125, 245/243, 2048/2025]

92-EDO, rank-3 : [AcAcdd2, Grd2] :: [78732/78125, 2048/2025]


93-EDO, rank-6 : [PrDeDeSbAcm2, SbAcd2, Ac1, PrAsSpSpSpGrGrm0, ReDeAcA1] :: [364/363, 126/125, 81/80, 1716/1715, 144/143]

93-EDO, rank-5 : [Ac1, SpA0, DeDeDeSbSbSbAcAcAcA2, SpSpSpGrM0] :: [81/80, 225/224, 42875/42592, 1728/1715]

93-EDO, rank-4 : [SbAcd2, Ac1, SpSpSpGrM0] :: [126/125, 81/80, 1728/1715]

93-EDO, rank-3 : [Ac1, Grdddd3] :: [81/80, 393216/390625]


94-EDO, rank-6 : [ReSpAcA0, ReAsSpGrA0, SpA0, DeSpSpA0, ReDeDeSbAcAcAA1] :: [729/728, 275/273, 225/224, 540/539, 1575/1573]

94-EDO, rank-5 : [SpA0, AsAsAsSpSpGrGrGrm0, AsGrGr1, AsSb1] :: [225/224, 1331/1323, 2200/2187, 385/384]

94-EDO, rank-4 : [SpA0, SpSpGrGrA0, SbSbSbSbAcM2] :: [225/224, 4000/3969, 1500625/1492992]

94-EDO, rank-3 : [GrGrGrAAA0, AcAcA0] :: [9765625/9565938, 32805/32768]


95-EDO, rank-6 : [AsSpGrd1, PrGr1, SbSbm2, PrDed2, ReSpSpGrA0] :: [176/175, 325/324, 245/243, 832/825, 640/637]

95-EDO, rank-5 : [AsSbGrd2, AsSpGrd1, SpSpGrGrA0, AsAsSpGrGrM0] :: [1232/1215, 176/175, 4000/3969, 3025/3024]

95-EDO, rank-4 : [SpSpGrGrA0, SbSbm2, SbGrddd3] :: [4000/3969, 245/243, 28672/28125]

95-EDO, rank-3 : [GrGrA1, GrGrGrddddd4] :: [20000/19683, 536870912/512578125]


96-EDO, rank-6 : [PrDeSpGr1, DeSpSpAcA0, AsSpGrd1, PrAsSbdd2, SpA0] :: [2080/2079, 2187/2156, 176/175, 1001/1000, 225/224]

96-EDO, rank-5 : [AsSpSpGrM0, DeDeAcAcA1, SpA0, AsAsSbSbAcdd2] :: [99/98, 243/242, 225/224, 160083/160000]

96-EDO, rank-4 : [SpA0, SpSpSpSpSpGrGrAA-1, SpSpSpM0] :: [225/224, 51200/50421, 8748/8575]

96-EDO, rank-3 : [AcAcAcdd2, AcAcAcA0] :: [1594323/1562500, 531441/524288]


97-EDO, rank-6 : [PrPrGrdd2, DeSbSbAcAcm2, DeA1, ReSbSbAcm2, AsSb1] :: [676/675, 441/440, 100/99, 196/195, 385/384]

97-EDO, rank-5 : [DeDeSbSbAcAcM2, AsSb1, DeA1, AsSbSbGrGrddd3] :: [245/242, 385/384, 100/99, 275968/273375]

97-EDO, rank-4 : [SpSpGrGrA0, SbSbGrGrdd3, SbA1] :: [4000/3969, 100352/98415, 875/864]

97-EDO, rank-3 : [GrGrAAA0, GrGrGrm2] :: [1953125/1889568, 1638400/1594323]


98-EDO, rank-6 : [ReSbSbAcm2, Ac1, AsSpGrd1, PrDeDeSbSbAcdd3, ReDeAcA1] :: [196/195, 81/80, 176/175, 15288/15125, 144/143]

98-EDO, rank-5 : [AsSpd1, Ac1, DeSpSpA0, DeDeSbAcdd3] :: [891/875, 81/80, 540/539, 387072/378125]

98-EDO, rank-4 : [Ac1, SpSpSpGrM0, SbSbddddd4] :: [81/80, 1728/1715, 401408/390625]

98-EDO, rank-3 : [Ac1, AcM357] :: [81/80, 1641562064176545792/1490116119384765625]


99-EDO, rank-6 : [PrPrSpGrd1, PrDeSpGr1, ReAsGr1, PrSbSbGrddd3, PrSpd1] :: [169/168, 2080/2079, 352/351, 10192/10125, 351/350]

99-EDO, rank-5 : [AsAsGrd1, AsSpGrd1, AsSpSpSpGrAA-1, AsGrGr1] :: [121/120, 176/175, 1375/1372, 2200/2187]

99-EDO, rank-4 : [SbSbSbGrdd3, SpGrGr1, SbGrA1] :: [10976/10935, 5120/5103, 4375/4374]

99-EDO, rank-3 : [GrGrGrA1, Grdddd3] :: [1600000/1594323, 393216/390625]

.






Fake National Dishes

I looked up a list of national dishes and grabbed a few that I hadn't heard of before. 


Now I'm going to guess what's in them.

Bulgaria: Shopska salad.

Finland: Karjalanpaisti.

Gabon: Poulet nyembwe.

Kuwait: Machboos laham.

Latvia: Sklandrausis.

Myanmar: Lahpet thoke.

Niger: Dambou.

Singapore: Hokkien mee.

South Africa: Bobotie.

Tajikistan: Osh palov.

Uruguay: Chivito.

Now I'm going to guess within them. If you want to play too, now's a good time to pause reading and come up with your own recipes.

Bulgaria: Shopska salad. ??? Sorrel, apples, black olives, fennel, anchovies, pickled garlic cloves

Finland: Karjalanpaisti. ??? Horse shoulder, rutabaga, carrot stew. Thickened with sourdough bread. Usually served with dandelion greens and lingonberry brandy.

Gabon: Poulet nyembwe. ??? Chicken and eggplant in a peanut sauce. Served with rice and wilted cassava leaves. Usually followed by a dessert of candied plantains.

Kuwait: Machboos laham. ??? A lamb-milk and spinach lhassi, spiced with cardamom and saffron.

Latvia: Sklandrausis. ??? Cookie something like hamentashen, but made with barley flour and filled with pureed flax seed.

Myanmar: Lahpet thoke. ??? Dry rice and lentils, pureed with water, cooked to reduce in a pan, sliced into cubes, fried in oil, garnished with chili oil, strips of fish jerky, and a local herb you've never heard of, don't pretend.

Niger: Dambou. ??? Goat and sorghum curry with lots of raw red onion, thickened with palm fruit puree. Can use scotch bonnet or habenero peppers.

Singapore: Hokkien mee. ??? Squid head, reishi mushrooms, bok choy, in a fermented garlic broth over wheat noodles. Garnished with soft boiled egg halves.

South Africa: Bobotie. ??? Braised impala or sprinbok with black pepper, brown sugar, coriander, ginger, cloves. Served with saffron rice and collards that are cooked with soumbala and vinegar.

Tajikistan: Osh palov. ??? A pan fried dumpling stuffed with potatoes, topped with a mix of ground pistachios and cream cheese.

Uruguay: Chivito. ??? A burger with slices of chayote, served with a molasses, vinegar, feijoa sauce for dipping.

Tuned Cords With Constrained Adjacent Harmony

Weird dissonant chords can be given musical functions through resolution; you follow the weird chord with a pretty one through tight voice leading, and the dissonances become setups for the consonances in the punch line. There's a baroque prescription of preparing your dissonances by consonant suspension from the previous chord and then resolving them downward by to consonances in the next chord, and this is a beautiful idiom that composers should become skilled in, but in non-baroque music, it can  be beautiful to just introduce some crazy bullshit and then follow it with whatever resolution your ear likes, not requiring preparation or downward resolution.

Anyway, most chords can be given musical function, so it doesn't make sense for a person to give a list of all the useable chords. Almost any chord should be usable. But it might be good to have a list of pretty chords - the ones you can resolve to, the ones that make sense of the weird ones, the punch lines.

I haven't trained my ear well enough to compose well in just intonation, and so I often look for theoretical shortcuts to finding good chords. I've done this in interval space a lot. I can't recall if I've written it up here, but that's a topic for another day. I've also looked for consonant chord identification heuristics in frequency space a little bit: see "Odd Harmonics Sound Great". In this post, I'm going to share a new heuristic for making pretty chords in frequency space, chords with moderately high prime limits.

Here's the trick: I start with a justly tuned harmonic seventh chord, which has the otonal representation [4, 5, 6, 7]. Now I make a new chord from that. Each voice in the chord has to move up or down by one of these steps: 

       [1/1, 3/2, 4/3, 5/3, 5/4, 6/5, 7/4, 7/6, 8/5, 8/7, 9/8, 10/9, 11/4, 11/8, 12/7, 12/8, 13/8]

There's nothing magical about that list, it's just one of the first things I tried and liked. It has super particular ratios, some reduced harmonics, and some octave complements of those, and also the unison. I call them the tridecimal fluid steps.

Next we check if the chord made this way has good adjacent harmony, i.e. if there is good harmony between each pair of adjacent voices. I used a similar but slightly different set of frequency ratios for the blessed set of good harmonies:

    [2/1, 3/2, 4/3, 5/3, 5/4, 6/5, 7/4, 7/6, 8/5, 8/7, 9/8, 10/9, 11/10, 12/7, 12/11, 13/12, 14/13, 15/14, 16/15]

This one has the octave instead of the unison, and more high-limit super particular ratios than the previous list. Again, nothing magic, it's just the first thing that I tried and liked. 

So we make make a new chord that flows from the harmonic seventh chord. And then we repeat, basing off the most recent new chord each time. 

Most chords that follow as fluid transitions won't also have good adjacent harmony. Sometimes I had to do like 8000 loops of (chord construction and checking) to get the next chord. And not every chord made in this way will sound amazing. But a large proportion of them sound good. I don't know why it works, but I'm glad that it does. It doesn't even seem to me that the chords get reliably worse as you go farther from the initial chord in the generative chain. You can definitely get chords with larger integers in their otonal representations, but the quality doesn't really degrade much, in my estimation.

I do confess that the chords sound worse at higher prime limits. So maybe I'll focus on figuring predictive principles for which 7-limit and higher-limit chords sound good next. But also the generative sequence weaves into and then back out of high-prime limit chords, so the sequences you get are still overall pretty good.

So here below are about 500 chords I found by this procedure. I haven't filtered out the bad sounding ones, because I haven't decided which ones sound bad for all 500 yet, and also because I don't want to present only the good ones: I'm showing you what my procedure makes, and there is work left to do to figure out why a few of these chords sound bad - there's is more aesthetic formalization that I want to do that should start with this data.

[1, 2, 3, 6], # 3-limit
[2, 3, 4, 6], # 3-limit
[3, 6, 12, 16], # 3-limit
[4, 6, 9, 12], # 3-limit
[4, 6, 9, 18], # 3-limit
[6, 8, 9, 12], # 3-limit
[6, 8, 9, 18], # 3-limit
[8, 9, 12, 16], # 3-limit
[8, 9, 18, 24], # 3-limit
[8, 16, 18, 27], # 3-limit
[8, 16, 24, 27], # 3-limit
[9, 12, 16, 32], # 3-limit
[16, 18, 27, 36], # 3-limit
[1, 2, 3, 5], # 5-limit
[2, 3, 5, 10], # 5-limit
[2, 4, 5, 10], # 5-limit
[3, 4, 6, 10], # 5-limit
[3, 5, 8, 10], # 5-limit
[3, 6, 10, 16], # 5-limit
[4, 5, 6, 8], # 5-limit
[4, 5, 6, 10], # 5-limit
[4, 5, 8, 9], # 5-limit
[4, 5, 8, 16], # 5-limit
[4, 5, 10, 15], # 5-limit
[4, 5, 10, 16], # 5-limit
[4, 5, 10, 20], # 5-limit
[5, 6, 9, 10], # 5-limit
[5, 6, 9, 12], # 5-limit
[5, 6, 9, 18], # 5-limit
[5, 6, 10, 15], # 5-limit
[5, 6, 12, 15], # 5-limit
[5, 8, 9, 10], # 5-limit
[5, 8, 10, 12], # 5-limit
[5, 8, 12, 15], # 5-limit
[5, 8, 12, 24], # 5-limit
[5, 8, 16, 32], # 5-limit
[5, 10, 16, 20], # 5-limit
[5, 10, 16, 24], # 5-limit
[6, 10, 15, 20], # 5-limit
[6, 12, 15, 20], # 5-limit
[9, 10, 12, 16], # 5-limit
[9, 10, 15, 20], # 5-limit
[9, 10, 16, 24], # 5-limit
[9, 10, 20, 32], # 5-limit
[9, 12, 20, 40], # 5-limit
[9, 15, 16, 18], # 5-limit
[9, 15, 16, 32], # 5-limit
[9, 15, 18, 20], # 5-limit
[9, 15, 20, 24], # 5-limit
[9, 15, 20, 32], # 5-limit
[9, 15, 30, 40], # 5-limit
[9, 18, 30, 40], # 5-limit
[10, 12, 15, 20], # 5-limit
[10, 12, 24, 27], # 5-limit
[10, 15, 16, 20], # 5-limit
[10, 15, 18, 24], # 5-limit
[10, 15, 18, 36], # 5-limit
[10, 15, 24, 30], # 5-limit
[10, 15, 24, 36], # 5-limit
[10, 15, 24, 40], # 5-limit
[10, 16, 24, 27], # 5-limit
[12, 15, 20, 30], # 5-limit
[12, 15, 20, 32], # 5-limit
[12, 15, 20, 40], # 5-limit
[12, 20, 25, 30], # 5-limit
[15, 16, 18, 24], # 5-limit
[15, 16, 20, 40], # 5-limit
[15, 16, 24, 30], # 5-limit
[15, 16, 24, 40], # 5-limit
[15, 16, 32, 64], # 5-limit
[15, 18, 24, 32], # 5-limit
[15, 18, 24, 40], # 5-limit
[15, 18, 30, 32], # 5-limit
[15, 18, 36, 40], # 5-limit
[15, 20, 24, 27], # 5-limit
[15, 20, 24, 30], # 5-limit
[15, 20, 24, 32], # 5-limit
[15, 20, 30, 32], # 5-limit
[15, 20, 30, 36], # 5-limit
[15, 20, 32, 40], # 5-limit
[15, 20, 32, 64], # 5-limit
[15, 24, 30, 50], # 5-limit
[15, 24, 32, 40], # 5-limit
[15, 24, 36, 40], # 5-limit
[15, 24, 40, 50], # 5-limit
[15, 24, 40, 64], # 5-limit
[15, 30, 32, 48], # 5-limit
[15, 30, 36, 40], # 5-limit
[15, 30, 40, 64], # 5-limit
[15, 30, 48, 64], # 5-limit
[16, 20, 25, 40], # 5-limit
[16, 20, 30, 45], # 5-limit
[16, 20, 40, 45], # 5-limit
[16, 24, 27, 30], # 5-limit
[18, 20, 30, 45], # 5-limit
[18, 27, 36, 40], # 5-limit
[18, 30, 40, 45], # 5-limit
[18, 30, 45, 50], # 5-limit
[18, 30, 50, 75], # 5-limit
[18, 36, 40, 45], # 5-limit
[20, 24, 27, 45], # 5-limit
[20, 24, 27, 54], # 5-limit
[20, 24, 40, 45], # 5-limit
[20, 30, 45, 54], # 5-limit
[20, 40, 45, 72], # 5-limit
[24, 40, 45, 75], # 5-limit
[25, 30, 32, 36], # 5-limit
[25, 30, 36, 60], # 5-limit
[25, 30, 36, 72], # 5-limit
[25, 30, 45, 54], # 5-limit
[25, 30, 48, 64], # 5-limit
[25, 30, 48, 72], # 5-limit
[25, 30, 48, 80], # 5-limit
[25, 30, 60, 64], # 5-limit
[25, 30, 60, 72], # 5-limit
[25, 40, 48, 64], # 5-limit
[25, 40, 64, 128], # 5-limit
[25, 40, 80, 128], # 5-limit
[25, 50, 80, 128], # 5-limit
[27, 30, 40, 60], # 5-limit
[27, 30, 45, 50], # 5-limit
[27, 36, 40, 60], # 5-limit
[27, 36, 40, 64], # 5-limit
[27, 45, 60, 64], # 5-limit
[27, 45, 72, 80], # 5-limit
[30, 40, 45, 72], # 5-limit
[30, 45, 60, 64], # 5-limit
[32, 40, 45, 90], # 5-limit
[32, 40, 50, 75], # 5-limit
[36, 45, 48, 80], # 5-limit
[36, 45, 60, 80], # 5-limit
[40, 45, 48, 64], # 5-limit
[40, 45, 54, 60], # 5-limit
[40, 45, 60, 64], # 5-limit
[40, 45, 90, 108], # 5-limit
[40, 64, 72, 81], # 5-limit
[45, 54, 60, 100], # 5-limit
[45, 72, 80, 128], # 5-limit
[45, 72, 96, 128], # 5-limit
[45, 72, 96, 160], # 5-limit
[50, 75, 90, 108], # 5-limit
[50, 75, 120, 128], # 5-limit
[60, 75, 120, 128], # 5-limit
[64, 72, 81, 135], # 5-limit
[64, 72, 120, 135], # 5-limit
[64, 80, 120, 135], # 5-limit
[75, 80, 160, 192], # 5-limit
[75, 90, 120, 128], # 5-limit
[75, 120, 160, 256], # 5-limit
[80, 90, 108, 135], # 5-limit
[80, 96, 108, 135], # 5-limit
[81, 90, 96, 128], # 5-limit
[81, 108, 144, 160], # 5-limit
[128, 160, 180, 225], # 5-limit
[135, 144, 240, 256], # 5-limit
[135, 144, 240, 320], # 5-limit
[135, 180, 240, 256], # 5-limit
[144, 180, 225, 250], # 5-limit
[225, 240, 480, 512], # 5-limit
[375, 600, 640, 768], # 5-limit
[2, 3, 6, 7], # 7-limit
[2, 4, 7, 12], # 7-limit
[3, 4, 7, 12], # 7-limit
[4, 6, 7, 14], # 7-limit
[4, 7, 8, 14], # 7-limit
[4, 7, 12, 15], # 7-limit
[4, 7, 14, 28], # 7-limit
[5, 8, 14, 16], # 7-limit
[6, 7, 8, 9], # 7-limit
[6, 7, 12, 14], # 7-limit
[6, 7, 12, 18], # 7-limit
[6, 7, 14, 28], # 7-limit
[6, 9, 12, 14], # 7-limit
[7, 8, 9, 12], # 7-limit
[7, 8, 9, 18], # 7-limit
[7, 8, 12, 16], # 7-limit
[7, 8, 14, 16], # 7-limit
[7, 8, 14, 28], # 7-limit
[7, 8, 16, 24], # 7-limit
[7, 12, 14, 24], # 7-limit
[7, 12, 15, 24], # 7-limit
[7, 12, 16, 20], # 7-limit
[7, 12, 16, 28], # 7-limit
[7, 12, 18, 21], # 7-limit
[7, 12, 20, 32], # 7-limit
[7, 14, 16, 18], # 7-limit
[7, 14, 24, 42], # 7-limit
[7, 14, 28, 48], # 7-limit
[8, 9, 12, 14], # 7-limit
[8, 10, 12, 21], # 7-limit
[8, 12, 21, 42], # 7-limit
[8, 14, 28, 35], # 7-limit
[9, 10, 16, 28], # 7-limit
[9, 10, 20, 35], # 7-limit
[9, 15, 20, 35], # 7-limit
[9, 18, 21, 28], # 7-limit
[10, 12, 14, 15], # 7-limit
[10, 12, 21, 36], # 7-limit
[10, 15, 24, 42], # 7-limit
[12, 14, 21, 24], # 7-limit
[12, 15, 16, 28], # 7-limit
[12, 15, 24, 28], # 7-limit
[12, 16, 18, 21], # 7-limit
[12, 21, 28, 32], # 7-limit
[14, 15, 18, 21], # 7-limit
[14, 15, 24, 36], # 7-limit
[14, 15, 25, 30], # 7-limit
[14, 21, 24, 27], # 7-limit
[14, 21, 24, 30], # 7-limit
[14, 21, 36, 40], # 7-limit
[14, 21, 36, 54], # 7-limit
[14, 21, 36, 60], # 7-limit
[15, 18, 21, 28], # 7-limit
[15, 18, 24, 28], # 7-limit
[15, 20, 24, 42], # 7-limit
[15, 24, 28, 42], # 7-limit
[15, 24, 28, 49], # 7-limit
[15, 30, 48, 56], # 7-limit
[16, 24, 28, 35], # 7-limit
[16, 24, 28, 49], # 7-limit
[16, 28, 35, 56], # 7-limit
[16, 28, 42, 49], # 7-limit
[16, 28, 56, 63], # 7-limit
[18, 20, 30, 35], # 7-limit
[18, 20, 35, 60], # 7-limit
[18, 24, 30, 35], # 7-limit
[18, 30, 35, 60], # 7-limit
[18, 36, 42, 49], # 7-limit
[20, 35, 40, 48], # 7-limit
[20, 35, 56, 70], # 7-limit
[21, 24, 28, 32], # 7-limit
[21, 24, 28, 56], # 7-limit
[21, 24, 32, 40], # 7-limit
[21, 24, 32, 56], # 7-limit
[21, 24, 32, 64], # 7-limit
[21, 24, 40, 48], # 7-limit
[21, 28, 42, 45], # 7-limit
[21, 28, 48, 56], # 7-limit
[21, 28, 48, 96], # 7-limit
[21, 35, 56, 60], # 7-limit
[21, 35, 56, 64], # 7-limit
[21, 35, 60, 75], # 7-limit
[21, 36, 60, 80], # 7-limit
[21, 42, 72, 80], # 7-limit
[24, 28, 35, 56], # 7-limit
[24, 30, 35, 60], # 7-limit
[25, 30, 35, 42], # 7-limit
[27, 30, 35, 70], # 7-limit
[27, 30, 60, 70], # 7-limit
[27, 36, 42, 56], # 7-limit
[27, 36, 63, 70], # 7-limit
[28, 35, 40, 64], # 7-limit
[28, 35, 40, 70], # 7-limit
[28, 35, 60, 70], # 7-limit
[28, 42, 45, 50], # 7-limit
[28, 42, 45, 60], # 7-limit
[30, 35, 40, 48], # 7-limit
[30, 35, 40, 64], # 7-limit
[32, 36, 63, 84], # 7-limit
[32, 56, 60, 105], # 7-limit
[32, 56, 63, 105], # 7-limit
[35, 40, 45, 72], # 7-limit
[35, 40, 60, 96], # 7-limit
[35, 40, 70, 84], # 7-limit
[35, 42, 48, 60], # 7-limit
[35, 42, 63, 108], # 7-limit
[35, 42, 70, 120], # 7-limit
[35, 42, 72, 96], # 7-limit
[35, 56, 60, 72], # 7-limit
[35, 56, 63, 108], # 7-limit
[35, 56, 64, 80], # 7-limit
[35, 56, 64, 96], # 7-limit
[35, 56, 64, 112], # 7-limit
[35, 56, 70, 120], # 7-limit
[35, 56, 84, 90], # 7-limit
[35, 56, 84, 96], # 7-limit
[35, 56, 96, 144], # 7-limit
[35, 70, 80, 96], # 7-limit
[35, 70, 112, 128], # 7-limit
[35, 70, 112, 192], # 7-limit
[36, 40, 70, 105], # 7-limit
[36, 42, 56, 63], # 7-limit
[36, 45, 60, 70], # 7-limit
[36, 48, 56, 63], # 7-limit
[40, 45, 48, 84], # 7-limit
[42, 45, 48, 56], # 7-limit
[42, 45, 60, 80], # 7-limit
[42, 49, 84, 90], # 7-limit
[42, 63, 70, 80], # 7-limit
[45, 48, 64, 112], # 7-limit
[45, 60, 64, 112], # 7-limit
[45, 72, 96, 112], # 7-limit
[48, 56, 60, 75], # 7-limit
[48, 56, 60, 105], # 7-limit
[48, 56, 63, 84], # 7-limit
[48, 80, 140, 175], # 7-limit
[48, 84, 140, 175], # 7-limit
[49, 56, 96, 192], # 7-limit
[49, 84, 144, 180], # 7-limit
[49, 84, 144, 240], # 7-limit
[54, 60, 100, 175], # 7-limit
[54, 63, 70, 140], # 7-limit
[54, 63, 84, 112], # 7-limit
[54, 63, 105, 140], # 7-limit
[56, 60, 105, 112], # 7-limit
[56, 60, 105, 210], # 7-limit
[56, 63, 105, 120], # 7-limit
[56, 63, 108, 126], # 7-limit
[56, 63, 108, 135], # 7-limit
[56, 70, 75, 120], # 7-limit
[56, 70, 120, 135], # 7-limit
[56, 96, 168, 189], # 7-limit
[60, 105, 112, 192], # 7-limit
[63, 70, 105, 120], # 7-limit
[63, 70, 105, 180], # 7-limit
[63, 70, 112, 192], # 7-limit
[63, 70, 120, 210], # 7-limit
[63, 70, 140, 240], # 7-limit
[63, 72, 80, 96], # 7-limit
[63, 72, 80, 100], # 7-limit
[63, 72, 80, 140], # 7-limit
[63, 72, 84, 140], # 7-limit
[63, 72, 96, 128], # 7-limit
[63, 84, 140, 150], # 7-limit
[63, 105, 120, 160], # 7-limit
[63, 108, 120, 128], # 7-limit
[63, 108, 120, 160], # 7-limit
[63, 126, 144, 160], # 7-limit
[64, 112, 120, 135], # 7-limit
[70, 84, 126, 135], # 7-limit
[70, 105, 126, 216], # 7-limit
[70, 105, 168, 180], # 7-limit
[72, 80, 90, 105], # 7-limit
[81, 90, 120, 140], # 7-limit
[84, 140, 150, 175], # 7-limit
[98, 105, 120, 210], # 7-limit
[100, 175, 210, 252], # 7-limit
[105, 112, 140, 150], # 7-limit
[105, 112, 140, 160], # 7-limit
[105, 112, 140, 240], # 7-limit
[105, 112, 192, 256], # 7-limit
[105, 112, 192, 288], # 7-limit
[105, 112, 224, 256], # 7-limit
[105, 120, 128, 224], # 7-limit
[105, 120, 140, 168], # 7-limit
[105, 120, 144, 160], # 7-limit
[105, 126, 140, 240], # 7-limit
[105, 126, 144, 160], # 7-limit
[105, 140, 160, 192], # 7-limit
[105, 168, 224, 384], # 7-limit
[105, 168, 280, 300], # 7-limit
[105, 180, 210, 224], # 7-limit
[108, 120, 150, 175], # 7-limit
[112, 120, 135, 225], # 7-limit
[112, 120, 140, 175], # 7-limit
[112, 126, 135, 144], # 7-limit
[112, 168, 180, 315], # 7-limit
[112, 168, 189, 216], # 7-limit
[120, 140, 168, 189], # 7-limit
[120, 210, 245, 294], # 7-limit
[128, 224, 252, 441], # 7-limit
[135, 216, 252, 280], # 7-limit
[147, 252, 280, 320], # 7-limit
[150, 175, 210, 224], # 7-limit
[160, 180, 315, 336], # 7-limit
[168, 280, 300, 525], # 7-limit
[175, 200, 240, 288], # 7-limit
[175, 210, 240, 256], # 7-limit
[175, 210, 360, 432], # 7-limit
[175, 280, 480, 576], # 7-limit
[175, 300, 360, 576], # 7-limit
[180, 210, 245, 294], # 7-limit
[189, 210, 240, 280], # 7-limit
[189, 210, 360, 400], # 7-limit
[189, 216, 288, 320], # 7-limit
[189, 252, 288, 320], # 7-limit
[189, 315, 350, 400], # 7-limit
[216, 240, 280, 315], # 7-limit
[224, 252, 315, 540], # 7-limit
[245, 280, 448, 768], # 7-limit
[245, 294, 336, 576], # 7-limit
[245, 420, 448, 768], # 7-limit
[245, 420, 672, 768], # 7-limit
[245, 420, 672, 1152], # 7-limit
[270, 315, 336, 560], # 7-limit
[270, 315, 420, 448], # 7-limit
[280, 315, 504, 540], # 7-limit
[300, 525, 560, 672], # 7-limit
[315, 336, 384, 512], # 7-limit
[315, 336, 560, 640], # 7-limit
[315, 360, 384, 640], # 7-limit
[315, 420, 448, 768], # 7-limit
[315, 504, 560, 600], # 7-limit
[315, 504, 560, 960], # 7-limit
[336, 560, 630, 675], # 7-limit
[343, 392, 420, 720], # 7-limit
[441, 504, 560, 640], # 7-limit
[441, 504, 560, 960], # 7-limit
[525, 560, 960, 1152], # 7-limit
[735, 784, 1344, 2304], # 7-limit
[784, 882, 945, 1080], # 7-limit
[11, 12, 16, 18], # 11-limit
[11, 12, 18, 24], # 11-limit
[11, 12, 20, 32], # 11-limit
[11, 12, 24, 27], # 11-limit
[11, 22, 33, 36], # 11-limit
[15, 18, 20, 22], # 11-limit
[18, 30, 33, 55], # 11-limit
[20, 25, 30, 33], # 11-limit
[20, 40, 44, 55], # 11-limit
[22, 33, 36, 48], # 11-limit
[24, 40, 44, 55], # 11-limit
[25, 40, 80, 88], # 11-limit
[25, 50, 55, 66], # 11-limit
[30, 33, 55, 110], # 11-limit
[33, 36, 63, 70], # 11-limit
[33, 36, 72, 80], # 11-limit
[33, 44, 88, 96], # 11-limit
[33, 55, 60, 70], # 11-limit
[33, 55, 60, 72], # 11-limit
[33, 55, 60, 90], # 11-limit
[33, 55, 66, 72], # 11-limit
[33, 55, 110, 120], # 11-limit
[35, 40, 60, 66], # 11-limit
[35, 60, 66, 110], # 11-limit
[44, 48, 56, 63], # 11-limit
[44, 48, 72, 81], # 11-limit
[44, 55, 60, 70], # 11-limit
[44, 66, 72, 81], # 11-limit
[45, 50, 60, 66], # 11-limit
[45, 60, 80, 88], # 11-limit
[50, 60, 66, 99], # 11-limit
[54, 90, 99, 110], # 11-limit
[55, 88, 96, 168], # 11-limit
[55, 88, 110, 120], # 11-limit
[66, 77, 84, 147], # 11-limit
[66, 99, 110, 120], # 11-limit
[66, 110, 120, 135], # 11-limit
[66, 110, 165, 180], # 11-limit
[77, 84, 96, 192], # 11-limit
[77, 84, 144, 216], # 11-limit
[77, 132, 231, 252], # 11-limit
[88, 110, 120, 135], # 11-limit
[88, 110, 165, 180], # 11-limit
[99, 108, 180, 200], # 11-limit
[99, 110, 120, 128], # 11-limit
[99, 110, 120, 192], # 11-limit
[99, 110, 165, 180], # 11-limit
[121, 242, 264, 288], # 11-limit
[125, 200, 220, 352], # 11-limit
[165, 176, 192, 384], # 11-limit
[165, 220, 240, 384], # 11-limit
[175, 300, 330, 396], # 11-limit
[200, 225, 270, 297], # 11-limit
[200, 240, 264, 297], # 11-limit
[220, 385, 616, 672], # 11-limit
[231, 252, 280, 480], # 11-limit
[231, 385, 440, 480], # 11-limit
[363, 605, 660, 720], # 11-limit
[440, 495, 540, 864], # 11-limit
[605, 968, 1056, 1152], # 11-limit
[847, 924, 1056, 1152], # 11-limit
[847, 968, 1056, 1152], # 11-limit
[1815, 1936, 2112, 2304], # 11-limit
[24, 26, 52, 91], # 13-limit
[60, 65, 78, 91], # 13-limit
[60, 65, 78, 130], # 13-limit
[65, 70, 105, 168], # 13-limit
[65, 70, 140, 168], # 13-limit
[108, 117, 130, 260], # 13-limit
[117, 126, 140, 168], # 13-limit
[117, 126, 140, 280], # 13-limit
[144, 156, 195, 260], # 13-limit
[144, 156, 273, 455], # 13-limit
[168, 182, 195, 260], # 13-limit
[180, 195, 260, 312], # 13-limit
[195, 210, 245, 294], # 13-limit
[240, 260, 455, 728], # 13-limit
[288, 312, 364, 637], # 13-limit
[324, 351, 468, 520], # 13-limit
[360, 390, 455, 728], # 13-limit
[420, 455, 520, 624], # 13-limit
[420, 455, 780, 936], # 13-limit
[1188, 1287, 1430, 1560], # 13-limit
[1456, 1638, 1755, 1890], # 13-limit

When composing music generatively in frequency space, I think a person could do a lot worse than to bless all of these chords as good, then see what they can produce for chord progressions using these chords, and then decide yay or nay for each little generated progression, instead of having to decide yay or nay for each chord. And then you can do whatever you like given your harmonic skeleton - a four voice chorale, a wandering chromatic solo over a waltz figure, some cocktail piano comping, whatever.

Glossolalia

:: Some glossolalic aphorisms:

 * Not every philiglossem will spull a thusk and a phloke.

* When you hear the ur-shwongs in the ooznobb, you'll know that anyone who has seen sphism can be xembistomed.

* It is said that the right yume stands with the left, but the true smalybi and froiscs have ordained a phlaerg of heuthim in the nalik of their thloons.

* Love is shown first by thaogniosphauds and second by acts of spleth.

* When the first fritsobeorr ran the schabe and saw smubb, it was for thamskirgs, whose hengst was dweothm, and for dwuable, who was sworsh since the start of fauf.

* Happiness is this: to take your floam first with squelf and then with gausp.

* An up-stallid arb, they say, is just a gnoasm presenting kauck without zuzemt.

* To become smeej and enter under the jestliath is pure prubbleshams.

* Your papth is a present from a strapet and a high phead.

* After a fraup, any small smeext can squorth the best smooj.

* A great spelp is a scheuzz, parting fermeth under itself.

* Loebrendth and grioduel go together like a larnsworf and a thurpt.

* One schaob is at least as diachtispaunct as the next. 

* One cannot wheemp out from all the other tumps on the moarm without snuelfing a ploat.

* Let priamps yup upon the thatoth.

* You can taken take quarypt after quarypt with side-chourms and theofs, and never learn to rhoosm a pluke.

* A skuroch besides a thalk is a strunth and a hammeled sphlea.

* One dringst, two gapnarshes.

-

:: A glossolalic poem:

<spooky whisper>
Proqupt in the bapuet and out ellyn aupisp,
Frythier few to lecsion, thank the owners benipst.
Plinep ovenneney, woliodys tyng ag.
On outle ayr kiggen, his naywatt, thered thues of nyb;
It zyrrops alout, shoud ol' woofout be plassed!
We've theyed every nashoul, frae when the routtient saceit -
E'ery broudy through Puxpuert's sourdus alid,
"Froduct becomes loursuvir", sarts onard thae besyg.
"And when they tyng under, sometimes the aggrycted abyg."
Noicherrim en wackspill, volseroo takesonest the dype,
And in the b'lo elorib,
Where sleeps the blire cohn,
Lilur follows lours, for hours anone!

Odd Harmonics Sounds Great

I've never found good principles for making tuned chords that use high-prime-limit frequency ratios, but I recently heard of a cool trick that seems to work.

A tuned chord can be written "otonally" as a sequence of integers, like [4, 5, 6]. Divide all the list elements through by the first list entry to get the frequency ratios, e.g. [4, 5, 6] -> (1/1, 5/4, 3/2). That's a major chord and it sounds great.

You can generate random sequences of integers all day to make chords, and some will be okay, some will be bad, some will be good. But it's not easy to listen to 500 random chords, pick your favorites, try to remember how they sounds based on a name that is a list of integers, and then try to use them to compose. It would be nicer if we had some principles for finding tuned chords that sounded good almost surely.

I heard about such a method from Kite Giedraitis; you just use sequences of odd integers. I find that things sound better if you also keep all your integers within an octave, i.e. the largest integer in your list is smaller than twice the first integer in your list.

These chords almost all sound good to my ear. Or maybe I was just in a very-open-to-weirdness headspace when I played with them last night. But I think it's the former. And that's very exciting, because you can get very high prime limit chords.

Here's a list of frequency ratios between 1/1 and 2/2 that show up in such chords, with numerators up to 31: [1/1, 5/3, 7/5, 9/5, 9/7, 11/7, 11/9, 13/7, 13/9, 13/11, 15/11, 15/13, 17/9, 17/11, 17/13, 17/15, 19/11, 19/13, 19/15, 19/17, 21/11, 21/13, 21/17, 21/19, 23/13, 23/15, 23/17, 23/19, 23/21, 25/13, 25/17, 25/19, 25/21, 25/23, 27/17, 27/19, 27/23, 27/25, 29/15, 29/17, 29/19, 29/21, 29/23, 29/25, 29/27, 31/17, 31/19, 31/21, 31/23, 31/25, 31/27, 31/29].

Here they are sorted by increasing size: [1/1, 31/29, 29/27, 27/25, 25/23, 23/21, 21/19, 19/17, 17/15, 31/27, 15/13, 29/25, 27/23, 13/11, 25/21, 23/19, 11/9, 21/17, 31/25, 29/23, 19/15, 9/7, 9/7, 17/13, 25/19, 31/23, 23/17, 15/11, 29/21, 7/5, 27/19, 13/9, 19/13, 25/17, 31/21, 29/19, 23/15, 17/11, 11/7, 27/17, 21/13, 31/19, 5/3, 5/3, 5/3, 29/17, 19/11, 23/13, 9/5, 9/5, 31/17, 13/7, 17/9, 21/11, 25/13, 29/15].

If you sounds those in order against 1/1, you'll notice some elements are very close to each other. Like right at the start,

(29/27) / (31/29) = 841/837 @ 8 cents

is a fairly small comma, and

(25/23) / (27/25) = 625/621 @ 11 cents

is similarly small.

They're not unnoticeable commas, but if you want very-high-prime-limit temperaments, then I've heard of worse methods to generate very-high-prime-limit tuned commas.

The Bohlen-Pierce scale also doesn't use any even harmonics, but it limits things to 7-limit frequency ratios. I think it's cool that this extends Bohlen-Pierce.

I have no idea why this works. But let's figure it out. 

I've forgotten almost everything I've written about otonality and utonality. I haven't written much. Time to redo it, and better.

Chords made of frequency ratios are called tuned chords. They differ from chords made of intervals. Those are intervallic chords, like [P1, M3, P5]. We'll be looking at tuned chords in this post.

Here are the just frequency ratios for a 5-limit major chord: [1/1, 5/4, 3/2]. We can multiply through by the least common multiple of the denominators to get a sequence of integers: [4, 5, 6]. This is the otonal representation. To get back to the ratios, divide everything through by the first element of the otonal list.

We can find "inversions" of tuned chords, by which I  mean cyclic permutations modulo the octave. Pop the first element off of the list, multiply by 2, and stick it at the end of the list. Divide all the list elements by the new first element. Multiply through by the least common multiple of the denominators if you want that chordal inversion to be represented otonally.

The otonal major chord [4, 5, 6] has cyclic inversions of [5, 6, 8] and [3, 4, 5].

We can also find the elementwise inverse of chords. For each element {e} in a list, take {1/e} for the new element in that position. Sort by size and multiply through by the least common multiple of denominators. We'll call this the utonal inverse of the chord. Optionally you can divide through by the first element if you want frequency ratios. Cyclic inversions versus utonal inverses.

Here are the three inversions of the otonal major chord and the utonal inverse for each after a double colon:

    [4, 5, 6] :: [10, 12, 15]

    [5, 6, 8] :: [15, 20, 24]

    [3, 4, 5] :: [12, 15, 20]

The utonal inverses are also inversions of each other, i.e. the set is closed under cyclic permutation modulo the octave. They happen to also be justly-tuned minor chords. 

What if we space things out more, beyond the octave? If we remove factors of two, i.e. raise and lower things by octaves until the factors of two are gone from the utonal integer list, then the major chord has only one all-odd voicing: [1, 3, 5] and its utonal inverse has only one all-odd voicing, [3, 5, 15].

And.... all-odd voicings usually sound good, at least within an octave, not that these necessarily are within an octave. So can we take a bad sounding chord and make it sound better by spacing it out in an all-odd voicing? Are there chords that sound better when compressed into an octave than when expanded to the all-odd voicing?

I think a normally voiced harmonic seventh chord, [4, 5, 6, 7], sounds way better than its all-odd voicing, [1, 3, 5, 7]. So there's one.

...

Defective Portuguese

In Portuguese, a few verbs are missing some conjugations. They're called "defective verbs". The standard example is "colorir", to color, which has no first person singular forms. You might say, "Obviously the simple present tense form should just be coloro?" and your language teacher will say that word is forbidden.

Wiktionary has a list of which verbs are defective in continental versus Brazilian, and there's... no overlap. So basically all the verbs have obvious forms, but different countries have different taboos?

To be fair, I have heard that "colorir" is defective in both Continental and Brazilian Portuguese, even though it isn't on both lists. But it's still pretty suspicious pair of lists. And it's pretty weird to have defective verbs at all, regardless of whether they're agreed on.