An excerpt from the Book III of "The Harmony of the World by Johannes Kepler"
(an English translation of "Harmonices Mundi", latin original published
at Linz, 1619) translated with an Introduction and Notes by E.J. Aiton,
A.M. Duncan, and J.V. Field, published by American Philosophical Society;
April 1997, (Memoirs of the American Philosophical Society, Vol 209).
On page 163, chapter II of the book III, we have:
Corollaries
I. The harmonic divisions of a single string are seven in number,
not more.
II. The expansion of the numbers which are characteristic of divisions
occurs in the following manner. To begin with, the whole is expressed
in the form of a fraction, that is to say with unity above as numerator,
and unity below for denominator. Then each number separately is put as
a numerator, and the sum of the two is put as a denominator in each case.
Hence from any given fraction two branches arise, until from the sum
occurs the number which indicates an unconstructible figure.
__ 1/6 ..... 7
1/5 __
.. 5/6 ..... 11
1/4
/ ..
/ 4/5 ............ 9
1/3
\
/ \
/ 3/4 ................... 7
/
1/1 -- 1/2
. \
. \ 2/5 ................... 7
. \ /
. /
. 2/3
. \ 3/8 ............ 11
. \ ..
. 3/5
. ..
. 5/8 ............ 13
.
.
.
.
.
-- 1/2 Same
I found these seven divisions of the string first with hearing as guide,
in other words the same number as there are harmonies not greater
than a single diapason (= octave). After that I dug out the causes
both of the individual divisions and of the number of the total,
not without toil, from the deepest fountains of geometry. Let the
diligent reader read what I wrote about these divisions 22 years
ago in The Secret of the Universe (Mysterium cosmographicum),
Chapter XII (*), and ponder how in that passage I was under a delusion
about the causes of the divisions and the harmonies, mistakenly
striving to deduce their number and the reasons from the number
of the five regular solid bodies; whereas the truth is rather that
both the five solid figures and the musical harmonies and divisions
of the string have a common origin in the regular plane figures.
The footnote 58 of the translators:
The seven harmonic divisions were illustrated in exactly the same way
as here in the Mysterium cosmographicum, Chapter 12.
At that time, as he relates, Kepler attempted to derive the harmonies
from the regular solids but later found the causes of the harmonies
in the constructible polygons. Evidently he had expected to find
inspiration in Ptolemy's Harmonica but when he was eventually
able to read the work, he found that his own theory of the causes
of the harmonies was wholly original.
On page 161, Chapter II of the Book III, the footnote 55
of the translators:
The foregoing propositions established divisions of the
string which produce all the consonances; that is,
unison (1:1), octave (1:2), fourth (3:4), fifth (2:3),
major third (4:5), minor third (5:6), major sixth (3:5),
and minor sixth (5:8). The following propositions will
show that there are no further harmonic divisions of
the string. This is essential to Kepler's theory,
for such further divisions would introduce dissonances.
On page 178: "This therefore, is the origin of the dissonant
melodic intervals, to which we shall give their names a little later on."
Associated footnote 72 by translators:
The reader may find it more convenient to have the names
at this point. They are major tone (8:9), minor tone (9:10),
semitone (15:16), and diesis (24:25).
------------------------------------------------------------------------------
Antti Karttunen's notes:
In OEIS-terms we proceed each branch of the fraction-tree A020651/A086592,
until we encounter a denominator which belongs into
A004169: 7,9,11,13,14,18,19,21,...,
"Regular polygons not constructible with ruler and compass".
Thus we get 14 fractions in all:
allfracs := [1/1,1/2,1/3,2/3,1/4,3/4,2/5,3/5,1/5,4/5,3/8,5/8,1/6,5/6];
We can "coerce" them to the range [1/2,1] with the following
function (written as a Maple procedure):
coerce_to_range_half_to_one := proc(r) option remember;
if(r < 1/2) then coerce_to_range_half_to_one(2*r);
else if(r > 1) then coerce_to_range_half_to_one(r/2); else (r); fi;
fi;
end;
Mapping each through coerce_to_range_half_to_one and after
discarding the duplicates:
convert(sort(map(coerce_to_range_half_to_one,allfracs)),set);
we get the following set of eight intervals (see the footnote 55 above):
{1, 1/2, 2/3, 3/4, 3/5, 4/5, 5/8, 5/6}
--------------------------------------
To see that A020651 really gives the numerators, and A086592
which is a bisection of A020650 (or equally: the termwise sum
of A020650 and A020651) gives the denominators,
we notice that the numerators and denominators for the
above tree are given by the following mutually recursive formulae.
(We scan its levels from 1/2 onward in top-down fashion, so that the
upper edge 1/2, 1/3, 1/4, 1/5, 1/6, ... gets the indices 1,2,4,8,16,...).
num(1) = 1
num(2n) = num(n)
num(2n+1) = den(n)
den(1) = 2
den(2n) = den(n)+num(n)
den(2n+1) = den(n)+num(n)
On the other hand, David Wilson defines A020650 and A020651 as
Numerators and Denominators in recursive bijection
from positive integers to positive rationals;
where the bijection is f(1) = 1, f(2n) = f(n)+1, f(2n+1) = 1/(f(n)+1).
Here one has to assume that the numerators and denominators are
given in their reduced form, i.e. that A020650(n) and A020651(n)
are ALWAYS relatively prime.
(The terms given in OEIS fulfill this condition, and their
definition does not give any reason to suspect otherwise).
Then f(n) = A020650(n)/A020651(n) [by definition]
f(2n) = A020650(n)/A020651(n) + A020651(n)/A020651(n)
f(2n+1) = A020651(2n)/A020650(2n),
i.e. A020650(2n+1) = A020651(2n) and A020651(2n+1) = A020650(2n)
and because gcd(A020650(n),A020651(n)) is always 1, we have
also A020650(2n) = A020650(n)+A020651(n)
and A020651(2n) = A020651(n).
Thus, summa summarum, the recurrences for A020650 and A020651 are:
A020650(1) = 1
A020650(2n) = A020650(n)+A020651(n)
A020650(2n+1) = A020651(2n) = A020651(n)
A020651(1) = 1
A020651(2n) = A020651(n)
A020651(2n+1) = A020650(2n)
Furthermore,
if we mark f(2n) = X/Y, (with gcd(X,Y) = 1)
then f(2n+1) = Y/X
and f(4n) = (X+Y)/(Y+Y)
and f(4n+2) = f(2(2n+1)) = (Y+X)/(X+X)
implying that
A020650(4n) = A020650(4n+2) for all n >= 1.
Then, let's make an induction hypothesis that
den(n) = A020650(2n) up to some value k of n.
This implies immediately that num(n) = A020651(n) (up to that same k)
and furthermore, we have:
den(2n) = den(n)+num(n) [by den's definition]
= A020650(2n)+A020651(n) [by the ind. hypoth. and its implication]
= A020650(2n)+A020651(2n) [by A020651's definition]
= A020650(4n) [by A020650's definition]
den(2n+1) = den(n)+num(n) [by den's definition]
= A020650(4n) [... as before]
= A020650(4n+2) [proved above]
Thus if we know that our hypothesis is true for all n's in range [1,k]
then it will be true also for all n's in range [k+1,2k+1],
and this observation completes the strong induction.
Furthermore, Kepler's fraction tree gives a bijection from the natural
numbers to rationals in range ]0,1], and this can be proved by just
slightly modifying Wilf's & Calkin's proof in their paper Recounting the Rationals,
which concerns "Stern's diatomic series" A002487.
Their tree is defined so that the fraction 1/1 is at the top of the tree,
and each vertex i/j has two children: its left child is i/(i+j) and
its right child is (i+j)/i.
In contrast, Kepler's tree from 1/2 downward can be defined so that
the fraction 1/2 is at the top, and each vertex i/j has to children:
its left child is i/(i+j) and its right child is j/(i+j).
Now, modifying Wilf's & Calkin's proof we have, almost verbatim:
1. The numerator and denominator at each vertex are relatively prime.
This is certainly true at the top vertex (1/2). Otherwise, suppose r/s is
a vertex on the highest possible level of the tree for which this is
false. If r/s is a left child, then its parent is r/(s-r), which would
clearly also not be a reduced fraction, and would be on a higher level,
a contradiction. If r/s is a right child, then its parent is (s-r)/r,
which leads to the same contradiction.
2. Every reduced positive rational number in range ]0,1] occurs at some vertex.
Note first that because of the construction algorithm no rationals r/s,
where r > s, can occur in Kepler's tree.
The rational number 1 certainly occurs (at the "pre-root", before 1/2).
Otherwise, let r/s be, among all fractions that do not occur, one
of the smallest denominator, and among those the one of smallest numerator.
As r < s then (s-r)/s is a valid fraction in range ]0,1], but it
cannot occur either, else one of its children would be r/s, and we see
that the numerator of the former is smaller, the denominator being the same,
a contradiction.
(Similarly r/(s-r) cannot occur either, else one of its children
would be r/s, and the former has a smaller denominator, again
a contradiction.)
3. No reduced positive rational number occurs at more than one vertex.
First, the rational number 1 occurs only at the "pre-root" vertex of the
tree, for if not, it would be a child of some vertex r/s. But the children
of r/s are r/(r+s) and s/(r+s), neither of which can be 1.
Otherwise, among all reduced rationals that occur more than once,
let r/s have the smallest denominator, and among these, the smallest
numerator. As r < s, then r/s is a left child of two distinct vertices,
at both of which r/(s-r) lives, contradicting the minimality of
the denominator.
To do: Induce a few nice permutations between these various
Stern-Brocot tree variants (and their halves).
See http://www.research.att.com/~njas/sequences/stern_brocot.html
plus the diagram at http://www.cut-the-knot.org/blue/chaos_game.shtml
(which gives the map between A007305/A047679 and A002487[n]/A002487[n+1]
I think).
Similarly, a bijection between A007305/A047679 & A020650/A020651
and A002487[n]/A002487[n+1] & A020650/A020651
and A007305/A007306 (Left-hand side of standard SB) & A020651/A086592 (Kepler's tree).
------------------------------------------------------------------------------
More Kepler-quotations.
See also: J. Gibbons, D. Lester, R. Bird, Enumerating the Rationals