Normal forms: Difference between revisions

Wikispaces>genewardsmith
**Imported revision 142127051 - Original comment: **
 
Wikispaces>genewardsmith
**Imported revision 142153269 - 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>2010-05-14 16:17:54 UTC</tt>.<br>
: This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2010-05-14 20:43:53 UTC</tt>.<br>
: The original revision id was <tt>142127051</tt>.<br>
: The original revision id was <tt>142153269</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>
<h4>Original Wikitext content:</h4>
<h4>Original Wikitext content:</h4>
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;white-space: pre-wrap ! important" class="old-revision-html">An integral matrix is a matrix whose entries are all integers. An important normalized form for integral matricies is [[http://Hermite normal form|Hermite normal form]], and by using Hermite normal form we may define normalized forms of lists of [[Harmonic Limit|p-limit]] musical intervals (or [[Monzos and Interval Space|monzos]]) or lists of [[Vals and Tuning Space|vals]], the interval (or monzo) normal list and the val normal list.
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;white-space: pre-wrap ! important" class="old-revision-html">An integral matrix is a matrix whose entries are all integers. An important normalized form for integral matricies is [[http://Hermite normal form|Hermite normal form]], and by using Hermite normal form we may define normalized forms of lists of [[Harmonic Limit|p-limit]] musical intervals (or [[Monzos and Interval Space|monzos]]) or lists of [[Vals and Tuning Space|vals]], the normal interval (or mon) list and the normal val list.


There are slightly different definitions of Hermite normal form in use, and if you are using a computer proram to compute it, you should take care that the same monzo or val normal list is finally achieved. The definition used by the Wikipedia article on Hermite form, probably the most standard, works as follows.  
There are slightly different definitions of Hermite normal form in use, and if you are using a computer proram to compute it, you should take care that the same normal monzo or val list is finally achieved. The definition used by the Wikipedia article on Hermite form, probably the most standard, works as follows.  


An n by m integral matrix H is in Hermite normal form if firstly there can be defined a function F such that F(i) = 0 if all of the entries in the ith column of H are 0, and otherwise F(i) is equal to the row number of the first nonzero entry in the ith column, counting up from the bottom, ie the nth row.
An n by m integral matrix H is in Hermite normal form if firstly there can be defined a function F such that F(i) = 0 if all of the entries in the ith column of H are 0, and otherwise F(i) is equal to the row number of the first nonzero entry in the ith column, counting up from the bottom, ie the nth row.
Line 15: Line 15:
(1) If i &lt; j, H[i, j] = 0 (H is upper triangular)
(1) If i &lt; j, H[i, j] = 0 (H is upper triangular)


(2) If F(i) &gt; 0 then H[F(i), i] &gt; 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is positive.
(2) F(i) is a function of the column number i.


(3) If k &gt; F(i) &gt; 0 then H[k, i] = 0; that is, F(i) is the row of the first nonzero entry in the ith column, counting up from the bottom.
(3) F(i) = 0 if and only if all of the entries in the ith column are 0.


(4) If F(i) &gt; 0 then H[F(i), i] &gt; H[F(i), k] &gt;= 0 when i &lt; k; that is, the first nonzero entry in the ith column, counting up from the bottom is greater than any of the rest along that row, which however are all non-negative.
(4) F is an increasing function of the column number i, and becomes strictly increasing after F(i) becomes positive.


There is some redundency in the statement of these conditions, but that does no harm.</pre></div>
(5) If k &gt; F(i) &gt; 0 then H[k, i] = 0; that is, F(i) is the row of the first nonzero entry in the ith column, counting up from the bottom.
 
(6) If F(i) &gt; 0 then H[F(i), i] &gt; 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is positive.
 
(7) If F(i) &gt; 0 and i &lt; k then H[F(i), i] &gt; H[F(i), k] &gt;= 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is greater than any of the rest along that row, which however are all non-negative.
 
There is some redundancy in the statement of these conditions, but that does no harm.
 
==Normal interval lists==
 
Given a list of p-limit intervals, we can convert it to a normal list by the following procedure:
 
(1) Convert the list to a list of monzos
 
(2) Reverse the order of the elements of the monzos
 
(3) Form a matrix whose rows are these reversed monzos
 
(4) Hermite reduce this matrix to Hermite normal form
 
(5) Reverse the entries in each row of the Hermite normal form matrix, and use these reversed rows to form a new list of monzos
 
(6) Discard all the all-zero monzos, corresponding to the unison 1/1
 
(7) Reverse the whole list (not the entries) of the remaining monzos
 
(8) Convert this list back to a list of p-limit rational numbers
 
(9) For any number q &lt; 1 on this list, replace q with 1/q
 
The result is a normal interval list. The set of elements of the original list generates a finitely generated free abelian subgroup of the positive rationals under multiplication, and therefore of any p-limit group it lives inside. The normalized list contains a minimal set of generators, each greater than zero, in an ordering of nondecreasing prime limit which is parsimonious in its use of higher limits. For example, if we normalize [81/80, 126/125] we obtain [81/80, 59049/57344]. The first interval is 5-limit, which is as small as possible. The second is 7-limit, which must be the case because the group these two generate is 7-limit. However, it uses only 2, 3 and 7 in its prime factorization, parsimoniously rejecting 5 as the next highest prime limit. Because abstract regular temperaments, where the prime mappings are known but not the specific tuning of the generators are fully characterized by their kernel, the group of intervals they map to the unison, they can be characterized by the regular interval list of a set of generators (called commas or unison vectors) for the kernel. The above normal interval list, for example, characterizes septimal meantone, defining the normal [[Comma sequences|comma sequence]] of septimal meantone.
 
 
 
</pre></div>
<h4>Original HTML content:</h4>
<h4>Original HTML content:</h4>
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;width:200%;white-space: pre-wrap ! important" class="old-revision-html">&lt;html&gt;&lt;head&gt;&lt;title&gt;Normal lists&lt;/title&gt;&lt;/head&gt;&lt;body&gt;An integral matrix is a matrix whose entries are all integers. An important normalized form for integral matricies is [[&lt;!-- ws:start:WikiTextUrlRule:18:http://Hermite --&gt;&lt;a class="wiki_link_ext" href="http://Hermite" rel="nofollow"&gt;http://Hermite&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:18 --&gt; normal form|Hermite normal form]], and by using Hermite normal form we may define normalized forms of lists of &lt;a class="wiki_link" href="/Harmonic%20Limit"&gt;p-limit&lt;/a&gt; musical intervals (or &lt;a class="wiki_link" href="/Monzos%20and%20Interval%20Space"&gt;monzos&lt;/a&gt;) or lists of &lt;a class="wiki_link" href="/Vals%20and%20Tuning%20Space"&gt;vals&lt;/a&gt;, the interval (or monzo) normal list and the val normal list.&lt;br /&gt;
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;width:200%;white-space: pre-wrap ! important" class="old-revision-html">&lt;html&gt;&lt;head&gt;&lt;title&gt;Normal lists&lt;/title&gt;&lt;/head&gt;&lt;body&gt;An integral matrix is a matrix whose entries are all integers. An important normalized form for integral matricies is [[&lt;!-- ws:start:WikiTextUrlRule:50:http://Hermite --&gt;&lt;a class="wiki_link_ext" href="http://Hermite" rel="nofollow"&gt;http://Hermite&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:50 --&gt; normal form|Hermite normal form]], and by using Hermite normal form we may define normalized forms of lists of &lt;a class="wiki_link" href="/Harmonic%20Limit"&gt;p-limit&lt;/a&gt; musical intervals (or &lt;a class="wiki_link" href="/Monzos%20and%20Interval%20Space"&gt;monzos&lt;/a&gt;) or lists of &lt;a class="wiki_link" href="/Vals%20and%20Tuning%20Space"&gt;vals&lt;/a&gt;, the normal interval (or mon) list and the normal val list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are slightly different definitions of Hermite normal form in use, and if you are using a computer proram to compute it, you should take care that the same monzo or val normal list is finally achieved. The definition used by the Wikipedia article on Hermite form, probably the most standard, works as follows. &lt;br /&gt;
There are slightly different definitions of Hermite normal form in use, and if you are using a computer proram to compute it, you should take care that the same normal monzo or val list is finally achieved. The definition used by the Wikipedia article on Hermite form, probably the most standard, works as follows. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An n by m integral matrix H is in Hermite normal form if firstly there can be defined a function F such that F(i) = 0 if all of the entries in the ith column of H are 0, and otherwise F(i) is equal to the row number of the first nonzero entry in the ith column, counting up from the bottom, ie the nth row.&lt;br /&gt;
An n by m integral matrix H is in Hermite normal form if firstly there can be defined a function F such that F(i) = 0 if all of the entries in the ith column of H are 0, and otherwise F(i) is equal to the row number of the first nonzero entry in the ith column, counting up from the bottom, ie the nth row.&lt;br /&gt;
Line 32: Line 66:
(1) If i &amp;lt; j, H[i, j] = 0 (H is upper triangular)&lt;br /&gt;
(1) If i &amp;lt; j, H[i, j] = 0 (H is upper triangular)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(2) If F(i) &amp;gt; 0 then H[F(i), i] &amp;gt; 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is positive.&lt;br /&gt;
(2) F(i) is a function of the column number i.&lt;br /&gt;
&lt;br /&gt;
(3) F(i) = 0 if and only if all of the entries in the ith column are 0.&lt;br /&gt;
&lt;br /&gt;
(4) F is an increasing function of the column number i, and becomes strictly increasing after F(i) becomes positive.&lt;br /&gt;
&lt;br /&gt;
(5) If k &amp;gt; F(i) &amp;gt; 0 then H[k, i] = 0; that is, F(i) is the row of the first nonzero entry in the ith column, counting up from the bottom.&lt;br /&gt;
&lt;br /&gt;
(6) If F(i) &amp;gt; 0 then H[F(i), i] &amp;gt; 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is positive.&lt;br /&gt;
&lt;br /&gt;
(7) If F(i) &amp;gt; 0 and i &amp;lt; k then H[F(i), i] &amp;gt; H[F(i), k] &amp;gt;= 0; that is, the first nonzero entry in the ith column, counting up from the bottom, is greater than any of the rest along that row, which however are all non-negative.&lt;br /&gt;
&lt;br /&gt;
There is some redundancy in the statement of these conditions, but that does no harm.&lt;br /&gt;
&lt;br /&gt;
&lt;!-- ws:start:WikiTextHeadingRule:0:&amp;lt;h2&amp;gt; --&gt;&lt;h2 id="toc0"&gt;&lt;a name="x-Normal interval lists"&gt;&lt;/a&gt;&lt;!-- ws:end:WikiTextHeadingRule:0 --&gt;Normal interval lists&lt;/h2&gt;
&lt;br /&gt;
Given a list of p-limit intervals, we can convert it to a normal list by the following procedure:&lt;br /&gt;
&lt;br /&gt;
(1) Convert the list to a list of monzos&lt;br /&gt;
&lt;br /&gt;
(2) Reverse the order of the elements of the monzos&lt;br /&gt;
&lt;br /&gt;
(3) Form a matrix whose rows are these reversed monzos&lt;br /&gt;
&lt;br /&gt;
(4) Hermite reduce this matrix to Hermite normal form&lt;br /&gt;
&lt;br /&gt;
(5) Reverse the entries in each row of the Hermite normal form matrix, and use these reversed rows to form a new list of monzos &lt;br /&gt;
&lt;br /&gt;
(6) Discard all the all-zero monzos, corresponding to the unison 1/1&lt;br /&gt;
&lt;br /&gt;
(7) Reverse the whole list (not the entries) of the remaining monzos&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(3) If k &amp;gt; F(i) &amp;gt; 0 then H[k, i] = 0; that is, F(i) is the row of the first nonzero entry in the ith column, counting up from the bottom.&lt;br /&gt;
(8) Convert this list back to a list of p-limit rational numbers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(4) If F(i) &amp;gt; 0 then H[F(i), i] &amp;gt; H[F(i), k] &amp;gt;= 0 when i &amp;lt; k; that is, the first nonzero entry in the ith column, counting up from the bottom is greater than any of the rest along that row, which however are all non-negative.&lt;br /&gt;
(9) For any number q &amp;lt; 1 on this list, replace q with 1/q&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is some redundency in the statement of these conditions, but that does no harm.&lt;/body&gt;&lt;/html&gt;</pre></div>
The result is a normal interval list. The set of elements of the original list generates a finitely generated free abelian subgroup of the positive rationals under multiplication, and therefore of any p-limit group it lives inside. The normalized list contains a minimal set of generators, each greater than zero, in an ordering of nondecreasing prime limit which is parsimonious in its use of higher limits. For example, if we normalize [81/80, 126/125] we obtain [81/80, 59049/57344]. The first interval is 5-limit, which is as small as possible. The second is 7-limit, which must be the case because the group these two generate is 7-limit. However, it uses only 2, 3 and 7 in its prime factorization, parsimoniously rejecting 5 as the next highest prime limit. Because abstract regular temperaments, where the prime mappings are known but not the specific tuning of the generators are fully characterized by their kernel, the group of intervals they map to the unison, they can be characterized by the regular interval list of a set of generators (called commas or unison vectors) for the kernel. The above normal interval list, for example, characterizes septimal meantone, defining the normal &lt;a class="wiki_link" href="/Comma%20sequences"&gt;comma sequence&lt;/a&gt; of septimal meantone.&lt;/body&gt;&lt;/html&gt;</pre></div>