Recursive structure of MOS scales: Difference between revisions
No edit summary |
No edit summary |
||
Line 37: | Line 37: | ||
==== Stepwise version ==== | ==== Stepwise version ==== | ||
This is the general algorithm for determining whether a scale is distributionally even (that is, it is a valid MOS). This version of the algorithm that uses the production rules in reverse: L -> Ls and s ->s; and L -> sL and s -> L. It is required to perform this on the string that represents the scale in its brightest mode. This algorithm is recursive. | This is the general algorithm for determining whether a binary scale is distributionally even (that is, it is a valid MOS). This version of the algorithm that uses the production rules in reverse: L -> Ls and s ->s; and L -> sL and s -> L. It is required to perform this on the string that represents the scale in its brightest mode. This algorithm is recursive. | ||
# Count how many L's and s's there are within the string. Let x be the number of L's and y be the number of s's. One of two situations will happen: | # Count how many L's and s's there are within the string. Let x be the number of L's and y be the number of s's. One of two situations will happen: | ||
Line 49: | Line 49: | ||
==== Chunking version ==== | ==== Chunking version ==== | ||
This is the general algorithm for determining whether a scale is distributionally even (that is, it is a valid MOS). This version of the algorithm reduces entire chunks into L's and s's based on the size of the chunks. It is recommended, but not required, to perform this on the string representing the scale in either its brightest or darkest mode. This algorithm is recursive. | This is the general algorithm for determining whether a binary scale is distributionally even (that is, it is a valid MOS). This version of the algorithm reduces entire chunks into L's and s's based on the size of the chunks. It is recommended, but not required, to perform this on the string representing the scale in either its brightest or darkest mode. This algorithm is recursive. | ||
# Count how many L's and s's there are within the string. Let x be the number of L's and y be the number of s's. One of two situations will happen: | # Count how many L's and s's there are within the string. Let x be the number of L's and y be the number of s's. One of two situations will happen: |