B5) Polymetry and Temporal Structures

BP3’s Superpower

What if a musical grammar could make different temporal flows coexist — like a tabla player who plays in 4 with the right hand and in 3 with the left?

Where does this article fit in?

This article delves into the temporal dimension of BP3 (Bol Processor 3, the algorithmic composition software — see I2). M5 introduced the musical concept of polymetry; B2 defined the vocabulary; B3 formalized the derivation rules. Here, we see how BP3 represents musical time — compression, superposition, cycles — with a simple yet powerful syntax. The details of the translation into SuperCollider code are covered in B7.


Why is this important?

Most musical languages treat time rigidly: a note has a duration, a rest has a duration, and everything adds up sequentially. It’s like a queue: everyone takes their turn, one by one. MIDI, MusicXML, staff notation — all work this way.

But real music doesn’t work like a queue. A tabla player can compress 7 bols into the space of 4 beats. A gamelan ensemble superimposes layers that advance at different speeds. An Indian tāla is not a sequence of measures but a cycle that rotates.

BP3 formalizes these three operations:

  • Compress or dilate a group of notes into a given time
  • Superimpose independent voices, each advancing at its own pace
  • Annotate cyclic rhythmic signatures from non-Western traditions

These are the operations that Bernard Bel developed to represent Indian musical time, and which he formalized in “Rationalizing Musical Time” [Bel2001].

The idea in one sentence

BP3 polymetry allows compressing, dilating, and superimposing note streams with a minimal syntax {M, voice1, voice2}, formalizing the cyclic time that Western notation cannot express.


Let’s explain step by step

1. Monovoice polymetry: compression and dilation

The simplest case is temporal compression: taking N notes and making them fit into M beats.

BP3 Syntax:

{3, dha dhin dhin dha}

 

This expression means: “play the 4 tabla bols dha dhin dhin dha in the space of 3 beats.” Four strokes compressed into three beats — a typical figure in fast tabla playing.

[!Note: The accordion analogy]

Imagine an accordion. The melody (the bols dha dhin dhin dha) is fixed on the keys. But you can stretch or compress the bellows — that’s the temporal ratio. With {3, dha dhin dhin dha}, you compress 4 bols into 3 beats: each bol lasts 3/4 of a beat instead of a full beat. With {6, dha dhin dhin dha}, you stretch: each bol lasts 6/4 = 1.5 beats.

The formula

If you have N elements to play in M beats:

 

duration of each element = M / N

 

This is the only formula in this article, and it’s enough to explain everything.

BP3 Expression N M Duration per element Effect
{3, dha dhin dhin dha} 4 3 3/4 = 0.75 Compressed
{4, dha dhin dhin dha} 4 4 4/4 = 1.0 Normal
{6, dha dhin dhin dha} 4 6 6/4 = 1.5 Dilated
{1, dha dhin dhin dha} 4 1 1/4 = 0.25 Very fast

When M < N, the notes are compressed (each lasts less than one beat). When M > N, they are dilated (each lasts more). When M = N, it’s neutral.

2. Multivoice polymetry: parallel streams

When BP3 uses the comma without an initial temporal ratio, it superimposes independent voices.

BP3 Syntax:

{dha dhin dhin dha, Sa Re Ga Ma Pa}

 

Two voices play simultaneously:

  • Tabla: 4 bols (dha dhin dhin dha)
  • Sitar: 5 notes in sargam (Sa Re Ga Ma Pa)

Both instruments start and end together, but the tabla plays 4 strokes while the sitar plays 5 notes. The formula applies to each voice independently: if the total time is T, the tabla subdivides T into 4 and the sitar into 5.

This is a cross-instrumental polymetry typical of Indian classical music, where each instrument advances at its own pace within the same tāla cycle.

[!Note: Tabla and sitar — two parallel streams]

In a Hindustani music concert, the tabla and sitar (or any melodic instrument) play simultaneously but with different densities. The tabla hammers its bols in 4 strokes while the sitarist unfolds 5 raga notes. This is exactly what {dha dhin dhin dha, Sa Re Ga Ma Pa} encodes — and it’s this type of superposition that Bel formalized in BP3 [Bel1998].

[!Note: Temporal visualization]

Time   : |-------|-------|-------|-------|
Tabla   : [dha   ][dhin  ][dhin  ][dha   ]
Sitar   : [Sa  ][Re  ][Ga  ][Ma  ][Pa  ]

Both voices occupy the same total time, but the sitar subdivides this time into 5 equal parts while the tabla subdivides it into 4. The density is 4 against 5.

Mixed case: temporal ratio + multiple voices

BP3 also allows combining both:

{4, dha dhin dhin dha, Sa Re Ga Ma Pa}

 

The 4 is the global temporal ratio: both voices must fit into 4 beats. But each voice calculates its durations independently:

  • Tabla: 4 bols in 4 beats → duration = 4/4 = 1.0 per bol
  • Sitar: 5 notes in 4 beats → duration = 4/5 = 0.8 per note

3. Additive rhythmic signatures

Rhythmic signatures in BP3 use an additive notation derived from Indian musical traditions, richer than the simple Western numerator/denominator.

BP3 Syntax:

4+4+4+4/4

 

This notation means: a cycle of 16 beats (4 groups of 4, i.e., 4 vibhāg), where each beat is a quarter note. This is an additive signature — it explicitly states the internal structure of the cycle, unlike “16/4” which says nothing about the groupings. This is exactly the structure of tintāl, the most common tāla in Hindustani music.

[!Note: Additive signatures and Indian tālas]

BP3’s additive signatures come directly from Indian music, where tālas (rhythmic cycles) are defined by their internal groupings, not by a simple numerator/denominator:

Tāla BP3 Signature Beats Structure
Tintāl 4+4+4+4/4 16 4 equal vibhāg — the most common
Jhaptāl 2+3+2+3/4 10 Asymmetrical rhythm — unequal groupings
Rūpak 3+2+2/4 7 Short cycle — starts on an unaccented beat
Ektāl 2+2+2+2+2+2/4 12 6 pairs — long and regular cycle

>
Additive notation makes explicit what Western music often leaves implicit: is 6/8 3+3 (like a siciliana) or 2+2+2 (like a fast minuet)? In Indian music, this ambiguity does not exist — each tāla has a defined internal structure [Bel2001].

This additive approach is also common in Eastern European music (Bartók) and Turkish music (aksak — asymmetrical rhythms like 2+2+2+3).

Why signatures are not simple annotations

Additive signatures carry structural information that the simple fraction does not capture:

  • 2+3+2+3/4 (jhaptāl) ≠ 10/4: the internal groupings determine where the accents (tālī and khālī) fall
  • 3+2+2/4 (rūpak) ≠ 7/4: the first vibhāg is 3 beats, not 2 — the cycle is asymmetrical from the start
  • 3+3+2/8 (Turkish aksak) ≠ 8/8: the additive structure is the very reason for the “limping” (aksak) character of the rhythm

From a Chomsky hierarchy perspective, these signatures might require expressive power beyond Type 3 (regular) to be properly represented — an open question discussed in Paper 1.

4. Ties: extending sound beyond boundaries

Ties are a concept from traditional musical notation, imported into BP3 via I5. A tie connects two notes of the same pitch to form a single longer note.

BP3 Syntax:

do4 ré4 mi4& &mi4 fa4 sol4

 

mi4& (start of tie) is connected to &mi4 (end of tie). The E continues to sound without re-attack — it lasts two beats instead of one.

Ties primarily appear when importing MusicXML into BP3: when a note crosses a bar line, the importer cuts it in two and inserts a tie. This is a compatibility mechanism with classical notation, not an invention of BP3.


[!Note: Bel and the rationalization of musical time]

BP3’s polymetry was not born from theoretical speculation. In “Rationalizing Musical Time” [Bel2001], Bernard Bel proposes syntactic and symbolic-numeric approaches to represent musical time, directly inspired by Indian classical music. Tālas are not linear measures (as in Western music): they are cycles that rotate, returning to the starting point (sam) with each rotation. This cyclic conception of time — and the compression/dilation ratios it implies — is at the heart of BP3’s polymetry.

This article had a considerable impact: Alex McLean, creator of TidalCycles (the most widely used live coding language today), cites [Bel2001] in over 8 publications between 2007 and 2022. Tidal’s cyclic mini-notation descends directly from Bel’s formalization of time [Bel1990b].


Musical Examples

Example 1: Kathak — progressive slowing down

Kathak is a classical dance from North India, accompanied by tabla percussion. A common process is progressive slowing down: playing groups of notes that are increasingly slower within the same time space.

BP3:

{2, dha dhin dhin dha dha dhin dhin dha}{2, dha tin tin ta ta dha}{2, dha dhin dhin dha dha}{2, dha tin tin ta}

 

Each group fits into 2 beats, but contains a decreasing number of bols:

Group Bols Duration per bol Effect
1 8 bols 2/8 = 0.25 Fast
2 6 bols 2/6 = 0.33 Moderate
3 5 bols 2/5 = 0.40 Slowed down
4 4 bols 2/4 = 0.50 Slow

The effect is a structural decelerando: it’s not a slowing of the tempo (the metronome doesn’t change), it’s the density of notes that decreases within a fixed temporal framework. Compression goes from 4:1 (8 bols in 2 beats) to 2:1 (4 bols in 2 beats).

Example 2: Hemiola — 3 against 2

Hemiola (3 against 2 polymetry) is the most common polymetric superposition, present in almost all musical traditions:

BP3:

{Sa Re Ga, dha dhin}

 

 

Time   : |---------|---------|---------|
Sitar   : [Sa    ][Re    ][Ga    ]
Tabla   : [dha        ][dhin       ]

 

The sitar plays 3 notes and the tabla 2 strokes in the same time. Each voice subdivides the time in its own way: the sitar into thirds, the tabla into halves. This is a fundamental figure of jugalbandi (duet) in Hindustani music.

Example 3: Tāla jhaptāl — structural asymmetry

Jhaptāl is a 10-beat tāla with an asymmetrical structure 2+3+2+3, very different from tintāl (4+4+4+4). Here’s how BP3 combines additive signature and polymetry for a complete cycle:

BP3:

2+3+2+3/4 {2, dhin dha}{3, dhin dhin dha}{2, tin ta}{3, dhin dhin dha}

 

The 4 vibhāg have unequal durations (2, 3, 2, 3 beats), and each vibhāg compresses its bols into its own duration. This is exactly what “10/4” notation could not express: the internal structure of the cycle, with its characteristic asymmetries.


Polymetry and expressive power

Polymetry raises an interesting theoretical question: does it add expressive power in the sense of formal languages?

If we only consider the sequences of symbols produced (the notes), a polymetric expression {3, A B C} could be “unfolded” into three notes with adjusted durations — this is a notational convenience, not a gain in generative power.

But if we consider the temporal structure as part of the language (not just the symbols but also their temporal relationships), then multivoice polymetry {A B, C D E} generates two-dimensional structures (two parallel streams) that a purely sequential language cannot express. We move from a chain (1D) to a temporal graph (2D).

This question is discussed in more detail in Paper 1 (§6.7, open question #2). The answer depends on what is meant by “language”: if it is a set of strings, polymetry is notational; if it is a set of temporal structures, it is substantial.


Key takeaways

  • Monovoice polymetry ({M, notes}) compresses or dilates N elements into M beats. Duration of each element = M/N.
  • Multivoice polymetry ({voice1, voice2}) superimposes independent parallel streams. Each voice subdivides the total time in its own way.
  • Additive signatures (4+4+4+4/4, 2+3+2+3/4) explicitly state the internal structure of rhythmic cycles — a necessity for Indian tālas and aksak rhythms.
  • Ties (note& and &note) come from MusicXML import and extend a note beyond duration boundaries.
  • Polymetry is the central mechanism for formalizing cyclic time in BP3, directly stemming from Bel’s work on Indian music [Bel2001].

To go further

  • BP3 Documentation: Bol Processor – Polymetric Expressions
  • Bel, B. (2001). “Rationalizing Musical Time: Syntactic and Symbolic-Numeric Approaches” — the key article on the formalization of musical time, a direct influence on TidalCycles.
  • Bel, B. (1998). “Migrating musical concepts: an overview of the Bol Processor”. Computer Music Journal 22(2).
  • Bel, B. (1990). “Time and musical structures” — first formalization of time in BP, dealing with polymetry and Indian rhythmic cycles.
  • Clayton, M. (2000). Time in Indian Music. Oxford University Press.
  • Prerequisite article: M5
  • Translation to SuperCollider: B7 — how the BP2SC transpiler translates polymetric expressions into playable code.

Glossary

  • Aksak: Turkish term meaning “limping.” Refers to asymmetrical rhythms common in Turkey and the Balkans (e.g., 2+2+2+3).
  • Bol: Mnemonic syllable of the tabla (e.g., dha, dhin, tin, ta). The “Bol” in “Bol Processor.”
  • Temporal compression: Playing more notes than the time would normally allow, by shortening each note (M < N). Inverse of dilation.
  • Temporal dilation: Stretching notes so they occupy more time than their normal duration (M > N).
  • Hemiola: Polymetry of 3 against 2 (or 2 against 3). The most common case of metric superposition.
  • Jugalbandi: Indian musical duet where two soloists dialogue and superimpose, each with their own subdivision of time.
  • Tie: In musical notation, a connection between two notes of the same pitch to form a single longer note. Notated note& (start) and &note (end) in BP3.
  • Sam: The first beat of the tāla cycle — the point of resolution. The tihāī aims to “fall on sam.”
  • Sargam: Indian solmization system (Sa Re Ga Ma Pa Dha Ni), equivalent to Western solfège (do re mi fa sol la si).
  • Additive signature: Rhythmic signature that explicitly states internal groupings (e.g., 3+3+2/8 instead of 8/8). Essential for Indian tālas and aksak rhythms.
  • Tāla: Indian rhythmic cycle, defined by its internal groupings (vibhāg). Examples: tintāl (16 beats, 4+4+4+4), jhaptāl (10 beats, 2+3+2+3), rūpak (7 beats, 3+2+2).
  • Tihāī: Indian cadence where a motif is repeated three times to fall on sam (the first beat of the cycle).
  • Vibhāg: Section of a tāla. Tintāl has 4 vibhāg of 4 beats each.
  • Voice: In a polymetric context, an independent stream of notes playing in parallel with other streams.

Prerequisites: M5, B2, B3
Reading time: 10 min
Tags: #polymetry #time #tāla #BP3 #cyclic-time