Arnold's Cat Map Explanation
---back to cat map---

Arnold's Cat Map is the most well known form of a topological phenomenon known as Anosov's diffeomorphism. The process also has connections to the Poincaré recurrence theorem.
The process is a simple reordering of an n squared matrix (i.e. a matrix with even sides). The interesting property of this process is that, depending on the n-size, after a certain number of iterations the original matrix order returns. This has been used mainly in image manipulation, as it was with the image of a cat by Vladimir I Arnold. The transformation is as follows:

for each iteration
x = x + y
y = x + 2y

below you can see the first iteration of an n = 5 matrix


Perhaps more elegant explainations can be found here

As I mentioned earlier, the Cat Map is used mainly as an image manipulation technique. I was interested in seeing what the effect would be if the transformation was applied to sound.

The first problem I encountered was that a soundfile is a linear representation. In other words, it has only one dimension. The Cat Map works on a two dimensional matrix. However, as shown above, a linear set of numbers can populate a matrix. The numbers 0-24 fill the matrix. I was able to determine the math that would allow me to move back and forth between a one and two dimensional list.

  • To derive x,y values from a linear table
  • (n = length of one side of matrix, table_size = n^2)

    x = linear_value / n
    y = linear_value % n

    (% = mod operator, the remainder after division)

  • To derive linear values from x,y pairs

  • linear_value = (n * x) + y

The second problem was that the number of iterations that a specific n-size matrix goes through to get back to its original state is seemingly arbitrary. Examine the following list of n-size matricies.

n-size n*n # of iterations
75 5625 100
115 13225 120
116 13456 21
117 13689 84
987 974169 16

view entire list from n = 1 to n = 1000
---back to cat map---