Generator form manipulation: Difference between revisions

Cmloegcmluin (talk | contribs)
the name "Frobenius" should not be used; T2 is a better name for this tuning
Cmloegcmluin (talk | contribs)
standardizing in our articles to bold italic for maps
Line 25: Line 25:
=== First trick: change one generator by the size of another generator ===
=== First trick: change one generator by the size of another generator ===


The most basic trick is this: for a rank <math>r</math> temperament whose mapping has rows <math>\textbf{r}_1, \textbf{r}_2 ... \textbf{r}_r</math>, and corresponding generators with cents <math>g_1, g_2 ... g_r</math>, if we want to increase <math>g_a</math> by <math>g_b</math>, then replace <math>\textbf{r}_b</math> with <math>\textbf{r}_b' = \textbf{r}_b - \textbf{r}_a</math>.
The most basic trick is this: for a rank <math>r</math> temperament whose mapping has rows <math>𝒓_1, 𝒓_2 ... 𝒓_r</math>, and corresponding generators with cents <math>g_1, g_2 ... g_r</math>, if we want to increase <math>g_a</math> by <math>g_b</math>, then replace <math>𝒓_b</math> with <math>𝒓_b' = 𝒓_b - 𝒓_a</math>.


Let's demonstrate this trick on the most recent example we looked at: meantone as generated by an octave and a tritave. If we begin with meantone in canonical form, {{ket|{{map|1 1 0}} {{map|0 1 4}}}}, where the generators are an octave and a perfect fifth, then we know we need to increase the second generator by the size of the first generator, because a tritave is equal to a perfect fifth plus an octave. So in terms of our variables, we must change <math>g_2</math> so that it's <math>g_2 + g_1</math>. According to our trick, then, we must replace <math>\textbf{r}_1</math> with <math>\textbf{r}_1' = \textbf{r}_1 - \textbf{r}_2</math>. And so <math>\textbf{r}_1'</math> is found like this:
Let's demonstrate this trick on the most recent example we looked at: meantone as generated by an octave and a tritave. If we begin with meantone in canonical form, {{ket|{{map|1 1 0}} {{map|0 1 4}}}}, where the generators are an octave and a perfect fifth, then we know we need to increase the second generator by the size of the first generator, because a tritave is equal to a perfect fifth plus an octave. So in terms of our variables, we must change <math>g_2</math> so that it's <math>g_2 + g_1</math>. According to our trick, then, we must replace <math>𝒓_1</math> with <math>𝒓_1' = 𝒓_1 - 𝒓_2</math>. And so <math>𝒓_1'</math> is found like this:


<math>
<math>
\begin{array} {r}
\begin{array} {r}
\textbf{r}_1 \\
𝒓_1 \\
-\textbf{r}_2 \\
-𝒓_2 \\
\hline
\hline
\textbf{r}_1'
𝒓_1'
\end{array}
\end{array}


Line 47: Line 47:
</math>
</math>


And then simply replace <math>\textbf{r}_1</math> = {{map|1 1 0}} with <math>\textbf{r}_1'</math> = {{map|1 0 -4}} in the mapping, changing {{ket|{{map|1 1 0}} {{map|0 1 4}}}} to {{ket|{{map|1 0 -4}} {{map|0 1 4}}}}.
And then simply replace <math>𝒓_1</math> = {{map|1 1 0}} with <math>𝒓_1'</math> = {{map|1 0 -4}} in the mapping, changing {{ket|{{map|1 1 0}} {{map|0 1 4}}}} to {{ket|{{map|1 0 -4}} {{map|0 1 4}}}}.


It may be counterintuitive at first that in order to change the size of a generator we must make a change to a mapping row ''other than the one which corresponds to that generator'' (in this example, we changed the size of of the ''second'' generator by changing the ''first'' row). But there is a way to train our intuition on this effect. Think of it like transferring jobs. Remember that in order to know the size in cents of a generator, we cannot look exclusively at that generator's mapping row out of context; we need to know the entire mapping, because the mapping rows all work together to determine how the temperament works. So we can think of every mapping row like a workforce that outsources some of its work to the other rows; they're an interconnected system of workforces. And so when we subtract one row from another, we're in effect saying that the row being subtracted from is going to do less of the work of the row being subtracted. So when we subtract <math>\textbf{r}_2</math> from <math>\textbf{r}_1</math>, what we're saying is that whatever work the first generator was doing for the second generator, it will no longer do that work anymore, so the second generator will need to take care of that work itself; and that's why <math>g_2</math> becomes the size of <math>g_2</math> plus <math>g_1</math>.
It may be counterintuitive at first that in order to change the size of a generator we must make a change to a mapping row ''other than the one which corresponds to that generator'' (in this example, we changed the size of of the ''second'' generator by changing the ''first'' row). But there is a way to train our intuition on this effect. Think of it like transferring jobs. Remember that in order to know the size in cents of a generator, we cannot look exclusively at that generator's mapping row out of context; we need to know the entire mapping, because the mapping rows all work together to determine how the temperament works. So we can think of every mapping row like a workforce that outsources some of its work to the other rows; they're an interconnected system of workforces. And so when we subtract one row from another, we're in effect saying that the row being subtracted from is going to do less of the work of the row being subtracted. So when we subtract <math>𝒓_2</math> from <math>𝒓_1</math>, what we're saying is that whatever work the first generator was doing for the second generator, it will no longer do that work anymore, so the second generator will need to take care of that work itself; and that's why <math>g_2</math> becomes the size of <math>g_2</math> plus <math>g_1</math>.


Conversely, if we want to ''decrease'' <math>g_a</math> by <math>g_b</math>, then we replace <math>\textbf{r}_b</math> with <math>\textbf{r}_b' = \textbf{r}_b</math> ''plus'' <math>\textbf{r}_a</math>.
Conversely, if we want to ''decrease'' <math>g_a</math> by <math>g_b</math>, then we replace <math>𝒓_b</math> with <math>𝒓_b' = 𝒓_b</math> ''plus'' <math>𝒓_a</math>.


=== Second trick: negating a generator ===
=== Second trick: negating a generator ===
Line 65: Line 65:
We can't accomplish this using the one trick we've already learned. How could we? That first trick relies on the interactions of ''two different'' generators, whereas negating a generator only involves one generator: itself. So here's where our second generator size manipulation trick comes in: negating a generator.
We can't accomplish this using the one trick we've already learned. How could we? That first trick relies on the interactions of ''two different'' generators, whereas negating a generator only involves one generator: itself. So here's where our second generator size manipulation trick comes in: negating a generator.


Fortunately this second trick is very easy. All we need to do in order to negate <math>g_a</math> (the generator size, e.g. in cents) is to negate each of the terms of the mapping row <math>\textbf{r}_a</math>. So, we would simply change <math>\textbf{r}_2</math> = </span>{{map|0 1 4}} to <math>\textbf{r}_2'</math> = {{map|0 -1 -4}}, thereby changing the mapping from {{ket|{{map|1 1 0}} {{map|0 1 4}}}} to {{ket|{{map|1 1 0}} {{map|0 -1 -4}}}}<ref>To extend the workplace analogy (if we really like, though I doubt it's helpful here), we could say that we changed <math>\textbf{r}_2</math>'s jobs so that they now do the exact opposite of what they used to do, so if we want them to accomplish the same thing as they used to, we have to have them undo their work.</ref>.  
Fortunately this second trick is very easy. All we need to do in order to negate <math>g_a</math> (the generator size, e.g. in cents) is to negate each of the terms of the mapping row <math>𝒓_a</math>. So, we would simply change <math>𝒓_2</math> = </span>{{map|0 1 4}} to <math>𝒓_2'</math> = {{map|0 -1 -4}}, thereby changing the mapping from {{ket|{{map|1 1 0}} {{map|0 1 4}}}} to {{ket|{{map|1 1 0}} {{map|0 -1 -4}}}}<ref>To extend the workplace analogy (if we really like, though I doubt it's helpful here), we could say that we changed <math>𝒓_2</math>'s jobs so that they now do the exact opposite of what they used to do, so if we want them to accomplish the same thing as they used to, we have to have them undo their work.</ref>.  


So at this point, the generators are an octave and a negative perfect fifth. It's time for our second step.
So at this point, the generators are an octave and a negative perfect fifth. It's time for our second step.


The second step of achieving a generator with the size of a perfect fourth should be familiar: we need to increase our negative perfect fifth to a perfect fourth, and so we need to add one octave, and therefore we need to change <math>\textbf{r}_1</math> to be <math>\textbf{r}_1 - v_2</math>, so we end up with:
The second step of achieving a generator with the size of a perfect fourth should be familiar: we need to increase our negative perfect fifth to a perfect fourth, and so we need to add one octave, and therefore we need to change <math>𝒓_1</math> to be <math>𝒓_1 - v_2</math>, so we end up with:


<math>
<math>
\begin{array} {r}
\begin{array} {r}
\textbf{r}_1 \\
𝒓_1 \\
-\textbf{r}_2 \\
-𝒓_2 \\
\hline
\hline
\textbf{r}_1'
𝒓_1'
\end{array}
\end{array}


Line 95: Line 95:
[[File:Generator step by step manipulation.png|thumb|600px|A demonstration of how one might transform the size of a generator of a rank-3 temperament.]]
[[File:Generator step by step manipulation.png|thumb|600px|A demonstration of how one might transform the size of a generator of a rank-3 temperament.]]


These two tricks should enable us to attain any valid generator sizes we may wish for a given temperament. And these tricks work for any rank<ref>past 1, anyway; of course, rank 1 temperaments are somewhat inflexible in their single generator's size.</ref>, not only rank 2 like we've looked at thus far with 5-limit meantone examples. To be clear, for a rank <math>r</math> temperament, adding or subtracting <math>\textbf{r}_a</math> from another generator will only affect the size of <math>g_a</math>.  
These two tricks should enable us to attain any valid generator sizes we may wish for a given temperament. And these tricks work for any rank<ref>past 1, anyway; of course, rank 1 temperaments are somewhat inflexible in their single generator's size.</ref>, not only rank 2 like we've looked at thus far with 5-limit meantone examples. To be clear, for a rank <math>r</math> temperament, adding or subtracting <math>𝒓_a</math> from another generator will only affect the size of <math>g_a</math>.  


For example, [[Marvel_family#Marvel|7-limit marvel]]'s canonical form is {{ket|{{map|1 0 0 -5}} {{map|0 1 0 2}} {{map|0 0 1 2}}}}, with generators of an octave, tritave, and [[pentave]] (5/1), in that order. We can change that second generator from a tritave to a perfect fifth by decreasing <math>g_2</math> by <math>g_1</math>, which we know by the first trick means we add <math>\textbf{r}_2</math> to <math>\textbf{r}_1</math>, producing {{ket|{{map|1 1 0 -3}} {{map|0 1 0 2}} {{map|0 0 1 2}}}}. Helpfully, this trick has no effect on any other generators that were not involved, which in this case is just the size of the [[pentave]], which was the one remaining generator out of the three in this temperament.
For example, [[Marvel_family#Marvel|7-limit marvel]]'s canonical form is {{ket|{{map|1 0 0 -5}} {{map|0 1 0 2}} {{map|0 0 1 2}}}}, with generators of an octave, tritave, and [[pentave]] (5/1), in that order. We can change that second generator from a tritave to a perfect fifth by decreasing <math>g_2</math> by <math>g_1</math>, which we know by the first trick means we add <math>𝒓_2</math> to <math>𝒓_1</math>, producing {{ket|{{map|1 1 0 -3}} {{map|0 1 0 2}} {{map|0 0 1 2}}}}. Helpfully, this trick has no effect on any other generators that were not involved, which in this case is just the size of the [[pentave]], which was the one remaining generator out of the three in this temperament.


The fact that these tricks have isolated effects on the generator sizes like this makes it straightforward to compose sequences of them, applied one after the other, to attain an incredible variety of valid generator sizes, as you can see in the diagram to the right.
The fact that these tricks have isolated effects on the generator sizes like this makes it straightforward to compose sequences of them, applied one after the other, to attain an incredible variety of valid generator sizes, as you can see in the diagram to the right.
Line 120: Line 120:
!current <math>p</math> vs. <math>g</math>
!current <math>p</math> vs. <math>g</math>
!desired new <math>g</math>
!desired new <math>g</math>
!required <math>\textbf{r}_1</math> change
!required <math>𝒓_1</math> change
!required <math>\textbf{r}_2</math> change
!required <math>𝒓_2</math> change
!repeat?
!repeat?
|-
|-
Line 129: Line 129:
|g < −p
|g < −p
|g + p
|g + p
|\textbf{r}₁ 2\textbf{r}₂
|𝒓₁ 2𝒓₂
|
|
|yes
|yes
Line 138: Line 138:
|−p <= g < −p/2
|−p <= g < −p/2
|p + g
|p + g
|\textbf{r}₁ \textbf{r}₂
|𝒓₁ 𝒓₂
|
|
|no, you're done
|no, you're done
Line 148: Line 148:
|−g
|−g
|
|
|−\textbf{r}₂
|−𝒓₂
|no, you're done
|no, you're done
|-
|-
Line 165: Line 165:
|p/2 < g <= p
|p/2 < g <= p
|p - g
|p - g
|\textbf{r}₁ + \textbf{r}₂
|𝒓₁ + 𝒓₂
|−\textbf{r}₂
|−𝒓₂
|no, you're done
|no, you're done
|-
|-
Line 174: Line 174:
|p < g
|p < g
|g - p
|g - p
|\textbf{r}₁ + 2\textbf{r}₂
|𝒓₁ + 2𝒓₂
|−\textbf{r}₂
|−𝒓₂
|yes
|yes
|}
|}