User:Arseniiv/Three-gap theorem

Revision as of 18:08, 15 April 2026 by Arseniiv (talk | contribs) (Created page with "This is my attempt at proving the wikipedia:three-gap theorem with added MOS-related extended facts all with a single construction, so to speak. Right now (2026-04-15) I'm looking at the interval matrix, reordered to reflect the generator chain. == Preliminaries == TODO: continued fractions are bound to get used, write on their matrix composition representation using <math>S = \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}</math> and <math>A = \begin{bmatrix} 1 & 1...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This is my attempt at proving the three-gap theorem with added MOS-related extended facts all with a single construction, so to speak.

Right now (2026-04-15) I'm looking at the interval matrix, reordered to reflect the generator chain.

Preliminaries

TODO: continued fractions are bound to get used, write on their matrix composition representation using [math]\displaystyle{ S = \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix} }[/math] and [math]\displaystyle{ A = \begin{bmatrix} 1 & 1 \\ 0 & 1 \end{bmatrix} }[/math].

Setting

Here we as usual for this topic work in logarithmic interval domain. Period is just 1, and generator size is g ∈ (0; 1). It's stacked N ≥ 1 times to get N + 1 notes [math]\displaystyle{ a_m = \{ m g \}, m\in 0..N }[/math] where {x} denotes the fractional part of x (equivalently, x mod 1), though it may be useful to replace 0 with 1 in some cases (hopefully not). Note that [math]\displaystyle{ a_m }[/math] go in generator chain order, not in the circular order of their pitch classes.

Denote an interval from [math]\displaystyle{ a_m }[/math] upwards to [math]\displaystyle{ a_n }[/math] as [math]\displaystyle{ (m, n) }[/math]. Let a genchain interval matrix [math]\displaystyle{ I_{m,n} = \{ a_n - a_m \} = \{ (n - m) g \} }[/math] contain sizes of each interval.

Example for 12edo diatonic and N = 3: [math]\displaystyle{ \frac1{12} \begin{bmatrix} 0 & 7 & 2 & 9 \\ 5 & 0 & 7 & 2 \\ 10 & 5 & 0 & 7 \\ 3 & 10 & 5 & 0 \end{bmatrix} }[/math].

This kind of matrix looks like an overkill because all its values repeat in diagonals parallel to the main diagonal. It starts to look less so when we mark current scale steps (select a single element in each row and column, as pitches and steps alternate). Other trivial things to note for now are:

matrices for smaller scale sizes are submatrices aligned at the top right; likewise, after stacking another generator up, we just extend the matrix with a row and a column; each interval size is encountered once in the last row and column

A bit less trivial is that "projecting" an element onto last row and column splits it (modulo 1): [math]\displaystyle{ \{ I_{m,N} + I_{N,n} \} = \{ (N - m + n - N) g \} = \{ (n - m) g \} = I_{m,n} }[/math]. The sum [math]\displaystyle{ I_{m,N} + I_{N,n} }[/math] is always 0 or 1 larger than [math]\displaystyle{ I_{m,n} }[/math], in the former case really splitting the interval.

CLAIM 1: In case [math]\displaystyle{ (m, N-1) }[/math] and [math]\displaystyle{ (N-1, n) }[/math] are both steps of an N-note scale, then one of them, and only one of them gets split into two smaller intervals (steps of the (N+1)-note scale), unless 0 gets generated (that is, [math]\displaystyle{ \{ N g \} = 0 }[/math]).
(To be proven later.)

This claim together with the fact that for N = 1 steps are always (0,1) and (1,0), lets us mark steps of any such scale (and discharge split ones): one step always copies diagonally down-right and another is replaced with their difference. One of the steps is always on the right column and another is always on the bottom row, not coinciding in a 0. (That's obvious for another reason: there should be a step in each row and column because the last generated pitch is incident to two steps.)

CLAIM 2: Steps of a MOS scale occupy the same wrapped diagonal, that is, for some constant C, [math]\displaystyle{ (m, n) }[/math] is a step if and only if [math]\displaystyle{ C = (n-m) \bmod (N+1) }[/math].
(To be proven later from {#LL + #ss} = 0.)