Generator preimage: Difference between revisions

Wikispaces>genewardsmith
**Imported revision 238732623 - Original comment: **
Wikispaces>genewardsmith
**Imported revision 238733463 - Original comment: **
Line 1: Line 1:
<h2>IMPORTED REVISION FROM WIKISPACES</h2>
<h2>IMPORTED REVISION FROM WIKISPACES</h2>
This is an imported revision from Wikispaces. The revision metadata is included below for reference:<br>
This is an imported revision from Wikispaces. The revision metadata is included below for reference:<br>
: This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2011-06-25 16:48:56 UTC</tt>.<br>
: This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2011-06-25 17:00:18 UTC</tt>.<br>
: The original revision id was <tt>238732623</tt>.<br>
: The original revision id was <tt>238733463</tt>.<br>
: The revision comment was: <tt></tt><br>
: The revision comment was: <tt></tt><br>
The revision contents are below, presented both in the original Wikispaces Wikitext format, and in HTML exactly as Wikispaces rendered it.<br>
The revision contents are below, presented both in the original Wikispaces Wikitext format, and in HTML exactly as Wikispaces rendered it.<br>
Line 31: Line 31:
We can find transveral generators for V by the following procedure:
We can find transveral generators for V by the following procedure:


* Take the transpose of the pseudoinverse of V, call that U
* Take the transpose of the [[http://xenharmonic.wikispaces.com/Tenney-Euclidean+Tuning#The pseudoinverse|pseudoinverse]] of V, call that U
* Find a basis for the commas of V
* Find a basis for the commas of V
* For each row U[i] of U, clear denominators and append the monzos of the comma basis for V
* For each row U[i] of U, clear denominators and append the monzos of the comma basis for V
* Saturate the result to a list of monzos, call that S
* [[http://xenharmonic.wikispaces.com/Saturation|Saturate]] the result to a list of monzos, call that S
* Apply the ith val V[i] (dot product) to each element of S
* Apply the ith val V[i] (dot product) to each element of S
* Insert V[i].S[j] in front of the elements of S[j] as the first element, obtaining the jth element T[j] of a modified list T
* Insert V[i].S[j] in front of the elements of S[j] as the first element, obtaining the jth element T[j] of a modified list T
* Hermite reduce the modified list T, take the first row, and remove the first element (which should be a 1.)
* Hermite reduce the modified list T, take the first row, and remove the first element (which should be a 1.)
* Consider the rest to be a monzo, which may be converted to a rational number if you prefer
* Consider the rest to be a monzo, which may be converted to a rational number if you prefer
* This is a corresponding transveral generator to the ith val V[i] of V; it may be reduced to an equivalent generator of minimal Tenney height by multiplying by the commas of V
* This is a corresponding transveral generator to the ith val V[i] of V; it may be reduced to an equivalent generator of minimal [[Tenney height]] by multiplying by the commas of V
</pre></div>
</pre></div>
<h4>Original HTML content:</h4>
<h4>Original HTML content:</h4>
Line 67: Line 67:
We can find transveral generators for V by the following procedure:&lt;br /&gt;
We can find transveral generators for V by the following procedure:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Take the transpose of the pseudoinverse of V, call that U&lt;/li&gt;&lt;li&gt;Find a basis for the commas of V&lt;/li&gt;&lt;li&gt;For each row U[i] of U, clear denominators and append the monzos of the comma basis for V&lt;/li&gt;&lt;li&gt;Saturate the result to a list of monzos, call that S&lt;/li&gt;&lt;li&gt;Apply the ith val V[i] (dot product) to each element of S&lt;/li&gt;&lt;li&gt;Insert V[i].S[j] in front of the elements of S[j] as the first element, obtaining the jth element T[j] of a modified list T&lt;/li&gt;&lt;li&gt;Hermite reduce the modified list T, take the first row, and remove the first element (which should be a 1.)&lt;/li&gt;&lt;li&gt;Consider the rest to be a monzo, which may be converted to a rational number if you prefer&lt;/li&gt;&lt;li&gt;This is a corresponding transveral generator to the ith val V[i] of V; it may be reduced to an equivalent generator of minimal Tenney height by multiplying by the commas of V&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</pre></div>
&lt;ul&gt;&lt;li&gt;Take the transpose of the [[&lt;!-- ws:start:WikiTextUrlRule:58:http://xenharmonic.wikispaces.com/Tenney-Euclidean+Tuning#The --&gt;&lt;a href="http://xenharmonic.wikispaces.com/Tenney-Euclidean+Tuning#The"&gt;http://xenharmonic.wikispaces.com/Tenney-Euclidean+Tuning#The&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:58 --&gt; pseudoinverse|pseudoinverse]] of V, call that U&lt;/li&gt;&lt;li&gt;Find a basis for the commas of V&lt;/li&gt;&lt;li&gt;For each row U[i] of U, clear denominators and append the monzos of the comma basis for V&lt;/li&gt;&lt;li&gt;&lt;a href="http://xenharmonic.wikispaces.com/Saturation"&gt;Saturate&lt;/a&gt; the result to a list of monzos, call that S&lt;/li&gt;&lt;li&gt;Apply the ith val V[i] (dot product) to each element of S&lt;/li&gt;&lt;li&gt;Insert V[i].S[j] in front of the elements of S[j] as the first element, obtaining the jth element T[j] of a modified list T&lt;/li&gt;&lt;li&gt;Hermite reduce the modified list T, take the first row, and remove the first element (which should be a 1.)&lt;/li&gt;&lt;li&gt;Consider the rest to be a monzo, which may be converted to a rational number if you prefer&lt;/li&gt;&lt;li&gt;This is a corresponding transveral generator to the ith val V[i] of V; it may be reduced to an equivalent generator of minimal &lt;a class="wiki_link" href="/Tenney%20height"&gt;Tenney height&lt;/a&gt; by multiplying by the commas of V&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</pre></div>