yAtlas

Studio · From Linear

A cat stirred into noise

Change the size of the grid: how many steps until the cat comes back?

Composing the first frame…

The cat on screen is N × N grid points. Each time the matrix A = [[2, 1], [1, 1]] is applied, it moves those points to new places: it stretches by about 2.6 along one direction and squeezes by as much along another, and whatever leaves on the right comes back on the left. Drag n up, or press play: after a few steps the cat is fine stripes, and a few more turn it into noise. But there are only finitely many grid points, and every step can be undone, so some step must put every point back where it began. On the 610 × 610 grid that is step 30, and at step 15 an upside-down cat flashes up first, with Aⁿ written in the corner as −I. Change the grid and the period changes: 101 takes 25 steps, 100 takes 150, while 377 and 987 need only 14 and 16. The corner counts, point by point, how many are back in place.