Generator complexity: Difference between revisions
Jump to navigation
Jump to search
Wikispaces>genewardsmith **Imported revision 480040626 - Original comment: ** |
Wikispaces>genewardsmith **Imported revision 509657124 - 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> | : This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2014-05-18 14:13:07 UTC</tt>.<br> | ||
: The original revision id was <tt> | : The original revision id was <tt>509657124</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 8: | Line 8: | ||
<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">[[toc|flat]] | <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">[[toc|flat]] | ||
[[image:mathhazard.jpg align="center"]] | |||
=Definition= | =Definition= | ||
Suppose A = <0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = <0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, <0 1 -2 -2| is the generator mapping val for seven limit [[pajara]], and <0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ <0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The //generator complexity// of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit. | Suppose A = <0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = <0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, <0 1 -2 -2| is the generator mapping val for seven limit [[pajara]], and <0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ <0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The //generator complexity// of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit. | ||
| Line 30: | Line 31: | ||
<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"><html><head><title>Generator complexity</title></head><body><!-- ws:start:WikiTextTocRule:4:&lt;img id=&quot;wikitext@@toc@@flat&quot; class=&quot;WikiMedia WikiMediaTocFlat&quot; title=&quot;Table of Contents&quot; src=&quot;/site/embedthumbnail/toc/flat?w=100&amp;h=16&quot;/&gt; --><!-- ws:end:WikiTextTocRule:4 --><!-- ws:start:WikiTextTocRule:5: --><a href="#Definition">Definition</a><!-- ws:end:WikiTextTocRule:5 --><!-- ws:start:WikiTextTocRule:6: --> | <a href="#Generator complexity and Kees expressibility">Generator complexity and Kees expressibility</a><!-- ws:end:WikiTextTocRule:6 --><!-- ws:start:WikiTextTocRule:7: --> | <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"><html><head><title>Generator complexity</title></head><body><!-- ws:start:WikiTextTocRule:4:&lt;img id=&quot;wikitext@@toc@@flat&quot; class=&quot;WikiMedia WikiMediaTocFlat&quot; title=&quot;Table of Contents&quot; src=&quot;/site/embedthumbnail/toc/flat?w=100&amp;h=16&quot;/&gt; --><!-- ws:end:WikiTextTocRule:4 --><!-- ws:start:WikiTextTocRule:5: --><a href="#Definition">Definition</a><!-- ws:end:WikiTextTocRule:5 --><!-- ws:start:WikiTextTocRule:6: --> | <a href="#Generator complexity and Kees expressibility">Generator complexity and Kees expressibility</a><!-- ws:end:WikiTextTocRule:6 --><!-- ws:start:WikiTextTocRule:7: --> | ||
<!-- ws:end:WikiTextTocRule:7 --><br /> | <!-- ws:end:WikiTextTocRule:7 --><br /> | ||
<!-- ws:start:WikiTextHeadingRule:0:&lt;h1&gt; --><h1 id="toc0"><a name="Definition"></a><!-- ws:end:WikiTextHeadingRule:0 -->Definition</h1> | <!-- ws:start:WikiTextLocalImageRule:8:&lt;div style=&quot;text-align: center&quot;&gt;&lt;img src=&quot;/file/view/mathhazard.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;&lt;/div&gt; --><div style="text-align: center"><img src="/file/view/mathhazard.jpg" alt="mathhazard.jpg" title="mathhazard.jpg" /></div><!-- ws:end:WikiTextLocalImageRule:8 --><!-- ws:start:WikiTextHeadingRule:0:&lt;h1&gt; --><h1 id="toc0"><a name="Definition"></a><!-- ws:end:WikiTextHeadingRule:0 -->Definition</h1> | ||
Suppose A = &lt;0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = &lt;0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, &lt;0 1 -2 -2| is the generator mapping val for seven limit <a class="wiki_link" href="/pajara">pajara</a>, and &lt;0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ &lt;0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The <em>generator complexity</em> of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit. <br /> | Suppose A = &lt;0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = &lt;0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, &lt;0 1 -2 -2| is the generator mapping val for seven limit <a class="wiki_link" href="/pajara">pajara</a>, and &lt;0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ &lt;0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The <em>generator complexity</em> of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit. <br /> | ||
<br /> | <br /> | ||
Revision as of 14:13, 18 May 2014
IMPORTED REVISION FROM WIKISPACES
This is an imported revision from Wikispaces. The revision metadata is included below for reference:
- This revision was by author genewardsmith and made on 2014-05-18 14:13:07 UTC.
- The original revision id was 509657124.
- The revision comment was:
The revision contents are below, presented both in the original Wikispaces Wikitext format, and in HTML exactly as Wikispaces rendered it.
Original Wikitext content:
[[toc|flat]]
[[image:mathhazard.jpg align="center"]]
=Definition=
Suppose A = <0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = <0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, <0 1 -2 -2| is the generator mapping val for seven limit [[pajara]], and <0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ <0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The //generator complexity// of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit.
Generator complexity satisfies the inequality, for any p-limit interval I, G(I) ≤ C KE(I), where C is the generator complexity of the temperament, G(I) is the number of generator steps, times P, required to reach the tempered version of I, and KE(I) is the [[Kees height|Kees expressibility]] of I. So for instance, in meantone G(5/4) = 4, since it requires four generator steps to get to 5/4, and KE(5/4) = log2(5). In pajara, G(5/4) = 4 also, since two generator steps are required to get to 5/4 (5/4 = (4/3)^2 * 45/64), and P = 2, so that G(5/4) = 2*2.
This inequality can be used to give an alternative definition of generator complexity: C = sup G(I)/KE(I) over non-octave intervals, where KE(I)>0. A related definition can be extended to higher ranks: since the [[Tenney-Euclidean metrics#The OETES|OETES]] in the case of a rank two temperament is proportional (albeit with a different proportionality factor for each temperament) to G(I), we can define a complexity measure for any rank of temperament by C = sup OETES(I)/KE(I).
Generator complexity has the nice property that for any MOS of size N, floor(N/(C KE(I))) intervals with pitch class corresponding to I are guaranteed to exist in the MOS. Generator complexity is also useful in making complete searches using [[the wedgie]] for temperaments below a certain complexity and badness bounds, allowing for a more efficient search.
=Generator complexity and Kees expressibility=
The following proof is due to Mike Battaglia.
If m = |m2 m3 m5 ... mp> is a vector with weighted coordinates in interval space, then KE(m), the Kees expressibility of m, is (|m3 + m5+ ... +mp| + |m3| + |m5| + ... + |mp|)/2. The "2" coordinate, m2, plays no role in Kees expressibility, so we may replace it with anything we choose. If we replace it with -e3 -e5-...-ep, we may define expressibility in terms of the L1 norm, as || |-e3-e5-...-ep e3 e5 ... ep> ||/2.
For any vector space X with a subspace A, we may define a quotient space X/A as the equivalence classes of vectors in X where two vectors are equivalent iff their difference lies in A. Then we have a short exact sequence 0 → A → X → X/A → 0. Taking the duals of this gives us 0 → (X/A)* → X* → A* → 0. The annihilator of A is the subspace A⁀ of X* consisting of those functionals f such that <f|A> equals 0; that is, it is the subspace of all the functionals f such that <f|a> equals 0 for every a in A. There is a natural isomorphism between the annihilator A⁀ of A and the dual of the quotient (X/A)*, and also between X*/A⁀ and A*.
Now suppose X is a finite dimensional real normed vector space. A is then also a finite dimensional real normed vector space, inheriting its norm from X, and X/A is a finite dimensional real normed vector space, with a norm given by, for an equivalence class [x], ||[x]|| equals inf {||x + a||, a∈ A}. Algebraically X is (noncanonically) isomorphic to X*, but in general they are no longer isomorphic as normed spaces. Instead, we have the [[dual norm]] on X*, defined by setting, over all nonzero x ∈ X, ||f||* = sup <f|x>/||x||. Under the dual norm X* is also a finite dimensional normed vector space, A⁀ is isometrically isomorphic to (X/A)*, and X*/A⁀ is isometrically isomorphic to A*.
In the situation which concerns us, X is the p-limit interval space of dimension n under a norm of one half times the L1 norm, A is a subspace of dimension n-1, whose coordinates sum to 0; hence A can be described as having the one-dimensional subspace A⁀ = {kJ}, where J is the JIP, as its annihilator. X has a norm of half the L1 norm, and hence X* has a norm of twice the L∞ norm. The norm on A* is defined by its isomorphism with X*/A⁀; the minimum defining inf {||f + kJ||} occurs for the value of k where the maximum of f + kJ and minus the minimum of f + kj are the same. In that case, 2||f + kJ||_L∞ = span(f), which is the generator complexity of f. Hence generator complexity is the dual norm for Kees expressibility as a norm on pitch classes.Original HTML content:
<html><head><title>Generator complexity</title></head><body><!-- ws:start:WikiTextTocRule:4:<img id="wikitext@@toc@@flat" class="WikiMedia WikiMediaTocFlat" title="Table of Contents" src="/site/embedthumbnail/toc/flat?w=100&h=16"/> --><!-- ws:end:WikiTextTocRule:4 --><!-- ws:start:WikiTextTocRule:5: --><a href="#Definition">Definition</a><!-- ws:end:WikiTextTocRule:5 --><!-- ws:start:WikiTextTocRule:6: --> | <a href="#Generator complexity and Kees expressibility">Generator complexity and Kees expressibility</a><!-- ws:end:WikiTextTocRule:6 --><!-- ws:start:WikiTextTocRule:7: -->
<!-- ws:end:WikiTextTocRule:7 --><br />
<!-- ws:start:WikiTextLocalImageRule:8:<div style="text-align: center"><img src="/file/view/mathhazard.jpg" alt="" title="" /></div> --><div style="text-align: center"><img src="/file/view/mathhazard.jpg" alt="mathhazard.jpg" title="mathhazard.jpg" /></div><!-- ws:end:WikiTextLocalImageRule:8 --><!-- ws:start:WikiTextHeadingRule:0:<h1> --><h1 id="toc0"><a name="Definition"></a><!-- ws:end:WikiTextHeadingRule:0 -->Definition</h1>
Suppose A = <0 A₃ A₅ A₇ ... Ap| is the generator mapping val for a rank two temperament with P periods to the octave, and B = <0 B₃ B₅ B₇ ... Bp| is the same val in weighted coordinates. For instance, <0 1 -2 -2| is the generator mapping val for seven limit <a class="wiki_link" href="/pajara">pajara</a>, and <0 1/log2(3) -2/log2(5) -2/log2(7)| ≅ <0 0.631 -0.831 -0.712| is the val in weighted coordinates. For any vector V, let max(V) - min(V) = span(V). The <em>generator complexity</em> of the temperament is P span(B). In the case of pajara, which has two periods to the octave, this would be 2*(0.631 - (-0.861)) = 2.984. This can also be described in terms of the wedgie W of the temperament, as span(2∨W), which is the span of 0 followed by the first n-1 elements of W, where n is the number of primes in the p-limit. <br />
<br />
Generator complexity satisfies the inequality, for any p-limit interval I, G(I) ≤ C KE(I), where C is the generator complexity of the temperament, G(I) is the number of generator steps, times P, required to reach the tempered version of I, and KE(I) is the <a class="wiki_link" href="/Kees%20height">Kees expressibility</a> of I. So for instance, in meantone G(5/4) = 4, since it requires four generator steps to get to 5/4, and KE(5/4) = log2(5). In pajara, G(5/4) = 4 also, since two generator steps are required to get to 5/4 (5/4 = (4/3)^2 * 45/64), and P = 2, so that G(5/4) = 2*2.<br />
<br />
This inequality can be used to give an alternative definition of generator complexity: C = sup G(I)/KE(I) over non-octave intervals, where KE(I)>0. A related definition can be extended to higher ranks: since the <a class="wiki_link" href="/Tenney-Euclidean%20metrics#The OETES">OETES</a> in the case of a rank two temperament is proportional (albeit with a different proportionality factor for each temperament) to G(I), we can define a complexity measure for any rank of temperament by C = sup OETES(I)/KE(I).<br />
<br />
Generator complexity has the nice property that for any MOS of size N, floor(N/(C KE(I))) intervals with pitch class corresponding to I are guaranteed to exist in the MOS. Generator complexity is also useful in making complete searches using <a class="wiki_link" href="/the%20wedgie">the wedgie</a> for temperaments below a certain complexity and badness bounds, allowing for a more efficient search.<br />
<br />
<!-- ws:start:WikiTextHeadingRule:2:<h1> --><h1 id="toc1"><a name="Generator complexity and Kees expressibility"></a><!-- ws:end:WikiTextHeadingRule:2 -->Generator complexity and Kees expressibility</h1>
The following proof is due to Mike Battaglia.<br />
<br />
If m = |m2 m3 m5 ... mp> is a vector with weighted coordinates in interval space, then KE(m), the Kees expressibility of m, is (|m3 + m5+ ... +mp| + |m3| + |m5| + ... + |mp|)/2. The "2" coordinate, m2, plays no role in Kees expressibility, so we may replace it with anything we choose. If we replace it with -e3 -e5-...-ep, we may define expressibility in terms of the L1 norm, as || |-e3-e5-...-ep e3 e5 ... ep> ||/2.<br />
<br />
For any vector space X with a subspace A, we may define a quotient space X/A as the equivalence classes of vectors in X where two vectors are equivalent iff their difference lies in A. Then we have a short exact sequence 0 → A → X → X/A → 0. Taking the duals of this gives us 0 → (X/A)* → X* → A* → 0. The annihilator of A is the subspace A⁀ of X* consisting of those functionals f such that <f|A> equals 0; that is, it is the subspace of all the functionals f such that <f|a> equals 0 for every a in A. There is a natural isomorphism between the annihilator A⁀ of A and the dual of the quotient (X/A)*, and also between X*/A⁀ and A*.<br />
<br />
Now suppose X is a finite dimensional real normed vector space. A is then also a finite dimensional real normed vector space, inheriting its norm from X, and X/A is a finite dimensional real normed vector space, with a norm given by, for an equivalence class [x], ||[x]|| equals inf {||x + a||, a∈ A}. Algebraically X is (noncanonically) isomorphic to X*, but in general they are no longer isomorphic as normed spaces. Instead, we have the <a class="wiki_link" href="/dual%20norm">dual norm</a> on X*, defined by setting, over all nonzero x ∈ X, ||f||* = sup <f|x>/||x||. Under the dual norm X* is also a finite dimensional normed vector space, A⁀ is isometrically isomorphic to (X/A)*, and X*/A⁀ is isometrically isomorphic to A*.<br />
<br />
In the situation which concerns us, X is the p-limit interval space of dimension n under a norm of one half times the L1 norm, A is a subspace of dimension n-1, whose coordinates sum to 0; hence A can be described as having the one-dimensional subspace A⁀ = {kJ}, where J is the JIP, as its annihilator. X has a norm of half the L1 norm, and hence X* has a norm of twice the L∞ norm. The norm on A* is defined by its isomorphism with X*/A⁀; the minimum defining inf {||f + kJ||} occurs for the value of k where the maximum of f + kJ and minus the minimum of f + kj are the same. In that case, 2||f + kJ||_L∞ = span(f), which is the generator complexity of f. Hence generator complexity is the dual norm for Kees expressibility as a norm on pitch classes.</body></html>