Back to LIFE

As pre-previously described on OotÜ-F, the English mathematician John Conway invented the Game of Life. It’s played on a grid of squares with counters. First you put counters on the grid in any pattern you please, random or regular, then you add or remove counters according to three simple rules applied to each square of the grid:

1. If an empty square has exactly three counters as neighbors, put a new counter on the square.
2. If a counter has two or three neighbors, leave it where it is.
3. If a counter has less than two or more than three neighbors, remove it from the grid.

There are lots of variants on Life and I wondered what would happen if you turned the grid into a kind of two-dimensional Pascal’s triangle. You start with 1 in the central square, then apply this rule to each square, [x,y], of the grid:

1. Add all numbers in the eight squares surrounding [x,y], then put that value in [x,y] (as soon as you’ve summed all other squares).

When a square is on the edge of the grid, its [x] or [y] value wraps to the opposite edge. Here’s this Pascal’s Life in action:

0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 1 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

Pascal's square #1


0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 1 1 1 0 0
0 0 1 0 1 0 0
0 0 1 1 1 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

Pascal's square #2


0 0 0 0 0 0 0
0 1 2 3 2 1 0
0 2 2 4 2 2 0
0 3 4 8 4 3 0
0 2 2 4 2 2 0
0 1 2 3 2 1 0
0 0 0 0 0 0 0

Pascal's square #3


01 03 06 07 06 03 01
03 06 12 12 12 06 03
06 12 27 27 27 12 06
07 12 27 24 27 12 07
06 12 27 27 27 12 06
03 06 12 12 12 06 03
01 03 06 07 06 03 01

Pascal's square #4


021 038 056 067 056 038 021
038 070 100 124 100 070 038
056 100 132 168 132 100 056
067 124 168 216 168 124 067
056 100 132 168 132 100 056
038 070 100 124 100 070 038
021 038 056 067 056 038 021

Pascal's square #5


0285 0400 0560 0615 0560 0400 0285
0400 0541 0755 0811 0755 0541 0400
0560 0755 1070 1140 1070 0755 0560
0615 0811 1140 1200 1140 0811 0615
0560 0755 1070 1140 1070 0755 0560
0400 0541 0755 0811 0755 0541 0400
0285 0400 0560 0615 0560 0400 0285

Pascal's square #6


2996 3786 4697 5176 4697 3786 2996
3786 4785 5892 6525 5892 4785 3786
4697 5892 7153 7941 7153 5892 4697
5176 6525 7941 8840 7941 6525 5176
4697 5892 7153 7941 7153 5892 4697
3786 4785 5892 6525 5892 4785 3786
2996 3786 4697 5176 4697 3786 2996

Pascal's square #7


As you can see, the numbers quickly get big, so I adjusted the rule: sum the eight neighbors of [x,y], then put sum modulo 10 in [x,y]. The modulus of a number, n is its remainder when it’s divided by another number. For example, 3 modulo 10 = 3, 7 modulo 10 = 7, 10 modulo 10 = 0, 24 modulo 10 = 4, and so on. Pascal’s Life modulo 10 looks like this:

0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 1 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

Pascal's square (n mod 10) #1


0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 1 1 1 0 0
0 0 1 0 1 0 0
0 0 1 1 1 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

Pascal's square (n mod 10) #2


0 0 0 0 0 0 0
0 1 2 3 2 1 0
0 2 2 4 2 2 0
0 3 4 8 4 3 0
0 2 2 4 2 2 0
0 1 2 3 2 1 0
0 0 0 0 0 0 0

Pascal's square (n mod 10) #3


1 3 6 7 6 3 1
3 6 2 2 2 6 3
6 2 7 7 7 2 6
7 2 7 4 7 2 7
6 2 7 7 7 2 6
3 6 2 2 2 6 3
1 3 6 7 6 3 1

Pascal's square (n mod 10) #4


1 8 6 7 6 8 1
8 0 0 4 0 0 8
6 0 2 8 2 0 6
7 4 8 6 8 4 7
6 0 2 8 2 0 6
8 0 0 4 0 0 8
1 8 6 7 6 8 1

Pascal's square (n mod 10) #5


5 0 0 5 0 0 5
0 1 5 1 5 1 0
0 5 0 0 0 5 0
5 1 0 0 0 1 5
0 5 0 0 0 5 0
0 1 5 1 5 1 0
5 0 0 5 0 0 5

Pascal's square (n mod 10) #6


6 6 7 6 7 6 6
6 5 2 5 2 5 6
7 2 3 1 3 2 7
6 5 1 0 1 5 6
7 2 3 1 3 2 7
6 5 2 5 2 5 6
6 6 7 6 7 6 6

Pascal's square (n mod 10) #7


7 5 3 3 3 5 7
5 9 5 1 5 9 5
3 5 1 7 1 5 3
3 1 7 6 7 1 3
3 5 1 7 1 5 3
5 9 5 1 5 9 5
7 5 3 3 3 5 7

Pascal's square (n mod 10) #8


Now add graphics and use n modulo 2 (where all even numbers → 0 and all odd numbers → 1). If you start with a 17×17 square with a square pattern of 1s, you’ll see it evolve like this when 0s are represented in black and 1s are represented in red:

n mod 2 on 17×17 square #1


n mod 2 #2


n mod 2 #3


n mod 2 #4


n mod 2 #5


n mod 2 #6


n mod 2 #7


n mod 2 #8


n mod 2 #9


n mod 2 #10


n mod 2 #11


n mod 2 #12


n mod 2 #13


n mod 2 #14


n mod 2 #15


n mod 2 #16


n mod 2 (animated)


As you can see, the original square re-appears. So do other patterns. Here’s an animated gif for n modulo 2 seeded with a pattern of 1s spelling LIFE:


Now try a spiral as the seed:

Spiral with n mod 2 #1


Spiral with n mod 2 #2


Spiral with n mod 2 #3


Spiral with n mod 2 #4


Spiral with n mod 2 #5


Spiral with n mod 2 #6


Spiral with n mod 2 #7


Spiral with n mod 2 #8


Spiral with n mod 2 #9


Spiral with n mod 2 #10


Spiral with n mod 2 #11


Spiral mod 2 (animated)


Now try the same pattern using modulo 3, where 0s are represented in black, 1s are represented in red and 2s in green. The pattern returns with different colors, i.e. with different underlying digits:

Spiral mod 3 on 27×27 square #1


Spiral mod 3 #2


Spiral mod 3 #3


Spiral mod 3 #4


Spiral mod 3 #5


Spiral mod 3 #6


Spiral mod 3 #7


Spiral mod 3 #8


Spiral mod 3 #9


Spiral mod 3 #10


Spiral mod 3 #11

[…]

Spiral mod 3 #19

[…]

Spiral mod 3 #28

[…]

Spiral mod 3 #37

[…]

Spiral mod 3 #46


Spiral mod 3 (animated)


LIFE mod 3 (animated)


Now try n modulo 5, with 0s represented in black, 1s represented in red, 2s in green, 3s in yellow and 4s in dark blue. Again the pattern returns in different colors:

Spiral mod 5 on 25×25 square #1


Spiral mod 5 #2


Spiral mod 5 #3


Spiral mod 5 #4


Spiral mod 5 #5


Spiral mod 5 #6

[…]

Spiral mod 5 #26

[…]

Spiral mod 5 #31

[…]

Spiral mod 5 #76

[…]

Spiral mod 5 #81


Spiral mod 5 (animated)


Finally, try a svastika modulo 7, with 0s represented in black, 1s represented in red, 2s in green, 3s in yellow, 4s in dark blue, 5s in purple and 6s in light blue:

Svastika mod 7 on 49×49 square #1


Svastika mod 7 #2


Svastika mod 7 #3


Svastika mod 7 #4


Svastika mod 7 #5


Svastika mod 7 #6


Svastika mod 7 #7


Svastika mod 7 #8

[…]

Svastika mod 7 #15

[…]

Svastika mod 7 #22

[…]

Svastika mod 7 #29

[…]

Svastika mod 7 #36

[…]

Svastika mod 7 #43


Svastika mod 7 (animated)


Previously Pre-Posted…

Eternal LIFE — a first look at the Game of Life

Eternal LIFE

The French mathematician Siméon-Denis Poisson (1781-1840) once said: « La vie n’est bonne qu’à deux choses : à faire des mathématiques et à les professer. » — “Life is good only for two things: doing mathematics and teaching mathematics.” The German philosopher Nietzsche wouldn’t have agreed. He thought (inter alia) that we must learn to accept life as eternally recurring. Everything we do and experience will happen again and again for ever. Can you accept life like that? Then your life is good.

But neither Poisson or Nietzsche knew that Life, with a capital L, would take on a new meaning in the 20th century. It became a mathematical game played on a grid of squares with counters. You start by placing counters in some pattern, regular or random, on the grid, then you add or remove counters according to three simple rules applied to each square of the grid:

1. If an empty square has exactly three counters as neighbors, put a new counter on the square.
2. If a counter has two or three neighbors, leave it where it is.
3. If a counter has less than two or more than three neighbors, remove it from the grid.

And there is a meta-rule: apply all three rules simultaneously. That is, you check all the squares on the grid before you add or remove counters. With these three simple rules, patterns of great complexity and subtlety emerge, growing and dying in a way that reminded the inventor of the game, the English mathematician John Conway, of living organisms. That’s why he called the game Life.

Let’s look at Life in action, with the seeding counters shown in green. Sometimes the seed will evolve and disappear, sometimes it will evolve into one or more fixed shapes, sometimes it will evolve into dynamic shapes that repeat again and again. Here’s an example of a seed that evolves and disappears:

Seeded with cross (arms 4+1+4) stage #1


Life stage #2


Life stage #3


Life stage #4


Life stage #5


Life stage #6


Life stage #7


Death at stage #8


Life from cross (animated)


The final stage represents death. Now here’s a cross that evolves towards dynamism:

Life seeded with cross (arms 3+1+3) stage #1


Life stage #2


Life stage #3


Life stage #4


Life stage #5


Life stage #6 (same as stage #4)


Life stage #7 (same as stage #5)


Life stage #8 (same as stage #4 again)


Life from cross (animated)


A line of three blocks swinging between horizontal and vertical is called a blinker:

Four blinkers


And here’s a larger cross that evolves towards stasis:

Life seeded with cross (arms 7+1+7) stage #1


Life stage #2


Life stage #3


Life stage #4


Life stage #5


Life stage #6


Life stage #7


Life stage #8


Life stage #9


Life stage #10


Life stage #11


Life stage #12


Life stage #13


Life stage #14


Life stage #15


Life stage #16


Life from cross (animated)


This diamond with sides of 24 blocks evolves towards even more dynamism:

Life from 24-sided diamond (animated)


Looping Life from 24-sided diamond (animated)


The game of Life obviously has many variants. In the standard form, you’re checking all eight squares around the square whose fate is in question. If that square is (x,y), these are the eight other squares you check:

(x+1,y+1), (x+0,y+1), (x-1,y+1), (x-1,y+0), (x-1,y-1), (x+0,y-1), (x+1,y-1), (x+1,y+0)

Now trying checking only four squares around (x,y), the ones above and below and to the left and the right:

(x+1,y+1), (x-1,y+1), (x-1,y-1), (x+1,y-1)

And apply a different set of rules:

1. If a square has one or three neighbors, it stays alive or (if empty) comes to life
2. Otherwise the square remains or becomes empty.

With that check and those rules, the seed first disappears, then re-appears, for ever (note that the game is being played on a torus):

Evolution of spiral seed


Eternally recurring spiral


This happens with any seed, so you can use Life to bring Nietzsche’s eternal recurrence to life:

Evolution of LIFE


Eternally recurring LIFE


Blancmange Butterfly

Blancmange butterfly. Is that a ’60s psychedelic band? No, it’s one of the shapes you can get by playing with blancmange curves. As I described in “White Rites”, a blancmange curve is a fractal created by summing the heights of successively smaller and more numerous zigzags, like this:

blanc_all

Zigzags 1 to 10


blancmange_all

Zigzags 1 to 10 (animated)


blanc_solid

Blancmange curve


In the blancmange curves below, the height (i.e., the y co-ordinate) has been normalized so that all the images are the same height:









Construction of a normalized blancmange curve (animated)


This is the solid version:









Solid normalized blancmange curve (animated)


I wondered what happens when you wrap a blancmange curve around a circle. Well, this happens:









Construction of a blancmange circle (animated)


You get what might be called a blancmange butterfly. The solid version looks like this (patterns in the circles are artefacts of the graphics program I used):









Solid blancmange circle (animated)


Next I tried using arcs rather zigzags to construct the blancmange curves and blancmange circles:









Arching blancmange curve (i.e., constructed with arcs) (animated)


And below is the circular version of a blancmange curve constructed with arcs. The arching circular blancmanges look even more like buttocks and then intestinal villi (the fingerlike projections lining our intestines):









Arching blancmange circle (animated)


The variations on blancmange curves don’t stop there — in fact, they’re infinite. Below is a negative arching blancmange curve, where the heights of the original arching blancmange curve are subtracted from the (normalized) maximum height:








Negative arching blancmange curve (animated)


And here’s an arching blancmange curve that’s alternately negative and positive:








Negative-positive arching blancmange curve (animated)


The circular version looks like this:










Negative-positive arching blancmange circle (animated)


Finally, here’s an arching blancmange curve that’s alternately positive and negative:









Positive-negative arching blancmange curve (animated)


And the circular version:











Positive-negative arching blancmange circle (animated)


Elsewhere Other-Accessible…

White Rites — more variations on blancmange curves

Bi-Bell Basics

Here’s what you might call a Sisyphean sequence. It struggles upward, then slips back, over and over again:

1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 1, 2, 2, 3, 2, 3, 3, 4, 2...


The struggle goes on for ever. Every time it reaches a new maximum, it will fall back to 1 at the next step. And in fact 1, 2, 3 and all other integers occur infinitely often in the sequence, because it represents the digit-sums of binary numbers:

1 ← 1
1 = 1+0 ← 10 in binary = 2 in base ten
2 = 1+1 ← 11 = 3
1 = 1+0+0 ← 100 = 4
2 = 1+0+1 ← 101 = 5
2 = 1+1+0 ← 110 = 6
3 = 1+1+1 ← 111 = 7
1 = 1+0+0+0 ← 1000 = 8
2 = 1+0+0+1 ← 1001 = 9
2 = 1+0+1+0 ← 1010 = 10
3 = 1+0+1+1 ← 1011 = 11
2 = 1+1+0+0 ← 1100 = 12
3 = 1+1+0+1 ← 1101 = 13
3 = 1+1+1+0 ← 1110 = 14
4 = 1+1+1+1 ← 1111 = 15
1 = 1+0+0+0+0 ← 10000 = 16
2 = 1+0+0+0+1 ← 10001 = 17
2 = 1+0+0+1+0 ← 10010 = 18
3 = 1+0+0+1+1 ← 10011 = 19
2 = 1+0+1+0+0 ← 10100 = 20


Now here’s a related sequence in which all integers do not occur infinitely often:

1, 2, 3, 3, 4, 5, 6, 4, 5, 6, 7, 7, 8, 9, 10, 5, 6, 7, 8, 8, 9, 10, 11, 9, 10, 11, 12, 12, 13, 14, 15, 6, 7, 8, 9, 9, 10, 11, 12, 10, 11, 12, 13, 13, 14, 15, 16, 11, 12, 13, 14, 14, 15, 16, 17, 15, 16, 17, 18, 18, 19, 20, 21, 7, 8, 9, 10, 10, 11, 12, 13, 11, 12, 13, 14, 14, 15, 16, 17, 12, 13, 14, 15, 15, 16, 17, 18, 16, 17, 18, 19, 19, 20, 21, 22, 13, 14, 15, 16, 16, 17, 18, 19, 17, 18, 19, 20, 20, 21, 22, 23, 18, 19, 20, 21, 21, 22, 23, 24, 22, 23, 24, 25, 25, 26, 27, 28, 8, 9, 10, 11, 11, 12, 13, 14, 12, 13, 14, 15, 15...


The sequence represents the sum of the values of occupied columns in the binary numbers, reading from right to left:

10 in binary = 2 in base ten
21 (column values from right to left)
2*1 + 1*0 = 2


11 = 3
21
2*1 + 1*1 = 3


100 = 4
321 (column values from right to left)
3*1 + 2*0 + 1*0 = 3


101 = 5
321
3*1 + 2*0 + 1*1 = 4


110 = 6
321
3*1 + 2*1 + 1*0 = 5


111 = 7
321
3*1 + 2*1 + 1*1 = 6


1000 = 8
4321
4*1 + 3*0 + 2*0 + 1*0 = 4


1001 = 9
4321
4*1 + 3*0 + 2*0 + 1*1 = 5


1010 = 10
4321
4*1 + 3*0 + 2*1 + 1*0 = 6


1011 = 11
4321
4*1 + 3*0 + 2*1 + 1*1 = 7


1100 = 12
4321
4*1 + 3*1 + 2*0 + 1*0 = 7


1101 = 13
4321
4*1 + 3*1 + 2*0 + 1*1 = 8


1110 = 14
4321
4*1 + 3*1 + 2*1 + 1*0 = 9


1111 = 15
4321
4*1 + 3*1 + 2*1 + 1*1 = 10


10000 = 16
54321
5*1 + 4*0 + 3*0 + 2*0 + 1*0 = 5


In that sequence, although no number occurs infinitely often, some numbers occur more often than others. If you represent the count of sums up to a certain digit-length as a graph, you get a famous shape:

Bell curve formed by the count of column-sums in base 2


Bi-bell curves for 1 to 16 binary digits (animated)


In “Pi in the Bi”, I looked at that way of forming the bell curve and called it the bi-bell curve. Now I want to go further. Suppose that you assign varying values to the columns and try other bases. For example, what happens if you assign the values 2^p + 1 to the columns, reading from right to left, then use base 3 to generate the sums? These are the values of 2^p + 1:

2, 3, 5, 9, 17, 33, 65, 129, 257, 513, 1025...


And here’s an example of how you generate a column-sum in base 3:

2102 in base 3 = 65 in base ten
9532 (column values from right to left)
2*9 + 1*5 + 0*3 + 2*2 = 27


The graphs for these column-sums using base 3 look like this as the digit-length rises. They’re no longer bell-curves (and please note that widths and heights have been normalized so that all graphs fit the same space):

Graph for the count of column-sums in base 3 using 2^p + 1 (digit-length <= 7)

(width and height are normalized)


Graph for base 3 and 2^p + 1 (dl<=8)


Graph for base 3 and 2^p + 1 (dl<=9)


Graph for base 3 and 2^p + 1 (dl<=10)


Graph for base 3 and 2^p + 1 (dl<=11)


Graph for base 3 and 2^p + 1 (dl<=12)


Graph for base 3 and 2^p + 1 (animated)


Now try base 3 and column-values of 2^p + 2 = 3, 4, 6, 10, 18, 34, 66, 130, 258, 514, 1026…

Graph for base 3 and 2^p + 2 (dl<=7)


Graph for base 3 and 2^p + 2 (dl<=8)


Graph for base 3 and 2^p + 2 (dl<=9)


Graph for base 3 and 2^p + 2 (dl<=10)


Graph for base 3 and 2^p + 2 (animated)


Now try base 5 and 2^p + 1 for the columns. The original bell curve has become like a fractal called the blancmange curve:

Graph for base 5 and 2^p + 1 (dl<=7)


Graph for base 5 and 2^p + 1 (dl<=8)


Graph for base 5 and 2^p + 1 (dl<=9)


Graph for base 5 and 2^p + 1 (dl<=10)


Graph for base 5 and 2^p + 1 (animated)


And finally, return to base 2 and try the Fibonacci numbers for the columns:

Graph for base 2 and Fibonacci numbers = 1,1,2,3,5… (dl<=7)


Graph for base 2 and Fibonacci numbers (dl<=9)


Graph for base 2 and Fibonacci numbers (dl<=11)


Graph for base 2 and Fibonacci numbers (dl<=13)


Graph for base 2 and Fibonacci numbers (dl<=15)


Graph for base 2 and Fibonacci numbers (animated)


Previously Pre-Posted…

Pi in the Bi — bell curves generated by binary digits

Sphiral Architect

If you’re a fan of Black Sabbath, you may have misread the title of this blog-post. But it’s not “Spiral Architect”, it’s “Sphiral Architect”. And this is a sphiral:

A sphiral
(the red square is the center)


But why do I call it a sphiral? The answer starts with the Fibonacci sequence, which is at once a perfectly simple and profoundly complex sequence of numbers. It’s very easy to create, yet yields endless riches. Simply seed the sequence with 1s, then add the previous two numbers in the sequence to get the next:


1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025...


Each pair of numbers provides a better and better approximation to phi or φ, an irrational number whose decimal digits never end and never fall into a repeating pattern. It satisfies the equations 1/x = x-1 and x^2 = x+1:


1.6180339887498948482045868343656381177203091798... = φ

1 / 1.6180339887498948482045868343656381177203091798... = 0.6180339887498948482045868343656381177203091798...

1.6180339887498948482045868343656381177203091798...^2 = 2.6180339887498948482045868343656381177203091798...


Here are the approximations to φ supplied by successive pairs of numbers in the Fibonacci sequence:


1 = 1/1
2 = 2/1
1.5 = 3/2
1.666... = 5/3
1.6 = 8/5
1.625 = 13/8
1.6153846153846... = 21/13
1.619047619047619047619047... = 34/21
1.6176470588235294117647... = 55/34
1.6181818... = 89/55
1.617977528... = 144/89
1.6180555... = 233/144
1.618025751... = 377/233
1.6180371352785... = 610/377
1.6180327868852459... = 987/610
1.618034447821681864235... = 1597/987
1.6180338134... = 2584/1597
1.61803405572755... = 4181/2584
1.6180339631667... = 6765/4181
1.6180339985218... = 10946/6765
1.618033985... = 17711/10946
1.61803399... = 28657/17711
1.6180339882... = 46368/28657
1.6180339889579... = 75025/46368
1.61803398867... = 121393/75025
1.61803398878... = 196418/121393
1.6180339887383... = 317811/196418
1.6180339887543225376... = 514229/317811
1.6180339887482... = 832040/514229
1.61803398875... = 1346269/832040
1.6180339887496481... = 2178309/1346269
1.618033988749989... = 3524578/2178309
1.61803398874985884835... = 5702887/3524578
1.6180339887499... = 9227465/5702887
1.6180339887498895958965978... = 14930352/9227465
1.6180339887498968544... = 24157817/14930352
1.618033988749894... = 39088169/24157817
1.61803398874989514... = 63245986/39088169
1.6180339887498947364... = 102334155/63245986
1.61803398874989489... = 165580141/102334155
1.618033988749894831892914... = 267914296/165580141
1.618033988749894854435... = 433494437/267914296
1.618033988749894845824745843278261031063704284629608753202985163 = 701408733/433494437
1.6180339887498948491136... = 1134903170/701408733
1.618033988749894847857... = 1836311903/1134903170
1.61803398874989484833721... = 2971215073/1836311903
1.6180339887498948481... = 4807526976/2971215073
1.61803398874989484822... = 7778742049/4807526976
1.618033988749894848197... = 12586269025/7778742049
1.6180339887498948482... = 20365011074/12586269025
1.6180339887498948482045868343656381177203091798... = φ


I decided to look at how integers could be the partial sums of unique Fibonacci numbers. For example:


Using 1, 2, 3, 5, 8, 13, 21, 34, 55, 89...

1 = 1
2 = 2
3 = 1+2 = 3
4 = 1+3
5 = 2+3 = 5
6 = 1+2+3 = 1+5
7 = 2+5
8 = 1+2+5 = 3+5 = 8
9 = 1+3+5 = 1+8
10 = 2+3+5 = 2+8
11 = 1+2+3+5 = 1+2+8 = 3+8
12 = 1+3+8
13 = 2+3+8 = 5+8 = 13
14 = 1+2+3+8 = 1+5+8 = 1+13
15 = 2+5+8 = 2+13
16 = 1+2+5+8 = 3+5+8 = 1+2+13 = 3+13
17 = 1+3+5+8 = 1+3+13
18 = 2+3+5+8 = 2+3+13 = 5+13
19 = 1+2+3+5+8 = 1+2+3+13 = 1+5+13
20 = 2+5+13
21 = 1+2+5+13 = 3+5+13 = 8+13 = 21
22 = 1+3+5+13 = 1+8+13 = 1+21
23 = 2+3+5+13 = 2+8+13 = 2+21
24 = 1+2+3+5+13 = 1+2+8+13 = 3+8+13 = 1+2+21 = 3+21
25 = 1+3+8+13 = 1+3+21
26 = 2+3+8+13 = 5+8+13 = 2+3+21 = 5+21
27 = 1+2+3+8+13 = 1+5+8+13 = 1+2+3+21 = 1+5+21
28 = 2+5+8+13 = 2+5+21
29 = 1+2+5+8+13 = 3+5+8+13 = 1+2+5+21 = 3+5+21 = 8+21
30 = 1+3+5+8+13 = 1+3+5+21 = 1+8+21
31 = 2+3+5+8+13 = 2+3+5+21 = 2+8+21


All integers can be represented as partial sums of unique Fibonacci numbers. But what happens when you start removing numbers from the beginning of the Fibonacci sequence, then trying to find partial sums of the integers? Some integers are sumless:


Using 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...

1 has no sum
2 = 2
3 = 3
4 has no sum
5 = 2+3 = 5
6 has no sum
7 = 2+5
8 = 3+5 = 8
9 has no sum
10 = 2+3+5 = 2+8
11 = 3+8
12 has no sum
13 = 2+3+8 = 5+8 = 13
14 has no sum
15 = 2+5+8 = 2+13
16 = 3+5+8 = 3+13
17 has no sum
18 = 2+3+5+8 = 2+3+13 = 5+13
19 has no sum
20 = 2+5+13
21 = 3+5+13 = 8+13 = 21
22 has no sum
23 = 2+3+5+13 = 2+8+13 = 2+21
24 = 3+8+13 = 3+21
25 has no sum
26 = 2+3+8+13 = 5+8+13 = 2+3+21 = 5+21
27 has no sum
28 = 2+5+8+13 = 2+5+21
29 = 3+5+8+13 = 3+5+21 = 8+21
30 has no sum
31 = 2+3+5+8+13 = 2+3+5+21 = 2+8+21


Now try removing more Fibonacci numbers from the sequence:


Using 3, 5, 8, 13, 21, 34, 55, 89, 144, 233...

1 to 2 have no sums
3 = 3
4 has no sum
5 = 5
6 to 7 have no sums
8 = 3+5 = 8
9 to 10 have no sums
11 = 3+8
12 has no sum
13 = 5+8 = 13
14 to 15 have no sums
16 = 3+5+8 = 3+13
17 has no sum
18 = 5+13
19 to 20 have no sums
21 = 3+5+13 = 8+13 = 21
22 to 23 have no sums
24 = 3+8+13 = 3+21
25 has no sum
26 = 5+8+13 = 5+21
27 to 28 have no sums
29 = 3+5+8+13 = 3+5+21 = 8+21
30 to 31 have no sums
32 = 3+8+21


Using 5, 8, 13, 21, 34, 55, 89, 144, 233, 377...

1 to 4 have no sums
5 = 5
6 to 7 have no sums
8 = 8
9 to 12 have no sums
13 = 5+8 = 13
14 to 17 have no sums
18 = 5+13
19 to 20 have no sums
21 = 8+13 = 21
22 to 25 have no sums
26 = 5+8+13 = 5+21
27 to 28 have no sums
29 = 8+21
30 to 33 have no sums
34 = 5+8+21 = 13+21 = 34
35 to 38 have no sums
39 = 5+13+21 = 5+34
40 to 41 have no sums
42 = 8+13+21 = 8+34
43 to 46 have no sums
47 = 5+8+13+21 = 5+8+34 = 13+34
48 to 51 have no sums
52 = 5+13+34


Using 8, 13, 21, 34, 55, 89, 144, 233, 377, 610...

1 to 7 have no sums
8 = 8
9 to 12 have no sums
13 = 13
14 to 20 have no sums
21 = 8+13 = 21
22 to 28 have no sums
29 = 8+21
30 to 33 have no sums
34 = 13+21 = 34
35 to 41 have no sums
42 = 8+13+21 = 8+34
43 to 46 have no sums
47 = 13+34
48 to 54 have no sums
55 = 8+13+34 = 21+34 = 55


Now ask: what fraction of integers can’t be represented as sums as you remove 1,2,3,5… from the Fibonacci sequence? Let’s approach the answer visually and represent the sums on a spiral created in the same way as an Ulam spiral. When the Fib-sums can’t use 1, you get this spiral:

2,3,5-sphiral
(integers that are the partial sums of unique Fibonacci numbers from 2, 3, 5, 8, 13, 21, 34, 55, 89…)

I call it a sphiral, because φ appears in the ratio of white-to-black space in the spiral, as we shall see. Phi also appears in these sphirals:

3,5,8,13-sphiral


5,8,13,21-sphiral


8,13,21,34-sphiral


Sum sphirals from 1,2,3,5 to 8,13,21,34(animated)


How does φ appear in the sphirals? Well, I think it must appear in lots more ways than I’m able to see. But one simple way, as remarked above, is that φ governs the ratio of white-to-black space in each sphiral. When all Fibonacci numbers can be used, there’s no black space, because all integers can be represented as sums of 1, 2, 3, 5, 8, 13, 21, 34, 55, 89… But that changes as numbers are dropped from the beginning of the Fibonacci sequence:


0.6180339887... of integers can be represented as partial sums of 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...
0.6180339887... = 1/φ^1
0.3819660112... of integers can be represented as partial sums of 3, 5, 8, 13, 21, 34, 55, 89, 144, 233...
0.3819660112... = 1/φ^2
0.2360679774... of integers can be represented as partial sums of 5, 8, 13, 21, 34, 55, 89, 144, 233, 377...
0.2360679774... = 1/φ^3
0.1458980337... of integers can be represented as partial sums of 8, 13, 21, 34, 55, 89, 144, 233, 377, 610...
0.1458980337... = 1/φ^4
0.0901699437... of integers can be represented as partial sums of 13, 21, 34, 55, 89, 144, 233, 377, 610, 987...
0.0901699437... = 1/φ^5
0.05572809... of integers can be represented as partial sums of 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597...
0.05572809... = 1/φ^6
0.0344418537... of integers can be represented as partial sums of 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584...
0.0344418537... = 1/φ^7
0.0212862362... of integers can be represented as partial sums of 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181...
0.0212862362... = 1/φ^8
0.0131556174... of integers can be represented as partial sums of 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765...
0.0131556174... = 1/φ^9
0.0081306187... of integers can be represented as partial sums of 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946...
0.0081306187... = 1/φ^10


But why stick to the standard Fibonacci sequence? If you seed a Fibonacci-like sequence with 2s instead of 1s, you get these numbers:


2, 2, 4, 6, 10, 16, 26, 42, 68, 110, 178, 288, 466, 754, 1220, 1974, 3194, 5168, 8362, 13530, 21892, 35422, 57314, 92736, 150050, 242786, 392836, 635622, 1028458, 1664080, 2692538, 4356618, 7049156, 11405774, 18454930, 29860704, 48315634, 78176338, 126491972, 204668310...


Obviously, all numbers in the 2,2,4-sequence are even, so no odd number is the partial sum of unique numbers in the sequence. But all even numbers are partial sums of the sequence. In other words:


0.5 of integers can be represented as partial sums of 2, 2, 4, 6, 10, 16, 26, 42, 68, 110...


So what happens when you drop the 2s and represent the sums graphically? You get this attractive sphiral:

4,6,10,16-sphiral (lo-res)


4,6,10,16-sphiral (hi-res)


In the 4,6,10,16-sphiral, the ratio of white-to-black space is 0.3090169943749474241… This is because:


0.3090169943749474241... of integers can be represented as partial sums of 4, 6, 10, 16, 26, 42, 68, 110, 178, 288...
0.3090169943749474241... = φ^1 * 0.5


Now try the 6,10,16,26-sphiral and 10,16,26,42-sphiral:

6,10,16,26-sphiral


10,16,26,42-sphiral


In the 4,6,10,16-sphiral, the ratio of white-to-black space is 0.190983005625… This is because:


0.190983005625... of integers can be represented as partial sums of 6, 10, 16, 26, 42, 68, 110, 178, 288, 466...
0.190983005625... = φ^2 * 0.5


And so on:


0.1180339887498948482... of integers can be represented as partial sums of 10, 16, 26, 42, 68, 110, 178, 288, 466, 754...
0.1180339887498948482... = φ^3 * 0.5
0.072949016875... of integers can be represented as partial sums of 16, 26, 42, 68, 110, 178, 288, 466, 754, 1220...
0.072949016875... = φ^4 * 0.5


Fine as Nine

This is a regular nonagon (a polygon with nine sides):

A nonagon or enneagon (from Wikipedia)

And this is the endlessly repeating decimal of the reciprocal of 7:

1/7 = 0.142857142857142857142857…

What is the curious connection between 1/7 and nonagons? If I’d been asked that a week ago, I’d’ve had no answer. Then I found a curious connection when I was looking at the leading digits of polygonal numbers. A polygonal number is a number that can be represented in the form of a polygon. Triangular numbers look like this:


* = 1

*
** = 3

*
**
*** = 6

*
**
***
**** = 10

*
**
***
****
***** = 15

By looking at the shapes rather than the numbers, it’s easy to see that you generate the triangular numbers by simply summing the integers:


1 = 1
1+2=3
1+2+3=6
1+2+3+4=10
1+2+3+4+5=15

Now try the square numbers:


* = 1

**
** = 4

***
***
*** = 9

****
****
****
**** = 16

*****
*****
*****
*****
***** = 25


You generate the square numbers by summing the odd integers:


1 = 1
1+3 = 4
1+3+5 = 9
1+3+7 = 16
1+3+7+9 = 25

Next come the pentagonal numbers, the hexagonal numbers, the heptagonal numbers, and so on. I was looking at the leading digits of these numbers and trying to find patterns. For example, when do the leading digits of the k-th triangular number, tri(k), match the digits of k? This is when:


tri(1) = 1
tri(19) = 190
tri(199) = 19900
tri(1999) = 1999000
tri(19999) = 199990000
tri(199999) = 19999900000
[...]

That pattern is easy to explain. The formula for the k-th polygonal number is k * ((pn-2)*k + (4-pn)) / 2, where pn = 3 for the triangular numbers, 4 for the square numbers, 5 for the pentagonal numbers, and so on. Therefore the k-th triangular number is k * (k + 1) / 2. When k = 19, the formula is 19 * (19 + 1) / 2 = 19 * 20 / 2 = 19 * 10 = 190. And so on. Now try the pol(k) = leaddig(pol(k)) for higher polygonal numbers. The patterns are easy to predict until you get to the nonagonal numbers:


square(10) = 100
square(100) = 10000
square(1000) = 1000000
square(10000) = 100000000
square(100000) = 10000000000
[...]


pentagonal(7) = 70
pentagonal(67) = 6700
pentagonal(667) = 667000
pentagonal(6667) = 66670000
pentagonal(66667) = 6666700000
[...]


hexagonal(6) = 66
hexagonal(51) = 5151
hexagonal(501) = 501501
hexagonal(5001) = 50015001
hexagonal(50001) = 5000150001
[...]


heptagonal(5) = 55
heptagonal(41) = 4141
heptagonal(401) = 401401
heptagonal(4001) = 40014001
heptagonal(40001) = 4000140001
[...]


octagonal(4) = 40
octagonal(34) = 3400
octagonal(334) = 334000
octagonal(3334) = 33340000
octagonal(33334) = 3333400000
[...]


nonagonal(4) = 46
nonagonal(30) = 3075
nonagonal(287) = 287574
nonagonal(2858) = 28581429
nonagonal(28573) = 2857385719
nonagonal(285715) = 285715000000
nonagonal(2857144) = 28571444285716
nonagonal(28571430) = 2857143071428575
nonagonal(285714287) = 285714287571428574
nonagonal(2857142858) = 28571428581428571429
nonagonal(28571428573) = 2857142857385714285719
nonagonal(285714285715) = 285714285715000000000000
nonagonal(2857142857144) = 28571428571444285714285716
nonagonal(28571428571430) = 2857142857143071428571428575
nonagonal(285714285714287) = 285714285714287571428571428574
nonagonal(2857142857142858) = 28571428571428581428571428571429
nonagonal(28571428571428573) = 2857142857142857385714285714285719
nonagonal(285714285714285715) = 285714285714285715000000000000000000
nonagonal(2857142857142857144) = 28571428571428571444285714285714285716
nonagonal(28571428571428571430) = 2857142857142857143071428571428571428575
[...]


What’s going on with the leading digits of the nonagonals? Well, they’re generating a different reciprocal. Or rather, they’re generating the multiple of a different reciprocal:


1/7 * 2 = 2/7 = 0.285714285714285714285714285714...

And why does 1/7 have this curious connection with the nonagonal numbers? Because the nonagonal formula is k * (7k-5) / 2 = k * ((9-2) * k + (4-pn)) / 2. Now look at the pentadecagonal numbers, where pn = 15:


pentadecagonal(1538461538461538461540) = 15384615384615384615406923076923076923076930

2/13 = 0.153846153846153846153846153846...

pentadecagonal formula = k * (13k - 11) / 2 = k * ((15-2)*k + (4-15)) / 2

Penultimately, let’s look at the icosikaihenagonal numbers, where pn = 21:


icosikaihenagonal(2) = 21
icosikaihenagonal(12) = 1266
icosikaihenagonal(107) = 107856
icosikaihenagonal(1054) = 10544743
icosikaihenagonal(10528) = 1052878960
icosikaihenagonal(105265) = 105265947385
icosikaihenagonal(1052633) = 10526335263165
icosikaihenagonal(10526317) = 1052631731578951
icosikaihenagonal(105263159) = 105263159210526318
icosikaihenagonal(1052631580) = 10526315801578947370
icosikaihenagonal(10526315791) = 1052631579163157894746
icosikaihenagonal(105263157896) = 105263157896368421052636
icosikaihenagonal(1052631578949) = 10526315789497368421052643
icosikaihenagonal(10526315789475) = 1052631578947542105263157900
icosikaihenagonal(105263157894738) = 105263157894738263157894736845
icosikaihenagonal(1052631578947370) = 10526315789473706842105263157905
icosikaihenagonal(10526315789473686) = 1052631578947368689473684210526331
icosikaihenagonal(105263157894736843) = 105263157894736843000000000000000000
icosikaihenagonal(1052631578947368422) = 10526315789473684220526315789473684211
icosikaihenagonal(10526315789473684212) = 1052631578947368421257894736842105263166

2/19 = 0.1052631578947368421052631579

icosikaihenagonal formula = k * (19k - 17) / 2 = k * ((21-2)*k + (4-21)) / 2

And ultimately, let’s look at this other pattern in the leading digits of the triangular numbers, which I can’t yet explain at all:


tri(904) = 409060
tri(6191) = 19167336
tri(98984) = 4898965620
tri(996694) = 496699963165
tri(9989894) = 49898996060565
tri(99966994) = 4996699994681515
tri(999898994) = 499898999601055515
tri(9999669994) = 49996699999451815015
tri(99998989994) = 4999898999960055555015
tri(999996699994) = 499996699999945018150015
tri(9999989899994) = 49999898999996005055550015
tri(99999966999994) = 4999996699999994500181500015
tri(999999898999994) = 499999898999999600500555500015
[...]

Hour Power

How do you get an hourglass from this shape?

Rep-4 L-tromino


In fact, it’s easy. You simply divide the shape into four identical copies of itself, discard one copy, and repeat the process with each of the sub-copies:

l-triomino_124

Constructing an hourglass (animated)

l-triomino_124_upright_static1

Hourglass (static)


Here are some more posts about what I call the hourglass fractal:

The Hourglass Fractal at Overlord of the Über-feral

Tright Sights

Here’s a right triangle, where a^2 + b^2 = c^2. But what are the exact values of a, b, and c?


You might be able to guess by eye, but could you prove your guess? Now try the same right triangle tiled with three identical copies of itself:

1-√3-2 triangle as rep3 rep-tile


Now you can prove the exact values of a, b, and c. If the vertical side, a, is 1, then the hypotenuse, c, is 2, because the length that fits once into a fits twice into c. Therefore 2^2 = 1^2 + b^2 → 4 = 1 + b^2 → 4-1 = b^2 → 3 = b^2 → √3 = b. The horizontal side, b, has a length of √3 = 1.73205080757… So the right triangle is 1-√3-2. And if it’s rep3, that is, can be divided into three identical copies of itself, then it’s also rep9, rep27, and so on:

1-√3-2 triangle as rep9 rep-tile


1-√3-2 triangle as rep27 rep-tile


1-√3-2 triangle as rep81 rep-tile


1-√3-2 triangle as rep243 rep-tile


1-√3-2 triangle as rep729 rep-tile


Once you’ve got a rep-tile, you can create fractals. But the 1-√3-2 triangle is cramped. You need more space to work with. And it’s easy to find that space when you realize that a standard equilateral triangle can be divided into six 1-√3-2 triangles:

Equilateral triangle divided into six 1-√3-2 triangles


Equilateral triangle tiled with 1-√3-2 triangles (stage 1)

(please open in new window if image is distorted)


Equilateral triangle tiled with 1-√3-2 triangles (stage 2)


Equilateral triangle tiled with 1-√3-2 triangles (stage 3)


Here are variant colorings of the stage-3 tiled triangle:








But where are the fractals? In one way, you’ve already seen them. But they get more obvious like this:

Fractal stage 1


Fractal #2


Fractal #3


Fractal #4


Fractal #5


Fractal #6


Fractal #7


Fractal #8


Fractal (animated)


Another fractal stage 1

[…]

[…]

Another fractal #8


Another fractal (animated)


And when you have a fractal created using an equilateral triangle, it’s easy to expand the fractal into a circle, like this:

Original fractal

Fractal expanded into circle


Triangular fractal to circular fractal (animated)








Extra Tetra

Construction of a Sierpiński tetrahedron (from WikiMedia)


Post-Performative Post-Scriptum

The toxic title of this incendiary intervention radically references George Harrison’s album Extra Texture (1975).

First Whirled Warp

Imagine two points moving clockwise around the circumference of a circle. Find the midpoint between the two points when one point is moving twice as fast as the other. The midpoint will trace this shape:

Midpoint of two points moving around circle at speeds s and s*2

(n.b. to make things easier to see, the red circle shown here and elsewhere is slightly larger than the virtual circle used to calculate the midpoints)


Now suppose that one point is moving anticlockwise. The midpoint will now trace this shape:

Midpoint for s, -s*2


Now try three points, two moving at the same speed and one moving twice as fast:

Midpoint for s, s, s*2


When the point moving twice as fast is moving anticlockwise, this shape appears:

Midpoint for s, s, -s*2


Here are more of these midpoint-shapes:

Midpoint for s, s*3


Midpoint for s, -s*3


Midpoint for s*2, s*3


Midpoint for s, -s, s*2


Midpoint for s, s*2, -s*2


Midpoint for s, s*2, s*2


Midpoint for s, -s*3, -s*5


Midpoint for s, s*2, s*3


Midpoint for s, s*2, -s*3


Midpoint for s, -s*3, s*5


Midpoint for s, s*3, s*5


Midpoint for s, s, s, s*3


Midpoint for s, s, s, -s*3


Midpoint for s, s, -s, s*3


Midpoint for s, s, -s, -s*3


But what about points moving around the perimeter of a polygon? Here are the midpoints of two points moving clockwise around the perimeter of a square, with one point moving twice as fast as the other:

Midpoint for square with s, s*2


And when one point moves anticlockwise:

Midpoint for square with s, -s*2


If you adjust the midpoints so that the square fills a circle, they look like this:

Midpoint for square with s, s*2, with square adjusted to fill circle


When the red circle is removed, the midpoint-shape is easier to see:

Midpoint for square with s, s*2, circ-adjusted


Here are more midpoint-shapes from squares:

Midpoint for s, s*3


Midpoint for s, -s*3


Midpoint for s, s*4


And some more circularly adjusted midpoint-shapes from squares:

Midpoint for s, s*3, circ-adjusted


Midpoint for s*2, s*3, circ-adjusted


Midpoint for s, s*5, circ-adjusted


Midpoint for s, s*6, circ-adjusted


Midpoint for s, s*7, circ-adjusted


Finally (for now), let’s look at triangles. If three points are moving clockwise around the perimeter of a triangle, one moving four times as fast as the other two, the midpoint traces this shape:

Midpoint for triangle with s, s, s*4


Now try one of the points moving anticlockwise:

Midpoint for s, s, -s*4


Midpoint for s, -s, s*4


If you adjust the midpoints so that the triangular space fills a circle, they look like this:

Midpoint for s, s, s*4, with triangular space adjusted to fill circle


Midpoint for s, -s, s*4, circ-adjusted


Midpoint for s, s, -s*4, circ-adjusted


There are lots more (infinitely more!) midpoint-shapes to see, so watch this (circularly adjusted) space.


Previously pre-posted (please peruse)

Second Whirled Warp — more on points moving around polygons
We Can Circ It Out — more on converting polygons into circles