<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.xen.wiki/index.php?action=history&amp;feed=atom&amp;title=Gencom</id>
	<title>Gencom - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://en.xen.wiki/index.php?action=history&amp;feed=atom&amp;title=Gencom"/>
	<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;action=history"/>
	<updated>2026-07-24T09:13:12Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=208896&amp;oldid=prev</id>
		<title>FloraC: + some actual formulae here</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=208896&amp;oldid=prev"/>
		<updated>2025-08-30T14:28:44Z</updated>

		<summary type="html">&lt;p&gt;+ some actual formulae here&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 14:28, 30 August 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l8&quot;&gt;Line 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; the gencom mapping applied to a subgroup basis matrix is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping&lt;/del&gt;. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;In other words, the gencom mapping takes ordinary monzos just as the [[subgroup monzos and vals|subgroup-val]] mapping takes subgroup monzos: &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;$$ V \cdot \vec m = V_G \cdot \vec m_G $$&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;where &#039;&#039;V&#039;&#039; and &#039;&#039;V&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;G&#039;&#039;&amp;lt;/sub&amp;gt; are gencom and subgroup-val mappings of the same temperament in subgroup &#039;&#039;G&#039;&#039;, and &#039;&#039;&#039;m&#039;&#039;&#039; and &#039;&#039;&#039;m&#039;&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;G&#039;&#039;&amp;lt;/sub&amp;gt; are ordinary and subgroup monzos of the same interval in &#039;&#039;G&#039;&#039;, respectively. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;It follows that the gencom mapping applied to the subgroup basis matrix of the temperament is a matrix of generator steps in terms of subgroup vals, which is exactly the subgroup-val mapping. If &#039;&#039;S&#039;&#039; is the subgroup basis matrix, then&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;$$ VS = V_G $$&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The extended gencom mapping can also be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The extended gencom mapping can also be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=208894&amp;oldid=prev</id>
		<title>FloraC: Re-organize</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=208894&amp;oldid=prev"/>
		<updated>2025-08-30T14:08:28Z</updated>

		<summary type="html">&lt;p&gt;Re-organize&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 14:08, 30 August 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &#039;&#039;&#039;gencom&#039;&#039;&#039; is a list of &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;generators &lt;/del&gt;for a [[temperament]] followed by &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;commas &lt;/del&gt;for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperament. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &#039;&#039;&#039;gencom&#039;&#039;&#039; is a list of &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[generator]]s &lt;/ins&gt;for a [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;regular temperament|&lt;/ins&gt;temperament]] followed by &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[comma]]s &lt;/ins&gt;for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperament. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;A gencom uniquely characterizes a temperament in that it specifies the unique temperament on the given group tempering out the given commas. In other words, converting a gencom to a [[normal forms #Normal forms for commas|normal interval list]] gives a canonical form for the subgroup, which is an {{w|invariant (mathematics)|invariant}} of the temperament; doing the same to just the commas produces another invariant, and together these determine the temperament. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;However, the normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Gencom mapping ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom; the gencom mapping applied to a subgroup basis matrix is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom; the gencom mapping applied to a subgroup basis matrix is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Invariance ==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The extended gencom mapping can &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;also &lt;/ins&gt;be used to determine if an interval &#039;&#039;q&#039;&#039; is in the group of the temperament. Suppose [&#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;), &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) must be an integer, and moreover we must have &#039;&#039;q&#039;&#039; = &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · … · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an {{w|Invariant (mathematics)|invariant}} of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. &lt;/del&gt;The &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the &lt;/del&gt;extended gencom mapping can be used to determine if an interval &#039;&#039;q&#039;&#039; is in the group of the temperament. Suppose [&#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;), &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) must be an integer, and moreover we must have &#039;&#039;q&#039;&#039; = &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · … · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Example ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Example ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=178234&amp;oldid=prev</id>
		<title>Godtone: typo</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=178234&amp;oldid=prev"/>
		<updated>2025-01-25T18:29:29Z</updated>

		<summary type="html">&lt;p&gt;typo&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:29, 25 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &#039;&#039;&#039;gencom&#039;&#039;&#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;temperment&lt;/del&gt;. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &#039;&#039;&#039;gencom&#039;&#039;&#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;temperament&lt;/ins&gt;. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a [[subgroup basis matrix]]: the group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit group]], as in the example above, the matrix is a {{w|unimodular matrix}}. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &amp;#039;&amp;#039;r&amp;#039;&amp;#039; is the [[rank]] of the temperament, then the first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &amp;#039;&amp;#039;r&amp;#039;&amp;#039; rows we call the &amp;#039;&amp;#039;&amp;#039;gencom mapping&amp;#039;&amp;#039;&amp;#039;, and which in its entirety we call the &amp;#039;&amp;#039;&amp;#039;extended gencom mapping&amp;#039;&amp;#039;&amp;#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &amp;#039;&amp;#039;p&amp;#039;&amp;#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Godtone</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=161395&amp;oldid=prev</id>
		<title>FloraC: /* Example */ clarify a bit</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=161395&amp;oldid=prev"/>
		<updated>2024-10-20T08:42:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Example: &lt;/span&gt; clarify a bit&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:42, 20 October 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l11&quot;&gt;Line 11:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 11:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Consider [[baldy]], the temperament tempering out 225/224, 325/324, and 640/637 in the 2.9.5.7.13 subgroup. This is every other step of [[garibaldi|garibaldi/cassandra]] in the 13-limit, without prime 11. With normalized generators ~2 and ~9, the gencom is [2 9; 225/224 325/324 640/637]. Converting it to a matrix of monzos, we get [{{monzo| 1 0 0 0 0 0 }}, {{monzo| 0 2 0 0 0 0 }}; {{monzo| -5 2 2 -1 0 0 }}, {{monzo| -2 -4 2 0 0 1 }}, {{monzo| 7 0 1 -2 0 -1 }}]. Taking the pseudoinverse and canonicalizing it, the extended gencom mapping is found to be [{{val| 1 0 15 25 0 28 }}, {{val| 0 1/2 -4 -7 0 10 }}; {{val| 0 0 2 3 0 4 }}, {{val| 0 0 -1 -2 0 3 }}, {{val| 0 0 -1 -2 0 2 }}]. Since this is a rank-2 temperament, the gencom mapping is the first two row thereof, {{mapping| 1 0 15 25 0 28 | 0 1/2 -4 -7 0 10 }}.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Consider [[baldy]], the temperament tempering out 225/224, 325/324, and 640/637 in the 2.9.5.7.13 subgroup. This is every other step of [[garibaldi|garibaldi/cassandra]] in the 13-limit, without prime 11. With normalized generators ~2 and ~9, the gencom is [2 9; 225/224 325/324 640/637]. Converting it to a matrix of monzos, we get [{{monzo| 1 0 0 0 0 0 }}, {{monzo| 0 2 0 0 0 0 }}; {{monzo| -5 2 2 -1 0 0 }}, {{monzo| -2 -4 2 0 0 1 }}, {{monzo| 7 0 1 -2 0 -1 }}]. Taking the pseudoinverse and canonicalizing it, the extended gencom mapping is found to be [{{val| 1 0 15 25 0 28 }}, {{val| 0 1/2 -4 -7 0 10 }}; {{val| 0 0 2 3 0 4 }}, {{val| 0 0 -1 -2 0 3 }}, {{val| 0 0 -1 -2 0 2 }}]. Since this is a rank-2 temperament, the gencom mapping is the first two row thereof, {{mapping| 1 0 15 25 0 28 | 0 1/2 -4 -7 0 10 }}.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;With this mapping we can insert the monzo of 9, {{monzo| 0 2 }}, to the mapping and see it is represented by +1 generator step. Further, we can see prime 3, not in the subgroup, must be &quot;1/2&quot; generator step. Through the same process we find prime 5 is -4 steps and prime 7 is -7 steps, which correspond to -8 and -14 steps of garibaldi. Prime 11 is not in the temperament so it is signified by &quot;0&quot; steps. Finally, prime 13 is +10 steps, corresponding to +20 steps of garibaldi/cassandra.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;With this mapping &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;we can insert the monzo of an arbitrary interval to see its number of generator steps. For instance &lt;/ins&gt;we can insert the monzo of 9, {{monzo| 0 2 }}, to the mapping and see it is represented by +1 generator step. Further, we can see prime 3, not in the subgroup, must be &quot;1/2&quot; generator step. Through the same process we find prime 5 is -4 steps and prime 7 is -7 steps, which correspond to -8 and -14 steps of garibaldi. Prime 11 is not in the temperament so it is signified by &quot;0&quot; steps. Finally, prime 13 is +10 steps, corresponding to +20 steps of garibaldi/cassandra&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. Collecting the numbers of generator steps of all the monzos in the subgroup basis we can convert the gencom mapping to the sval mapping: {{mapping| 1 0 15 25 -28 | 0 1 -4 -7 10 }}&lt;/ins&gt;.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For a more complicated case let us consider [[edson]], the temperament tempering out 196/195, 352/351, and 364/363 in the 2.3.7/5.11/5.13/5 subgroup. Using normalized generators ~2 and ~3, its gencom mapping is {{mapping| 1 0 -49/4 -9/4 19/4 39/4 | 0 1 29/4 5/4 -11/4 -23/4 }}. Like before, we can see 7/5 is mapped to -6 generator steps by inserting its monzo {{monzo| 0 0 -1 1 }} to the mapping. However, if we insert the monzo of 625, {{monzo| 0 0 4 }}, it will also return a seemingly meaningful +29 steps &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;as a result&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;but 625 &lt;/del&gt;is not in the subgroup to begin with.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For a more complicated case let us consider [[edson]], the temperament tempering out 196/195, 352/351, and 364/363 in the 2.3.7/5.11/5.13/5 subgroup. Using normalized generators ~2 and ~3, its gencom mapping is {{mapping| 1 0 -49/4 -9/4 19/4 39/4 | 0 1 29/4 5/4 -11/4 -23/4 }}. Like before, we can see 7/5 is mapped to -6 generator steps by inserting its monzo {{monzo| 0 0 -1 1 }} to the mapping. However, if we insert the monzo of 625, {{monzo| 0 0 4 }}, it will also return a seemingly meaningful &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;result of &lt;/ins&gt;+29 steps, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;which should &#039;&#039;not&#039;&#039; be so interpreted because the interval &lt;/ins&gt;is not in the subgroup to begin with.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=156841&amp;oldid=prev</id>
		<title>FloraC: /* Example */ there should be a colon in the mapping too</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=156841&amp;oldid=prev"/>
		<updated>2024-09-28T13:59:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Example: &lt;/span&gt; there should be a colon in the mapping too&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:59, 28 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Example ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Example ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Consider [[baldy]], the temperament tempering out 225/224, 325/324, and 640/637 in the 2.9.5.7.13 subgroup. This is every other step of [[garibaldi|garibaldi/cassandra]] in the 13-limit, without prime 11. With normalized generators ~2 and ~9, the gencom is [2 9; 225/224 325/324 640/637]. Converting it to a matrix of monzos, we get [{{monzo| 1 0 0 0 0 0 }}, {{monzo| 0 2 0 0 0 0 }}; {{monzo| -5 2 2 -1 0 0 }}, {{monzo| -2 -4 2 0 0 1 }}, {{monzo| 7 0 1 -2 0 -1 }}]. Taking the pseudoinverse and canonicalizing it, the extended gencom mapping is found to be [{{val| 1 0 15 25 0 28 }}, {{val| 0 1/2 -4 -7 0 10 }}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, &lt;/del&gt;{{val| 0 0 2 3 0 4 }}, {{val| 0 0 -1 -2 0 3 }}, {{val| 0 0 -1 -2 0 2 }}]. Since this is a rank-2 temperament, the gencom mapping is the first two row thereof, {{mapping| 1 0 15 25 0 28 | 0 1/2 -4 -7 0 10 }}.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Consider [[baldy]], the temperament tempering out 225/224, 325/324, and 640/637 in the 2.9.5.7.13 subgroup. This is every other step of [[garibaldi|garibaldi/cassandra]] in the 13-limit, without prime 11. With normalized generators ~2 and ~9, the gencom is [2 9; 225/224 325/324 640/637]. Converting it to a matrix of monzos, we get [{{monzo| 1 0 0 0 0 0 }}, {{monzo| 0 2 0 0 0 0 }}; {{monzo| -5 2 2 -1 0 0 }}, {{monzo| -2 -4 2 0 0 1 }}, {{monzo| 7 0 1 -2 0 -1 }}]. Taking the pseudoinverse and canonicalizing it, the extended gencom mapping is found to be [{{val| 1 0 15 25 0 28 }}, {{val| 0 1/2 -4 -7 0 10 }}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; &lt;/ins&gt;{{val| 0 0 2 3 0 4 }}, {{val| 0 0 -1 -2 0 3 }}, {{val| 0 0 -1 -2 0 2 }}]. Since this is a rank-2 temperament, the gencom mapping is the first two row thereof, {{mapping| 1 0 15 25 0 28 | 0 1/2 -4 -7 0 10 }}.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;With this mapping we can insert the monzo of 9, {{monzo| 0 2 }}, to the mapping and see it is represented by +1 generator step. Further, we can see prime 3, not in the subgroup, must be &amp;quot;1/2&amp;quot; generator step. Through the same process we find prime 5 is -4 steps and prime 7 is -7 steps, which correspond to -8 and -14 steps of garibaldi. Prime 11 is not in the temperament so it is signified by &amp;quot;0&amp;quot; steps. Finally, prime 13 is +10 steps, corresponding to +20 steps of garibaldi/cassandra.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;With this mapping we can insert the monzo of 9, {{monzo| 0 2 }}, to the mapping and see it is represented by +1 generator step. Further, we can see prime 3, not in the subgroup, must be &amp;quot;1/2&amp;quot; generator step. Through the same process we find prime 5 is -4 steps and prime 7 is -7 steps, which correspond to -8 and -14 steps of garibaldi. Prime 11 is not in the temperament so it is signified by &amp;quot;0&amp;quot; steps. Finally, prime 13 is +10 steps, corresponding to +20 steps of garibaldi/cassandra.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=156840&amp;oldid=prev</id>
		<title>FloraC: So the gencom itself is a subgroup basis matrix</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=156840&amp;oldid=prev"/>
		<updated>2024-09-28T13:45:11Z</updated>

		<summary type="html">&lt;p&gt;So the gencom itself is a subgroup basis matrix&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:45, 28 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &amp;#039;&amp;#039;&amp;#039;gencom&amp;#039;&amp;#039;&amp;#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperment. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &amp;#039;&amp;#039;&amp;#039;gencom&amp;#039;&amp;#039;&amp;#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperment. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a matrix&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. The &lt;/del&gt;group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &#039;&#039;p&#039;&#039;-limit group]], as in the example above, the matrix is a &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Wikipedia: Unimodular matrix&lt;/del&gt;|unimodular matrix&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/del&gt;. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &#039;&#039;r&#039;&#039; is the [[rank]] of the temperament, then the first &#039;&#039;r&#039;&#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &#039;&#039;p&#039;&#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &#039;&#039;r&#039;&#039; rows we call the &#039;&#039;&#039;gencom mapping&#039;&#039;&#039;, and which in its entirety we call the &#039;&#039;&#039;extended gencom mapping&#039;&#039;&#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &#039;&#039;p&#039;&#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[subgroup basis &lt;/ins&gt;matrix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]: the &lt;/ins&gt;group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &#039;&#039;p&#039;&#039;-limit group]], as in the example above, the matrix is a &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{w&lt;/ins&gt;|unimodular matrix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}}&lt;/ins&gt;. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &#039;&#039;r&#039;&#039; is the [[rank]] of the temperament, then the first &#039;&#039;r&#039;&#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &#039;&#039;p&#039;&#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &#039;&#039;r&#039;&#039; rows we call the &#039;&#039;&#039;gencom mapping&#039;&#039;&#039;, and which in its entirety we call the &#039;&#039;&#039;extended gencom mapping&#039;&#039;&#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &#039;&#039;p&#039;&#039;-limit. However in all cases the transpose pseudoinverse of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom; the gencom mapping applied to a &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/del&gt;subgroup basis matrix&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/del&gt;is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom; the gencom mapping applied to a subgroup basis matrix is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Invariance ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Invariance ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=156839&amp;oldid=prev</id>
		<title>FloraC: +a long awaited example section</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=156839&amp;oldid=prev"/>
		<updated>2024-09-28T13:13:22Z</updated>

		<summary type="html">&lt;p&gt;+a long awaited example section&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:13, 28 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Invariance ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Invariance ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an {{w|Invariant (mathematics)|invariant}} of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an {{w|Invariant (mathematics)|invariant}} of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Example ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Consider [[baldy]], the temperament tempering out 225/224, 325/324, and 640/637 in the 2.9.5.7.13 subgroup. This is every other step of [[garibaldi|garibaldi/cassandra]] in the 13-limit, without prime 11. With normalized generators ~2 and ~9, the gencom is [2 9; 225/224 325/324 640/637]. Converting it to a matrix of monzos, we get [{{monzo| 1 0 0 0 0 0 }}, {{monzo| 0 2 0 0 0 0 }}; {{monzo| -5 2 2 -1 0 0 }}, {{monzo| -2 -4 2 0 0 1 }}, {{monzo| 7 0 1 -2 0 -1 }}]. Taking the pseudoinverse and canonicalizing it, the extended gencom mapping is found to be [{{val| 1 0 15 25 0 28 }}, {{val| 0 1/2 -4 -7 0 10 }}, {{val| 0 0 2 3 0 4 }}, {{val| 0 0 -1 -2 0 3 }}, {{val| 0 0 -1 -2 0 2 }}]. Since this is a rank-2 temperament, the gencom mapping is the first two row thereof, {{mapping| 1 0 15 25 0 28 | 0 1/2 -4 -7 0 10 }}. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;With this mapping we can insert the monzo of 9, {{monzo| 0 2 }}, to the mapping and see it is represented by +1 generator step. Further, we can see prime 3, not in the subgroup, must be &quot;1/2&quot; generator step. Through the same process we find prime 5 is -4 steps and prime 7 is -7 steps, which correspond to -8 and -14 steps of garibaldi. Prime 11 is not in the temperament so it is signified by &quot;0&quot; steps. Finally, prime 13 is +10 steps, corresponding to +20 steps of garibaldi/cassandra. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;For a more complicated case let us consider [[edson]], the temperament tempering out 196/195, 352/351, and 364/363 in the 2.3.7/5.11/5.13/5 subgroup. Using normalized generators ~2 and ~3, its gencom mapping is {{mapping| 1 0 -49/4 -9/4 19/4 39/4 | 0 1 29/4 5/4 -11/4 -23/4 }}. Like before, we can see 7/5 is mapped to -6 generator steps by inserting its monzo {{monzo| 0 0 -1 1 }} to the mapping. However, if we insert the monzo of 625, {{monzo| 0 0 4 }}, it will also return a seemingly meaningful +29 steps as a result, but 625 is not in the subgroup to begin with. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=156838&amp;oldid=prev</id>
		<title>FloraC: Sectioning. +relation to sval mapping</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=156838&amp;oldid=prev"/>
		<updated>2024-09-28T13:08:27Z</updated>

		<summary type="html">&lt;p&gt;Sectioning. +relation to sval mapping&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:08, 28 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &amp;#039;&amp;#039;&amp;#039;gencom&amp;#039;&amp;#039;&amp;#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperment. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A &amp;#039;&amp;#039;&amp;#039;gencom&amp;#039;&amp;#039;&amp;#039; is a list of generators for a [[temperament]] followed by commas for the temperament, in a specific order. The generators are [[transversal generators]], meaning rational intervals belonging to the JI group the temperament tempers, which it tempers to generators for the temperment. The gencom is denoted [generator list; comma list], with a semicolon between the generators and the commas. For instance, [16/15 25/24; 81/80] is a gencom for [[5-limit]] meantone. On the other hand, the exact same intervals with a different placement of the semicolon is a gencom for 5-limit JI: [16/15 25/24 81/80;], and another, [16/15; 25/24 81/80] gives 5-limit [[7edo|7et]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a matrix. The group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &#039;&#039;p&#039;&#039;-limit group]], as in the example above, the matrix is a [[Wikipedia: Unimodular matrix|unimodular matrix]]. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &#039;&#039;r&#039;&#039; is the [[rank]] of the temperament, then the first &#039;&#039;r&#039;&#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &#039;&#039;p&#039;&#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &#039;&#039;r&#039;&#039; rows we call the &#039;&#039;&#039;gencom mapping&#039;&#039;&#039;, and which in its entirety we call the &#039;&#039;&#039;extended gencom mapping&#039;&#039;&#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &#039;&#039;p&#039;&#039;-limit. However in all cases the transpose &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pesudoinverse &lt;/del&gt;of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The reason for putting the generators together with the commas is that notating the gencom as a list of [[monzo]]s allows it to be treated as a matrix. The group of intervals generated by the gencom is the same no matter how we place the semicolon, and so is the matrix. When this group is a [[harmonic limit|full &#039;&#039;p&#039;&#039;-limit group]], as in the example above, the matrix is a [[Wikipedia: Unimodular matrix|unimodular matrix]]. Inverting and transposing it gives a matrix whose rows are [[val]]s; if &#039;&#039;r&#039;&#039; is the [[rank]] of the temperament, then the first &#039;&#039;r&#039;&#039; rows are the [[mapping|mapping matrix]] corresponding to the generator transversal. More interesting is the case where the gencom generates a [[Just intonation subgroups|JI subgroup]] of some &#039;&#039;p&#039;&#039;-limit. In all cases the transpose of the [[pseudoinverse]] of the matrix of monzos gives a matrix of vals whose first &#039;&#039;r&#039;&#039; rows we call the &#039;&#039;&#039;gencom mapping&#039;&#039;&#039;, and which in its entirety we call the &#039;&#039;&#039;extended gencom mapping&#039;&#039;&#039;. The extended gencom mapping is only a unimodular matrix, and the inversion ordinary matrix inversion, in the case of the full &#039;&#039;p&#039;&#039;-limit. However in all cases the transpose &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pseudoinverse &lt;/ins&gt;of the gencom matrix is the extended gencom mapping, and the transpose pseudoinverse of the extended mapping is the gencom matrix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The rows of the extended gencom mapping are in general fractional vals, meaning the coefficients are allowed to be rational numbers. When applied to elements of the subgroup generated by the gencom, these fractional vals always return an integer value, which gives the number of times the corresponding generator or comma appears in the expression of the interval in terms of the gencom&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; the gencom mapping applied to a [[subgroup basis matrix]] is a matrix of generator steps in terms of [[smonzos and svals|subgroup vals (svals)]], which is exactly the sval mapping&lt;/ins&gt;. However, the converse is not the case: if the gencom mapping returns integer values, it does not mean the interval must belong to the gencom subgroup.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an invariant of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &#039;&#039;q&#039;&#039; is in the group of the temperament. Suppose [&#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;), &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) must be an integer, and moreover we must have &#039;&#039;q&#039;&#039; = &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · … · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Invariance ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{w|Invariant (mathematics)|&lt;/ins&gt;invariant&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}} &lt;/ins&gt;of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &#039;&#039;q&#039;&#039; is in the group of the temperament. Suppose [&#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;), &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) … &#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) must be an integer, and moreover we must have &#039;&#039;q&#039;&#039; = &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;) · … · &#039;&#039;c&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt;^&#039;&#039;v&#039;&#039;&amp;lt;sub&amp;gt;&#039;&#039;n&#039;&#039;&amp;lt;/sub&amp;gt; (&#039;&#039;q&#039;&#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>FloraC</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=104118&amp;oldid=prev</id>
		<title>Fredg999 category edits: Categories</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=104118&amp;oldid=prev"/>
		<updated>2023-03-02T03:47:09Z</updated>

		<summary type="html">&lt;p&gt;Categories&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 03:47, 2 March 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an invariant of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Converting a gencom to a [[Normal lists #Normal interval list|normal interval list]] gives a canonical form for the subgroup, which is an invariant of the temperament. Doing the same to just the commas produces another invariant, and together these determine the temperament: it is the unique temperament on the given group tempering out the given commas. The normal list defined by the generators alone is not an invariant of the temperament, since the generators give only a transversal for the tempered intervals of the temperament, not the full set of intervals being tempered. Hence, for instance, [2 40/27; 81/80] and [2 3/2; 81/80] both define 5-limit meantone, but the normal list for [2 40/27] is 2.27/5 and for [2 3/2] is 2.3. However, the extended gencom mapping can be used to determine if an interval &amp;#039;&amp;#039;q&amp;#039;&amp;#039; is in the group of the temperament. Suppose [&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;] is a gencom and [&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;] is the corresponding extended mapping. Then each of &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;), &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) … &amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) must be an integer, and moreover we must have &amp;#039;&amp;#039;q&amp;#039;&amp;#039; = &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;) · … · &amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;^&amp;#039;&amp;#039;v&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; (&amp;#039;&amp;#039;q&amp;#039;&amp;#039;). This provides sufficient conditions as well as necessary ones.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Gencom]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Regular temperament theory]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Theory]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Fredg999 category edits</name></author>
	</entry>
	<entry>
		<id>https://en.xen.wiki/index.php?title=Gencom&amp;diff=88138&amp;oldid=prev</id>
		<title>Fredg999 category edits: Moving from Category:Temperament to Category:Regular temperament theory using Cat-a-lot</title>
		<link rel="alternate" type="text/html" href="https://en.xen.wiki/index.php?title=Gencom&amp;diff=88138&amp;oldid=prev"/>
		<updated>2022-03-01T02:20:05Z</updated>

		<summary type="html">&lt;p&gt;Moving from &lt;a href=&quot;/w/Category:Temperament&quot; title=&quot;Category:Temperament&quot;&gt;Category:Temperament&lt;/a&gt; to &lt;a href=&quot;/w/Category:Regular_temperament_theory&quot; title=&quot;Category:Regular temperament theory&quot;&gt;Category:Regular temperament theory&lt;/a&gt; using &lt;a href=&quot;/index.php?title=C:Help:Cat-a-lot&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;C:Help:Cat-a-lot (page does not exist)&quot;&gt;Cat-a-lot&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 02:20, 1 March 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Gencom]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Gencom]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Generator]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Temperament&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Regular temperament theory&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Theory]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Theory]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Fredg999 category edits</name></author>
	</entry>
</feed>