User blog:Ubersketch/Step Worm

This notation uses arrays.

1. Look at last entry if it is 0 go to 2. if it is not, go to 3.

2. Remove entry. Go to 1.

3. Replace entry with worm(a) where a is the array with last entry reduced by 1. Add 1 to step. Go to 1.

4. worm(a) = step value after array (a) is evaluated.

It's easy to see that worm(n) = n

Here are examples of evaluation of arrays.

1,2 =

1,(1,1) =

1,1 =

1 =

nothing

worm(1,2) = 5

2,2 =

2,(2,1) =

2,(2) =

2,(1) =

2 =

1 =

nothing

worm(2,2) = 7

5,5 =

5,(5,4) =

5,(5,(5,3)) =

5,5(5,(5,(5,2)))

...

As you can see it grows pretty fast.