Dual list: Difference between revisions
Wikispaces>genewardsmith **Imported revision 535838154 - Original comment: ** |
Wikispaces>genewardsmith **Imported revision 535853880 - 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>2014-12-23 | : This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2014-12-23 11:14:24 UTC</tt>.<br> | ||
: The original revision id was <tt> | : The original revision id was <tt>535853880</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 10: | Line 10: | ||
If A is an integral matrix, denote by Saturate(A) the integral matrix which is the [[saturation]] of A, defined in terms of the right reducing matrix to Smith normal form. We may clean the result up a little by LLL reduction, so let Sat(A) = LLL(Saturate(A)). The square matrix with rational coefficients A`A, where A` is the pseudoinverse of A, is an nxn projection matrix, where n is the number of columns of A. Let us also define Clear(P) to be the rational number matrix P cleared of denominators by multiplying through the rows by the LCM of the denominators, and Hrm(A) to be the Hermite reduction of A, with any rows consisting of zeros removed. We may combine these into the dual list function: Dulist(A) = Sat(Hrm(Clear(I - A`A))), where I is the nxn identity matrix. | If A is an integral matrix, denote by Saturate(A) the integral matrix which is the [[saturation]] of A, defined in terms of the right reducing matrix to Smith normal form. We may clean the result up a little by LLL reduction, so let Sat(A) = LLL(Saturate(A)). The square matrix with rational coefficients A`A, where A` is the pseudoinverse of A, is an nxn projection matrix, where n is the number of columns of A. Let us also define Clear(P) to be the rational number matrix P cleared of denominators by multiplying through the rows by the LCM of the denominators, and Hrm(A) to be the Hermite reduction of A, with any rows consisting of zeros removed. We may combine these into the dual list function: Dulist(A) = Sat(Hrm(Clear(I - A`A))), where I is the nxn identity matrix. | ||
The interest of the dual list stems from the fact that if A is a list of vals defining a temperament, then Dulist(A) is a list of monzos defining the same temperament, and conversely--Dulist applied to a list of monzos defining a temperament gives a list of | The interest of the dual list stems from the fact that if A is a list of vals defining a temperament, then Dulist(A) is a list of monzos defining the same temperament, and conversely--Dulist applied to a list of monzos defining a temperament gives a list of vals defining the same temperament. | ||
=Examples= | =Examples= | ||
| Line 21: | Line 21: | ||
If A is an integral matrix, denote by Saturate(A) the integral matrix which is the <a class="wiki_link" href="/saturation">saturation</a> of A, defined in terms of the right reducing matrix to Smith normal form. We may clean the result up a little by LLL reduction, so let Sat(A) = LLL(Saturate(A)). The square matrix with rational coefficients A`A, where A` is the pseudoinverse of A, is an nxn projection matrix, where n is the number of columns of A. Let us also define Clear(P) to be the rational number matrix P cleared of denominators by multiplying through the rows by the LCM of the denominators, and Hrm(A) to be the Hermite reduction of A, with any rows consisting of zeros removed. We may combine these into the dual list function: Dulist(A) = Sat(Hrm(Clear(I - A`A))), where I is the nxn identity matrix.<br /> | If A is an integral matrix, denote by Saturate(A) the integral matrix which is the <a class="wiki_link" href="/saturation">saturation</a> of A, defined in terms of the right reducing matrix to Smith normal form. We may clean the result up a little by LLL reduction, so let Sat(A) = LLL(Saturate(A)). The square matrix with rational coefficients A`A, where A` is the pseudoinverse of A, is an nxn projection matrix, where n is the number of columns of A. Let us also define Clear(P) to be the rational number matrix P cleared of denominators by multiplying through the rows by the LCM of the denominators, and Hrm(A) to be the Hermite reduction of A, with any rows consisting of zeros removed. We may combine these into the dual list function: Dulist(A) = Sat(Hrm(Clear(I - A`A))), where I is the nxn identity matrix.<br /> | ||
<br /> | <br /> | ||
The interest of the dual list stems from the fact that if A is a list of vals defining a temperament, then Dulist(A) is a list of monzos defining the same temperament, and conversely--Dulist applied to a list of monzos defining a temperament gives a list of | The interest of the dual list stems from the fact that if A is a list of vals defining a temperament, then Dulist(A) is a list of monzos defining the same temperament, and conversely--Dulist applied to a list of monzos defining a temperament gives a list of vals defining the same temperament.<br /> | ||
<br /> | <br /> | ||
<!-- ws:start:WikiTextHeadingRule:2:&lt;h1&gt; --><h1 id="toc1"><a name="Examples"></a><!-- ws:end:WikiTextHeadingRule:2 -->Examples</h1> | <!-- ws:start:WikiTextHeadingRule:2:&lt;h1&gt; --><h1 id="toc1"><a name="Examples"></a><!-- ws:end:WikiTextHeadingRule:2 -->Examples</h1> | ||
Dulist([&lt;31 49 72 87 107|, &lt;41 65 95 115 142|, &lt;72 114 167 202 249|]) = [|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;]. Dulist([|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;]) =<br /> | Dulist([&lt;31 49 72 87 107|, &lt;41 65 95 115 142|, &lt;72 114 167 202 249|]) = [|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;]. Dulist([|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;]) =<br /> | ||
[&lt;1 1 3 3 2|, &lt;0 6 -7 -2 15|]. Dulist([&lt;1 1 3 3 2|, &lt;0 6 -7 -2 15|]) = [|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;].</body></html></pre></div> | [&lt;1 1 3 3 2|, &lt;0 6 -7 -2 15|]. Dulist([&lt;1 1 3 3 2|, &lt;0 6 -7 -2 15|]) = [|-3 2 -1 2 -1&gt;, |-2 -3 -1 2 1&gt;, |-2 0 3 -3 1&gt;].</body></html></pre></div> | ||