Menu Close

Siteswap Notation IX: Multi Hand Notation (MHN)

The Multi Hand Notation (MHN) invented by Ed Carstens can handle all the juggling patterns we have discussed so far in this blog series. We have already seen in Siteswap Notation VIII and in Vanilla Siteswap Extensions II, a variety of single juggler patterns that have led to the invention of many varied and confusing notations and jargon. If MHN had been invented earlier, perhaps none of those notations or jargon would have existed. When used in all its power, MHN can describe the general juggling pattern involving any number of objects and hands (jugglers) throwing any combination of asynchronous, multiplex and synchronous throws.

In MHN, a given juggling pattern is represented as a matrix of throws. Each row of the matrix corresponds to a particular hand. Each column corresponds to a beat. The elements of the matrix are siteswap numbers. The siteswap numbers entered in the matrix thus have information about which hand is making what throw at which beat. Further, each siteswap number entered in the matrix has a supplementary number (which we’ll write as a subscript) which indicates to which hand that throw is to be made. This subscript is basically a scaleable version of the “x” in two-handed synchronous notation that indicates that the throw is to be made to the other hand. So for example, a 3-object cascade juggled by two hands will be represented in MHN format as:

310
030

The first row corresponds to “Hand 0” which we may map to the right hand a juggler. The second row corresponds to “Hand 1” which may be mapped to the left hand of the same juggler. In the first column (beat #0), we find the entry “31” in the Hand 0 row indicating that we need to throw an object with siteswap number 3, towards Hand 1 (1 being the subscript). On the same beat (i.e., in the same column), we also find the entry “0” in the Hand 1 row indicating that Hand 1 is empty at this beat. Similarly, in the second column, the entries indicate that Hand 0 is empty and Hand 1 has to throw a “3” towards Hand 0. Notice that what we’d write simply as the siteswap sequence “3” in vanilla notation, now gets written as a 2x2 matrix in MHN. It is due to this unwieldiness that vanilla notation is still preferred for patterns that it does work for.

Why did we not put any subscript for the “0” throws? As there is no object to throw, it doesn’t make sense to talk about a hand to which this throw should be made. For the purposes of mathematical operations on MHN matrices, we can either ignore these 0’s completely or put a subscript equal to the row number in which the “0” throws are occurring. We will choose the latter approach.

Example MHN matrix

In an MHN matrix, a multiplex throw is indicated by multiple entries in the same cell of the matrix. A synchronous throw is indicated by the same column having non-zero entries in two or more rows, indicating that two or more hands are throwing objects at that beat. A generalized representation of an MHN matrix will be quite messy (see the section Generalized MHN matrix) so we’ll use an example matrix for a pattern with period P = 3, involving H = 5 hands to illustrate the remaining ideas being discussed in this blog:

62634440
4053425101
52545360
444351504153
04434251

Notice how the two “0” throws, 01 and 04, have the subscript corresponding to the row in which they occur.

Mathematical Verification

As with vanilla siteswap sequences, it is possible to test the validity of an MHN matrix and calculate the number of objects required to juggle a pattern corresponding to a valid MHN matrix.

Average Theorem

Assuming that a given MHN matrix represents a valid juggling pattern, the number of objects required for the pattern can be found by simply adding all the siteswap numbers occurring in the MHN matrix (while ignoring their subscripts) and dividing by the period. For the above MHN matrix, we get the number of objects required to juggle the corresponding pattern to be:

(6+6+4+4+4+5+4+5+0+5+5+5+6+4+4+5+5+4+5+0+4+4+5)/3 = 99/3 = 33 objects.

Permutation Test

The permutation test follows the same steps as for vanilla sequences. The first step is to add the column number in which each entry occurs to the entry, while retaining the subscripts as they are. Thus, we add 0 to all the numbers in column 0, 1 to all the numbers in column 1, and 2 to all the numbers in column 2 to get:

62735460
4053426121
52546380
445361706173
04536271

Next, we divide all the numbers by the period (P=3) and take the remainder (i.e., modulo w.r.t. P). Again we retain the subscripts as is. This yields:

02132400
1023120121
22240320
142301100113
04230211

The final step is to count how many times each mn occurs in the resultant matrix,
where m goes from 0 to P-1 and n goes from 0 to H-1. If in each case this count matches the number of elements in the mxn cell of the original MHN matrix (i.e., number of objects thrown on the mth beat by the nth hand) then we say that the starting MHN matrix represented a valid juggling pattern. One can verify that this condition is met for the above example.

Transformations

As with vanilla siteswap sequences, there are some mathematical transformations that can be done with a valid MHN matrix to yield another valid MHN matrix. We discuss some such transformations below. This list is just illustrative and by no means complete.

Scaling

Given a valid MHN matrix, we can multiply all the elements with a scaling factor M and insert (M-1) columns with zeros immediately after each original column. This would also increase the period of the pattern from P to P+(M-1)*P = M*P. For example, let us scale our example MHN matrix above by a factor of M = 3. So we multiply each siteswap number by 3 and insert M-1 = 2 columns of “0” after every originally existing column in the starting matrix.

182000018312400001200000
12015312201011510101010101
152154020215302021800202
124030312315103031501211530303
04040412304041221510404

The number of objects in the new juggling pattern are the same as in the original one as both the sum of the siteswap numbers as well as the period of the pattern got multiplied by the same factor M.

Cyclic rotation

In a valid MHN matrix, all the rows can be cyclically rotated to get a new valid MHN matrix. For example, we get the below matrix by cyclically rotating the rows of our example matrix by 1 column to the right, such that the right-most column cycles around to become the left-most column.

40626344
0140534251
60525453
504153444351
42510443

The number of objects in the juggling pattern remain unchanged in this transformation as neither the sum of siteswap numbers, nor the period of the pattern underwent any change.

Appending Matrices

We can append multiple valid MHN matrices with the same period one below the other to get a new valid matrix. While appending we must keep in mind to increment the subscript values for all entries in the appended matrix by the number of rows which already exist in the matrix to which it is being appended. Let us consider a second period 3 matrix involving 3 hands:

410000
014201
020240

Since our first example matrix already has 5 rows, all the subscripts of this second matrix will get incremented by 5 when appending and we get the combined matrix:

62634440
4053425101
52545360
444351504153
04434251
460505
064706
070745

The number of objects in the new juggling pattern is the sum of the number of objects corresponding to the individual juggling matrices which got appended.

Row Permutation

Given a valid MHN matrix, we can permute the rows (effectively, change the hand number assignments) and get another valid MHN matrix. Again, we need to ensure that the subscripts remain compatible with the swapping of rows. For example, if we swap row #1 and #4 of our example matrix, we have to also swap all the subscripts 1 and 4 wherever they occur in the matrix. Below shows the new matrix after swapping rows #1 and #4 of our example matrix:

62634140
01434254
52515360
414354504453
4053425404

Note that though the subscripts change, the siteswap numbers themselves do not change, i.e., the sum of all the siteswap numbers remains the same. As the period also does not change, the new juggling pattern involves the same number of objects as the original one.

Add/Subtract Period

We can add or subtract a period from any of the siteswap numbers in a valid MHN matrix (without changing the subscript) to get another valid MHN matrix. For example, we have subtracted the period 3 from the siteswap number 50 of cell 2x3 and added the period 3 to the siteswap number 04 of cell 0x4 of our example matrix to get the below valid MHN matrix:

62634440
4053425101
52545360
444351204153
34434251

For every period added, the number of objects in the corresponding juggling pattern increases by one and for every period subtracted, it decreases by one.

The subtraction operation is a little tricky. There is no problem if the siteswap number from which we’re subtracting the period is greater than the period. If the starting siteswap number is less than the period on the other hand, then the subtraction will lead to a negative result which is not a practical juggling pattern so subtraction is not allowed in this case. The tricky part comes when the siteswap number is equal to the period. The result of the subtraction in this case will be zero but we want the subscript of the 0 to be the same as the throwing hand. So if the original siteswap number had a subscript the same as the throwing hand, then the subtraction can be carried out, else it is not allowed.

Siteswap

We can also do the siteswap operation between two throws to swap both the beat and the hand to which they are being thrown. Let us again consider our example MHN matrix:

62634440
4053425101
52545360
444351504153
04434251

Let’s say we want to siteswap the highlighted throws in the above matrix, i.e., we want the 40 throw from hand #1 at beat #0 to be siteswapped with the 51 throw from hand #3 at beat #1. Now we know that (see “What kind of a name is Siteswap?“) to siteswap throws Ti and Tj occurring at beat #i and #j respectively with j>i, the new throws Ti’ and Tj’ are:

Ti’ = Tj+j-i; Tj’ = Ti+i-j. Additionally, the subscripts of the throws will also get swapped now.

Thus, The siteswap number for the throw at beat #0 will become (5+1-0) = 6 and the subscript will become 1. The siteswap number for the throw at beat #1 will become (4+0-1) = 3 and the subscript will become 0. The new MHN matrix after the siteswap transform is:

62634440
6153425101
52545360
444330504153
04434251

The siteswap operation leaves both the sum of the siteswap numbers and the period of the juggling patterns unchanged so the number of objects in the new juggling pattern is the same as in the original one.

The choice of possible transformations on MHN matrices that we have chosen to illustrate above is not accidental. All the transformations presented here were elegantly combined by the French mathematician and juggler Cristophe Prechac to come up with a formula for the “Prechac transforms” which are a method of generating “staggered symmetric passing patterns” from siteswap sequences for individual jugglers.

Generalized MHN matrix

A general juggling pattern of period P involving H hands will be the (P columns) x (H rows) matrix:

(T001)H001(T002)H002…(T00N00)H00N00(T101)H101(T102)H102…(T10N10)H10N10(Tx01)Hx01(Tx02)Hx02…(Tx0Nx0)Hx0Nx0(T(P-1)01)H(P-1)01(T(P-1)02)H(P-1)02…(T(P-1)0N(P-1)0)H(P-1)0N(P-1)0
(T011)H011(T012)H012…(T01N01)H01N01(T111)H111(T112)H112…(T11N11)H11N11(Tx11)Hx11(Tx12)Hx12…(Tx1Nx1)Hx1Nx1(T(P-1)11)H(P-1)11(T(P-1)12)H(P-1)12…(T(P-1)1N(P-1)1)H(P-1)1N(P-1)1
(T0y1)H0y1(T0y2)H0y2…(T0yN0y)H0yN0y(T1y1)H1y1(T1y2)H1y2…(T1yN1y)H1yN1y(Txy1)Hxy1(Txy2)Hxy2…(TxyNxy)HxyNxy(T(P-1)y1)H(P-1)y1(T(P-1)y2)H(P-1)y2…(T(P-1)yN(P-1)y)H(P-1)yN(P-1)y
(T0(H-1)1)H0(H-1)1(T0(H-1)2)H0(H-1)2…(T0(H-1)N0(H-1))H0(H-1)N0(H-1)(T1(H-1)1)H1(H-1)1(T1(H-1)2)H1(H-1)2…(T1(H-1)N1(H-1))H1(H-1)N1(H-1)(Tx(H-1)1)Hx(H-1)1(Tx(H-1)2)Hx(H-1)2…(Tx(H-1)Nx(H-1))Hx(H-1)Nx(H-1)(T(P-1)(H-1)1)H(P-1)(H-1)1(T(P-1)(H-1)2)H(P-1)(H-1)2…(T(P-1)(H-1)N(P-1)(H-1))H(P-1)(H-1)N(P-1)(H-1)

The term (Txyz)Hxyz is to be read as follows:

x refers to the beat (column) number. 
y refers to the row (hand) number.
z refers to the zth object being thrown on that beat by that hand.
(Txyz) is the siteswap number corresponding to the zth object being thrown on the xth beat by the yth hand.
Hxyz is the hand to which (Txyz) is being thrown.
Nxy is the total number of objects being thrown on the xth beat by the yth hand.

As one can appreciate now, dealing with the general matrix for MHN would’ve been very cumbersome, so we chose to use a specific example for the discussion presented here.

Beatmap Notation

In 2004 (according to this article), Luke Burrage invented the “beatmap” notation which is often offered as a solution for describing the juggling patterns we have chosen to describe using MHN. A small note on the beatmap notation is therefore, perhaps merited here.

The beatmap notation resembles the synchronous notation in appearance but is different from the simulator compatible synchronous notation in that it represents every beat of the pattern, much like the synchronous notation we introduced in Siteswap Notation V. Thus, the mathematical aspects of beatmap notation work out identical to the MHN which Ed Carstens invented in the early 1990’s.

I think the real value of the beatmap notation lies in the attempt to create a comprehensive system to denote details of the juggling pattern like bounce throws, body moves, juggler orientations, etc., and in that sense, create an even more complete description of the juggling pattern than MHN can offer. These aspects of the juggling pattern however do not lend themselves to a mathematical study. For this reason, I do not intend to cover the beatmap notation as part of the Siteswap Notation blog series.

Leave a Reply

Your email address will not be published. Required fields are marked *