The MCM2015 conference for Mathematics and Computation in Music is coming in June, and the submission process has taken up quite a lot of my time recently, which explains the relative inactivity of this blog. But everything is finished now, so here is a new post about topos theory and music.
I want to show here a simple example of another topos, applied to the study of time-spans. We are going to introduce a specific monoid and its action on a particular set
, which therefore defines a functor
. Since the category
is a topos, we are going to calculate its subobject classifier
explicitly and see its use for time-spans. This is a small part in a much larger paper than Moreno Andreatta, Andrée Ehresmann, and my self have submitted to MCM2015, which I will describe in a later post.
A time-span defines a certain duration at a certain point in time. Recall from the previous posts that a time-span, as defined by Lewin, is a couple , with
, and
. The group
acts simply transitively on the set of time-spans, either on the left, by the action of a group element
given by
or on the right, by
We can represent the time-spans graphically. Our reference unit time-span will be represented as such:
Given this unit time-span, here are the time-spans (1,1) and (3,1/2):
We are now going to consider a restricted set of dyadic time-spans, namely the set , where
is the set of the dyadic rationals, i.e. numbers of the form
, where
is an integer, and
is a natural number. This can model time-spans having the duration of a quarter, an eighth, and so on. The time-spans (1,1) and (3,1/2) are examples of dyadic time-spans.
Consider now the monoid whose multiplication law is given by the following equation.
The monoid is generated by the elements
and
and has for presentation
. It can be considered as a discrete monoid version of Lewin’s continuous group of time-span transformations. It is also a monoid analog of the Baumslag-Solitar group
.
Now, consider the action of an element on a dyadic time-span
given by
This defines a functor which belongs to the category of functors
. In the example given above, one transforms the time-span (1,1) into (3,1/2) by the action of the monoid element (2,1/2). The transformation of (3,1/2) into (1,1) is not possible since the monoid only acts by positive translations in time.
The category of functors is a topos, and we can calculate explicitly its subobject classifier
.
For that, we need to calculate the cosieves on the unique object of . It is easy to see that those are of the form
, with
. Indeed, you can check that for any element
, we have
. We also have the empty cosieve
.
The subobject classifier is therefore , where
is a singleton. The first term can be bijectively identified with
, so that
.
The action of the monoid on
is given by
. This can be obtained in a rather straightforward manner by studying the action of the generators
and
. One thus gets:
if
, and 0 otherwise, and
,
for all . The singleton
is a fixed point by the action of
. It corresponds to the value False in our topos, whereas 0 corresponds to the value True.
So what can we do with this information ? First, observe that, for a given , the set
equipped with the same action of
is a subobject
of
. The characteristic map
then sends any element
to
if
, or 0 otherwise. In other words, the characteristic map measures the time period
from a time-span
in units of
.
Let’s look at our small example again, along with the set . We can represent it as such :
The time-span (3,1/2) needs to be translated by three times its duration in order to belong to the set . Thus the characteristic map
sends the time-span (3,1/2) to the set
. Similarly, one can check that the map
sends the time-span (1,1) to the set
.
This topos is rather simple, but I find it nevertheless interesting. First, it gives a precise way to define the distance of a time-span to a given cue in time. Second, it could easily be implemented on a computer and suggests application in automatic music analysis. Last, it shows that monoids can sometimes be more interesting than groups. Indeed the subobject classifier of any functor category where
is a group is rather simple: it has only two elements, and the topos is therefore boolean.