Meet and join: Difference between revisions

Mike Battaglia (talk | contribs)
added poset properties for subgroup temperaments, cleaned up formatting
m Markup
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Expert|Temperament merging}}
Meet and join are a pair of binary operations which combine two [[abstract regular temperament]]s on a JI group G into another temperament on G. The operations are commutative and associative. More concretely, for any of the standard ways of representing an abstract regular temperament (normal val lists, normal comma lists, wedgies, Frobenius projection maps, and reduced row echelon form) we can regard them as taking any pair of such defined on G and producing another also defined on G.
Meet and join are a pair of binary operations which combine two [[abstract regular temperament]]s on a JI group G into another temperament on G. The operations are commutative and associative. More concretely, for any of the standard ways of representing an abstract regular temperament (normal val lists, normal comma lists, wedgies, Frobenius projection maps, and reduced row echelon form) we can regard them as taking any pair of such defined on G and producing another also defined on G.


Notably, the notion of meet and join can also be extended to an arbitrary pair of subgroup temperaments, even if on different subgroups.
There are actually two different notions of meet and join, depending on if one is "joining" the kernels of the two temperaments, or the subgroups of supporting vals. The two satisfy duality relationships in that the "join" in one convention is the meet in the other. Both conventions are presented below, as well as the larger picture of how they interrelate.
 
Both notions of meet and join can also be extended to an arbitrary pair of subgroup temperaments, even if on different subgroups, also explained below.


__TOC__
__TOC__


== Mathematical Preliminaries ==
== Mathematical preliminaries: join and meet of subgroups ==
In general, the meet and join are defined for any two subgroups of some group. The '''meet''' of two subgroups is their intersection, and the '''join''' of two subgroups is the smallest subgroup generated by both. The terms "meet" and "join" come from order theory; the subgroups of a group form a lattice, called the [https://en.wikipedia.org/wiki/Lattice_of_subgroups lattice of subgroups], where here "lattice" means [https://en.wikipedia.org/wiki/Lattice_(order) lattice in the order theory sense]; "trellis" in French, "Verband" in German.
In general, given some group G, the subgroups of G form an order-theoretic structure called a [https://en.wikipedia.org/wiki/Lattice_of_subgroups lattice of subgroups], where here "lattice" means [https://en.wikipedia.org/wiki/Lattice_(order) lattice in the order theory sense]; "treillis" in French, "Verband" in German. A lattice is a partially ordered set in which for two subgroups A and B of group G, we have A ≤ B iff A is itself a subgroup of B.
 
Given two subgroups A and B, the '''join''' of A and B is the smallest subgroup of G containing both; this is sometimes also called the '''subgroup generated by A and B.''' The '''meet''' of A and B is the intersection of both.
 
Note that in this definition, it doesn't matter what kind of group G is - it could represent musical intervals, or vals, or anything (it need not even be abelian). When working with temperaments, we have at least two relevant groups - the group of vanishing commas, and the group of supporting vals - both of which have a relevant lattice of subgroups. As we will see, we will get two different notions of meet and join based on which one we'd like to do.
 
== Intra-subgroup temperament meet and join ==
 
Given some JI group G and dual group of vals G^, each temperament of G can be defined either as a subgroup of supporting vals within G^, or a subgroup of vanishing commas within G, also called a kernel. We will get two different notions of "meet" and "join" depending on if we are joining the kernels or the supporting vals. These are basically identical except the meaning is swapped; a join of vals is equal to a meet of kernels and so on.


Thus, given some JI group G, we can look at the subgroups of [[Smonzos and Svals|smonzos]], each of which can be thought of as a kernel for a temperament. These kernels define the commas of the temperaments of G and form a lattice in the aforementioned order-theoretic sense. Or, equivalently and dually, we could also look at the lattice of subgroups of the dual group G^ of svals, for which the subgroups can be thought of as corresponding to the supporting vals of some temperament and thus also define the temperaments of G. Either is sufficient and both form a lattice of subgroups.
Given two temperaments A and B of group G, the '''kernel-join''' or '''val-meet''' of A and B is formed by taking the join of the kernels of A and B, or, equivalently, the intersection of the supporting vals of both. The resulting temperament, in terms of commas, tempers out those commas either in A ''or'' B, as well as any linear combination thereof. In terms of vals, it is supported by only those vals that support both A ''and'' B. It can be computed by starting with the normal comma lists of A and B, and reducing to a normal comma list the concatenation of A and B, which is to say, the Hermite reduction of the list of commas of A with the commas of B.


== Intra-Subgroup Temperament Meet and Join ==
Similarly, the '''kernel-meet''' or '''val-join''' of A and B is formed by taking the meet of the kernels of A and B, and thus equivalently, the join of the supporting vals of both. The resulting temperament, in terms of commas, tempers out only those commas tempered in both A ''and'' B, and in terms of vals, is supported by any linear combination of vals supporting either A ''or'' B. Dually to the above, we can compute this by taking the normal val lists for A and B, concatenating, and Hermite-reducing to another normal val list.


Given two temperaments A and B, then, the '''join''' A ⊔ B is formed by simply "join"ing their kernels in the aforementioned sense. If A and B are defined in terms of normal comma lists, the join is the reduction to a normal comma list of the concatenation of A and B, which is to say, the Hermite reduction of the list of commas of A with the commas of B. If A and B are instead defined in terms of vals, the join is formed by taking the intersection of the supporting vals of A and B, which can also be expressed as a normal val list. The join of A and B, in terms of commas, tempers out those commas either in A ''or'' B, as well as any linear combination thereof. In terms of vals, it is supported by only those vals that support both A ''and'' B.
The kernel-join/val-meet of two temperaments A and B is the "simplest" temperament that supports both A and B, in the sense that it only tempers out the minimum set of commas required to support both. Similarly, the kernel-meet/val-join is the "most complex" temperament that is supported by both A and B, in the sense that it tempers out as many commas as possible that the kernels of A and B have in common.


Similarly, the '''meet''' A ⊓ B is defined by taking the intersection of the kernels of A and B. The meet of A and B, in terms of vals, tempers out only those commas tempered in both A ''and'' B, and in terms of vals, is supported by linear combination of vals supporting either A ''or'' B. If A and B are defined by vals, the meet A ⊓ B is defined by taking the normal val list for A and that of B, concatenating them, and reducing the result to a normal interval list. Since temperaments expressed as normal val lists can be converted to temperaments expressed as normal interval lists and back again via the [[dual list]] function, we can also us this to compute the normal comma list for the meet.
This definition assumes both A and B have no torsion or contorsion, and that torsion/contorsion is removed after taking the meet/join; otherwise the definition is more complicated.


== Inter-Subgroup Temperament Meet and Join ==
== Inter-subgroup temperament meet and join ==


If A and B are two temperaments on different subgroups, then there are similarly two natural operations that we can use to combine them: informally, we can look for the "largest" temperament supported by both, and the "smallest" temperament that supports both, in a sense to be made precise below.
If A and B are two temperaments on different subgroups, then there are similarly two natural operations that we can use to combine them: informally, we can look for the "largest" temperament supported by both, and the "smallest" temperament that supports both, in a sense to be made precise below.


The first is found by taking the intersection of the two temperaments' subgroups and the intersection of the two temperaments' kernels, independently, producing another subgroup temperament. This is the '''meet''' of the two subgroup temperaments, which reduces to the prior definition of the meet if the two subgroups are equal. The meet is the "largest" temperament that both A and B support, in the sense that any other temperament that both A and B support is also supported by the meet. Every comma tempered out by ''both'' A and B is also tempered out in the meet, and vice versa.
We can take the intersection of the two temperaments' subgroups, and the intersection of the two temperaments' kernels, independently, to form the '''kernel-meet'''/'''val-join''' of both temperaments, which reduces to the prior definition of the meet if the two subgroups are equal. The kernel-meet/val-join is the "largest" temperament that both A and B support, in the sense that any other temperament that both A and B support is also supported by the kernel-meet. Every comma tempered out by ''both'' A and B is also tempered out in the kernel-meet, and vice versa.
 
Similarly, we can take the join of both subgroups and kernels to get the '''kernel-join'''/'''val-meet'''. The kernel-join is the "smallest" temperament that supports both A and B, in the sense that if any other temperament also supports both A and B, it supports the kernel-join. Every comma tempered out by ''either'' A or B is also tempered out in the kernel-join, and vice versa.


The second is found by extending the two subgroups to the simplest subgroup which includes both, and then repeating with the two kernels. This is the '''join''' of the two subgroup temperaments. The join is the "smallest" temperament that supports both A and B, in the sense that if any other temperament also supports both A and B, it supports the join. Every comma tempered out by ''either'' A or B is also tempered out in the join, and vice versa.
These definitions assume that both A and B have no torsion or contorsion and that such things are removed after either type of join or meet; if one desires to keep torsion and contorsion the definitions get much more complicated.


== Poset Properties ==
== Poset properties ==
The operations of join and meet give the set of temperaments the structure of a partially ordered set, sometimes called a [[Wikipedia:Partially_ordered_set|poset]].


=== Same Subgroup ===
=== Same subgroup ===
Given that the set of temperaments of some subgroup G forms an order-theoretic lattice, we can look at the resulting poset and derive some interesting related ideas.
Given that the set of temperaments of some subgroup G forms an order-theoretic lattice, we can look at the resulting poset and derive some interesting related ideas.


There is a partial order on the temperaments of G, given by A ≤ B iff A B = A, or equivalently, A ≤ B iff A B = B. Since A G = G, G is the minimal temperament - it is JI and tempers out no commas. Similarly, if we denote G/G as the "rank-0" temperament of G in which ''everything'' is tempered out, we have that A G/G = G/G, thus G/G is the maximal temperament.  
In the notation below, A & B refers to the "kernel-meet" of A and B, aka the val-join, and A | B refers to the "kernel-join" or val-meet. It does not really matter which convention we choose, as we get the same basic result either way. Historically, using & to join vals has been the predominant convention, with some differences regarding the treatment of contorsion, although phrases like e.g. "2.3.5.7 81/80 & 126/125" have also seen occasional use.
 
There is a partial order on the temperaments of G, given by A ≤ B iff A & B = A, or equivalently, A ≤ B iff A | B = B. Since A & G = G, G is the minimal temperament - it is JI and tempers out no commas. Similarly, if we denote G/G as the "rank-0" temperament of G in which ''everything'' is tempered out, we have that A | G/G = G/G, thus G/G is the maximal temperament.
 
A ≤ B may be expressed by "A is supported by B", in the sense that every comma tempered out by A is also tempered out by B, thus all of the [[essentially tempered chord]]s and [[comma pump]]s from temperament A are also playable in B.
 
If we had gone with the other convention for meet and join, we would have gotten the same result, except this would be flipped: G would now be the maximal temperament and G/G the minimal.
 
In the temperament defined by G, nothing is tempered out, and we may also call it '''JI'''; and in the temperament defined by G/G, everything is tempered out, and we may also call it [[Trivial temperament|'''OM'''<sub>G</sub>]].
 
=== Different subgroups ===
The set of subgroup temperaments also, similarly, forms a lattice, from which we can derive the same basic poset operation above. Again, we have that if A ≤ B iff A & B = A, or equivalently, A ≤ B iff A | B = B. But now, the minimal subgroup temperament is the "trivial subgroup temperament" which has no intervals except for 1/1 and tempers out nothing; we may simply call this subgroup &lt;'''1'''&gt;. For all subgroup temperaments, we have that A & &lt;'''1'''&gt; = &lt;'''1'''&gt;. Similarly, the maximal temperament is Q/Q, meaning the subgroup temperament formed by taking infinite-limit JI and tempering the entire thing out; we may call this '''OM'''.


A ≤ B may be expressed by "A is supported by B", in the sense that every comma tempered out by A is also tempered out by B, thus all of the [[essentially tempered chords]] and [[comma pumps]] from temperament A are also playable in B.
Similarly, if we had gone with the val-join instead of kernel-join, we would have gotten the same result, except the minimal and maximal temperaments would be flipped.


In the temperament defined by G, nothing is tempered out, and we may also call it JI; and in the temperament defined by G/G, nothing is tempered out, and we may also call it [[Trivial temperament|OM<sub>G</sub>]].  
== A note on terminology ==
Originally, the "meet" and "join" of two temperaments was proposed [https://yahootuninggroupsultimatebackup.github.io/tuning-math/topicId_19399.html on the tuning-math list] by Keenan Pepper, who used the terms "meet" and "join" to refer to what is above called the "val-meet" and "val-join," along with the caveat that it doesn't really matter which you call meet or join.


=== Different Subgroups ===
The simple reality is that it is possible to join either vals or kernels, and the relationship between both is significant in its own right, so above is the larger picture of both, and the duality between the two, as that is really what is interesting. Different conventions may be used in different writings, where people can make clear if they are joining vals or kernels.
The set of subgroup temperaments also, similarly, forms a lattice, from which we can derive the same basic poset operation above. Again, we have that if A ≤ B iff A ⊓ B = A, or equivalently, A ≤ B iff A ⊔ B = B. But now, the minimal subgroup temperament is the "trivial subgroup temperament" which has no intervals except for 1/1 and tempers out nothing; we may call this subgroup &lt;1&gt;. For all subgroup temperaments, we have that A ⊓ &lt;1&gt; = &lt;1&gt;. Similarly, the maximal temperament is Q/Q, meaning the subgroup temperament formed by taking infinite-limit JI and tempering the entire thing out; we may call this OM&gt;.


== A Note on Historical Terminology ==
When looking at subgroups on different temperaments, it is a little bit awkward to literally do things in terms of vals, as the svals you are "joining" or "meeting" don't even exist in the same vector space - rather they are *quotients* of the same vector space. It is still possible to do by looking at how you can "co-temper" vals to get svals, but the simpler way to proceed is simply to do everything in terms of subgroups and kernels, define the kernel-meet and kernel-join in the straightforward way as above, and then simply ''define'' the "val-meet" of two subgroup temperaments as equal to the kernel-join and vice versa. As long as the subgroup temperaments you are joining have no torsion or contorsion, and you remove anything like that from the result, all of these things are equivalent.
Originally, the "meet" and "join" of two temperaments was proposed [https://yahootuninggroupsultimatebackup.github.io/tuning-math/topicId_19399.html on the tuning-math list] by Keenan Pepper, who used the opposite convention from the above: the "meet" was the meet of vals (and hence the join of kernels) and vice versa. If the two temperaments are on the same subgroup, one can think about "joining" or "meeting" either their kernels, or the subgroups of supporting vals (the "join" in one convention is the "meet" in the other and so forth), so it makes little difference which convention is chosen (as noted in the tuning-math post above). However, when looking at temperaments on different subgroups, the other convention makes things much more natural, since then the "join" of two temperaments is simply the "join" of kernels and subgroups independently. We have chosen that convention here, although it should be noted that in older emails and posts, the "join" and "meet" were often chosen using the other convention.


In mathematical order theory, meet and join are denoted by ∨ and ∧. We avoid doing that for two reasons; the first is to avoid confusion with the interior and wedge products of multivals. The second is that meet and join are operations on abstract temperaments; ordering by increasing size of the group of commas and decreasing size of the group of vals is regarded and notated as the same.
In mathematical order theory, meet and join are denoted by ∨ and ∧. We avoid doing that for two reasons; the first is to avoid confusion with the interior and wedge products of multivals. The second is that meet and join are operations on abstract temperaments; ordering by increasing size of the group of commas and decreasing size of the group of vals is regarded and notated as the same.


== Examples ==
== Examples ==
Suppose we take G to be the 11-limit group. Then we have the following:
Suppose we take G to be the 11-limit group. Then we have the following, where again | and & are referring to "kernel-join" and "kernel-meet" in this particular usage.


Meantone Meanpop = [&lt;31 49 72 87 107|] = 31, where "31" is the shorthand notation for the 31edo patent val (or, equivalently, its subgroup of vanishing commas).
Meantone | Meanpop = [&lt;31 49 72 87 107|] = 31, where "31" is the shorthand notation for the 31edo patent val (or, equivalently, its subgroup of vanishing commas).


Meantone Meanpop = [&lt;1 0 -4 -13 0|, &lt;0 1 4 10 0|, &lt;0 0 0 0 1|] = &lt;81/80, 126/125&gt;, where &lt;S&gt; for a set of commas S denotes the temperament of the group G tempering out the given commas.
Meantone & Meanpop = [&lt;1 0 -4 -13 0|, &lt;0 1 4 10 0|, &lt;0 0 0 0 1|] = &lt;81/80, 126/125&gt;, where &lt;S&gt; for a set of commas S denotes the temperament of the group G tempering out the given commas.


Meantone Marvel = 31, Meantone Marvel = &lt;225/224&gt;
Meantone | Marvel = 31, Meantone & Marvel = &lt;225/224&gt;


Meantone Porcupine = G/G = OM<sub>G</sub>, Meantone Porcupine = &lt;176/175&gt;
Meantone | Porcupine = G/G = '''OM'''<sub>G</sub>, Meantone & Porcupine = &lt;176/175&gt;


In the 7-limit, that becomes Meantone Porcupine = OM<sub>G</sub>; Meantone Porcupine = OM<sub, hence, we may consider 7-limit meantone and porcupine to be totally unrelated.
In the 7-limit, that becomes Meantone | Porcupine = '''OM'''<sub>G</sub>; Meantone & Porcupine = '''JI''', hence, we may consider 7-limit meantone and porcupine to be totally unrelated.


Miracle Magic = 41, Miracle Magic = Marvel.
Miracle | Magic = 41, Miracle & Magic = Marvel.


In the 7-limit, again Miracle Magic = 41, Miracle Magic = Marvel
In the 7-limit, again Miracle | Magic = 41, Miracle & Magic = Marvel


Miracle Mothra = 31, Miracle Mothra = Portent. In the 7-limit, Miracle Mothra = Gamelan.
Miracle | Mothra = 31, Miracle & Mothra = Portent. In the 7-limit, Miracle & Mothra = Gamelan.


Meantone Magic = OM<sub>G</sub>, Meantone Magic = &lt;225/224&gt;
Meantone | Magic = '''OM'''<sub>G</sub>, Meantone & Magic = &lt;225/224&gt;


Note that in terms of wedgies, Meantone ∧ Magic = &lt;&lt;&lt;&lt;0 1 2 -2 -5||||, which represents Meantone Magic. This is an instance of the general proposition that if A B = OM<sub>G</sub>, then A B is represented by A ∧ B.
Note that in terms of wedgies, Meantone ∧ Magic = &lt;&lt;&lt;&lt;0 1 2 -2 -5||, which represents Meantone & Magic. This is an instance of the general proposition that if A | B = '''OM'''<sub>G</sub>, then A & B is represented by A ∧ B.


== See also ==
== See also ==