Recursive structure of MOS scales: Difference between revisions

Ganaram inukshuk (talk | contribs)
Finding a generator: Fixed an error in one of the algorithms; replace some pseudocode with python code; will revisit for further rewriting (to newer, personal standards)
Inthar (talk | contribs)
Line 409: Line 409:
Here, pᵢ + qᵢ = k and p₂ - p₁ ≥ 2.
Here, pᵢ + qᵢ = k and p₂ - p₁ ≥ 2.


Let K = p₁(r + 1) + q₁r + k. Then we have at least 3 different sizes for (K+1)-steps:
Let K = p₁(r + 1) + q₁r + k. Consider the following sizes for (K+1)-steps:
# w₁(L, s) = the word sW₁(L<sup>r+1</sup>s, L<sup>r</sup>s) [W₁ interpreted as a subword of the original mos], with (k + 1) s's
# w₁(L, s) = the word sW₁(L<sup>r+1</sup>s, L<sup>r</sup>s) [W₁ interpreted as a subword of the original mos], with (k + 1) s's
# w₂(L, s) = the first K+1 letters of W₂(L<sup>r+1</sup>s, L<sup>r</sup>s)
# w₂(L, s) = the first K+1 letters of W₂(L<sup>r+1</sup>s, L<sup>r</sup>s)
Line 429: Line 429:
  w3:        <L ... sXL ... sXL ... sXL ... s>
  w3:        <L ... sXL ... sXL ... sXL ... s>


Truncate the strings as follows:
Truncate the strings as follows, to get three distinct K-steps in w:
  w1':  L ... [lop off the s at the beginning of w1, so we have k s's]
  w1':  L ... [lop off the s at the beginning of w1, so we have k s's]
  w2': <L ... sXL ... sXL ... sXL ... ] [lop off one s at the end of w2, so one fewer s than w3]
  w2': <L ... sXL ... sXL ... sXL ... ] [lop off one s at the end of w2, so this has one fewer s than w3']
  w3':        <L ... sXL ... sXL ... sXL ... s> [lop off an L at the beginning of w3, result has at most k-1 s's]
  w3':        <L ... sXL ... sXL ... sXL ... s> [lop off an L at the beginning of w3, result has at most k-1 s's]
so this contradicts our original scale being a mos.
so this contradicts our original scale being a mos.