back to list

What the hell we are talking about

🔗genewardsmith <genewardsmith@sbcglobal.net>

5/8/2010 9:23:20 PM

If we work on the thing below, perhaps we can all get on the same page and also have something we can stick in the files section to explain what the hell we are talking about around here.

===

The p-limit abelian group of positive rational numbers may be written in exponent or "monzo" form as a list of integers |e2 e3 ... ep> where ep is the exponent of the prime p in the prime factorization. It is a free abelian group of rank pi(p), the number of primes up to p. The dual free abelian group is the group of vals, which map rational numbers to integers, and which we may write in bra-ket style as
<v2 v3 ... vp|.

If we put vector space norms onto monzos and vals, we may embed them in a real vector space of dimension pi(p), where they become lattice points. One norm we may place on monzos is the Tenney norm, which is

|| |e2 e3 ... ep> || = |log2(2)|+|log2(3)e3|+...+|log2(p)ep|

The corresponding norm on vals would then be

|| <v2 v3 ... vp| || = max(|v2/log2(2)|, v3/log2(3), ... vp/log2(p))

We may change coordinates by multiplying through the exponents of the monzos by log2(prime), and dividing the coordinates of the vals by log2(prime), so that the norms become standard L1 and L-infinty norms, respectively. With these norms, the monzos form a lattice in Tenney (p-limit) interval space, and the vals a lattice in Tenney (p-limit) tuning space. Because of the mathematical advantages of Euclidean (L2) norms, we also want to form Euclidean interval space and Euclidean tuning space, which take the same normalized coordinates as the Tenney spaces, but apply the standard Euclidean norm to them. Now the vals and monzos are both honest Euclidean lattices.

If T is a vector in tuning space, and M a vector in interval space, then T(M), or equivalently <T|M>, is a real number giving the value in octaves, or else the integer (in case these are monzos and vals) M is mapped to by T. Of particular note is the JI point J = <1 1 1 ... 1| in tuning space, as when M is a (weighted) monzo, J(M) is the value log2 (in octaves) of the corresponding interval. If we take a ball around J with radius e, we may consider everything in the ball to be an approximate tuning map. Here e is left unspecified but may not be too large. While vals correspond to points in tuning space, they are too far from J to be considered tuning maps. However, if we take the projective val, consisting of all points through the origin (k*v scalar products of real numbers k times the val v) then these may pass close to J. The usual definition of the distance from a point to a line in a normed vector space is the minimum distance, so projective vals have a canonically defined distance measure to J.

In Tenney tuning space, if we pick the closest point on the projective val to J we get the TOP tuning map, and the distance from the projective val to J is the TOP error. The corresponding object in Euclidean val space is the TOP-RMS tuning map, and the Euclidean distance is the TOP-RMS error.

These tuning maps are close to J, and hence their norms are close to J. If we divide through so as to make the norm precisely that of J, we can now regard J and these normalized tuning maps as projective objects, and the Euclidean distance between them is a chordal distance on the n-sphere with center the origin and radius the norm of J. Hence it is closely allied to the sine of the angle between them, which we could also use as a metric, and to || V^J ||/||J||^2, where V is the normalized projective val serving as a tuning map, and the product is a wedge product, with the standard Euclidean norm on it. This is a move which really only makes sense in Euclidean space, so we've left the Tenney version behind here. Graham has suggested ||V^J||/||J|| makes a good badness measure for projective vals, which extends itself in the natural way to projective multivals. There is, of course, a slightly different tuning optimization allied with this plan.

🔗Carl Lumma <carl@lumma.org>

5/9/2010 1:59:37 AM

Gene wrote:

>If we work on the thing below, perhaps we can all get on the same page
>and also have something we can stick in the files section to explain
>what the hell we are talking about around here.

A central place where definitions could be kept and updated as
discussions progress would be useful. Without it, conclusions reached
in discussion are too easily misplaced/forgotten.

I was just thinking about the ideal interface for such a thing earlier
today. But since it doesn't exist, why don't we just use the
xenharmonic wiki?
http://xenharmonic.wikispaces.com

Hm, might need something more dedicated. I dunno.

>The p-limit abelian group of positive rational numbers may be written
>in exponent or "monzo" form as a list of integers |e2 e3 ... ep> where
>ep is the exponent of the prime p in the prime factorization. It is a
>free abelian group of rank pi(p), the number of primes up to p. The
>dual free abelian group is the group of vals, which map rational
>numbers to integers, and which we may write in bra-ket style as
><v2 v3 ... vp|.
>
>If we put vector space norms onto monzos and vals, we may embed them
>in a real vector space of dimension pi(p),

Should this be plural -- real vector spaces?

>where they become lattice points. One norm we may place on monzos is
>the Tenney norm, which is
>
>|| |e2 e3 ... ep> || = |log2(2)|+|log2(3)e3|+...+|log2(p)ep|

First term should be |log2(2)e2| ? Also, let's not call it a
Tenney norm, let's call it a taxicab norm on a Tenney-weighted space.

>The corresponding norm on vals would then be
>
>|| <v2 v3 ... vp| || = max(|v2/log2(2)|, v3/log2(3), ... vp/log2(p))
>
>We may change coordinates by multiplying through the exponents of the
>monzos by log2(prime), and dividing the coordinates of the vals by
>log2(prime), so that the norms become standard L1 and L-infinty norms,
>respectively.

Already done above? If so, move this up, possibly showing the raw
norms even earlier, e.g.

|| |e2 e3 ... ep> || = |e2|+|e3|+...+|ep|

>With these norms, the monzos form a lattice in Tenney
>(p-limit) interval space, and the vals a lattice in Tenney (p-limit)
>tuning space. Because of the mathematical advantages of Euclidean (L2)
>norms, we also want to form Euclidean interval space and Euclidean
>tuning space, which take the same normalized coordinates as the Tenney
>spaces, but apply the standard Euclidean norm to them. Now the vals
>and monzos are both honest Euclidean lattices.
>
>If T is a vector in tuning space, and M a vector in interval space,
>then T(M), or equivalently <T|M>, is a real number giving the value in
>octaves, or else the integer (in case these are monzos and vals) M is
>mapped to by T.

Slightly awkward. Describe the integer case with the unweighted
norms above; keep the real number bit here.

>Of particular note is the JI point J = <1 1 1 ... 1|
>in tuning space, as when M is a (weighted) monzo, J(M) is the value
>log2 (in octaves) of the corresponding interval. If we take a ball
>around J with radius e, we may consider everything in the ball to be
>an approximate tuning map. Here e is left unspecified but may not be
>too large. While vals correspond to points in tuning space, they are
>too far from J to be considered tuning maps.

This seems to tie in with what I just asked you about JIP vs. JIL.
All decent vals should be near the JIL, eg <31 30.91556 31.00871|
is near <31 31 31| (weighted) or <31 49.13384 71.97977| is near
<31 49 72| (unweighted).

>However, if we take the projective val, consisting of all points
>through the origin (k*v scalar products of real numbers k times
>the val v) then these may pass close to J. The usual definition of
>the distance from a point to a line in a normed vector space is the
>minimum distance, so projective vals have a canonically defined
>distance measure to J.

Ah, perhaps this is the better direction to do it; since we want
to tune a particular temperament we have to stay on its line
(or plane).

>In Tenney tuning space, if we pick the closest point on the projective
>val to J we get the TOP tuning map, and the distance from the
>projective val to J is the TOP error. The corresponding object in
>Euclidean val space is the TOP-RMS tuning map, and the Euclidean
>distance is the TOP-RMS error.

I think these are both Tenney tuning spaces, just that one has
a taxicab norm and the other a Euclidean norm.

>These tuning maps are close to J, and hence their norms are close to
>J. If we divide through so as to make the norm precisely that of J, we
>can now regard J and these normalized tuning maps as projective
>objects, and the Euclidean distance between them is a chordal distance
>on the n-sphere with center the origin and radius the norm of J. Hence
>it is closely allied to the sine of the angle between them, which we
>could also use as a metric, and to || V^J ||/||J||^2, where V is the
>normalized projective val serving as a tuning map, and the product is
>a wedge product, with the standard Euclidean norm on it. This is a
>move which really only makes sense in Euclidean space, so we've left
>the Tenney version behind here. Graham has suggested ||V^J||/||J||
>makes a good badness measure for projective vals, which extends itself
>in the natural way to projective multivals. There is, of course, a
>slightly different tuning optimization allied with this plan.

No comment. :)

-Carl