
Some examples of impossible geometry (poster at Tarquin)

Some examples of impossible geometry (poster at Tarquin)
In “Diamonds to Dust”, I showed how the Mitsubishi logo could be turned into a fractal, like this:
The Mitsubishi diamonds (source)
↓
↓
Mitsubishi logo to fractal (animated)
Now I want to look at another famous symbol and its fractalization. Here’s the symbol, the hexagram:

Hexagram, a six-pointed star
The hexagram can be dissected into twelve equilateral triangles like this:

Hexagram dissected into 12 equilateral triangles
If each triangle in the dissection is replaced by a hexagram, then the hexagram is dissected again into twelve triangles, you get a famous fractal, the Koch snowflake:
The Koch snowflake
The Koch snowflake again
Hexagram to Koch snowflake (animated)
If you color the triangles, you get something like this:
Colored hexagram to fractal (animated)
Of course, this is a very inefficient way to create a Koch snowflake, because the interior hexagrams consume processing time while not contributing to the fractal boundary of the snowflake. But in a way you can fully fractalize the hexagram if you draw only the point at the center of each triangle and then color it according to how many times the pixel in question has been drawn on before. To see how this works, first look at what happens when the center-points are represented in white:
White center-points (animated)
And here’s the fully fractalized hexagram, with colored center-points:
Colored center-points (animated)
Previously Pre-Posted…
• The Hex Fractor #1 — hexagons and fractals
• The Hex Fractor #2 — hexagons and fractals again
• Diamonds to Dust — turning the Mitsubishi logo into a fractal
Here is an equilateral triangle divided into nine smaller equilateral triangles:

Rep-9 equilateral triangle
The triangle is a rep-tile — it’s tiled with repeating copies of itself. In this case, it’s a rep-9 triangle. Each of the nine smaller triangles can obviously be divided in their turn:

Rep-81 equilateral triangle
Rep-729 equilateral triangle
Rep-729 equilateral triangle again
Rep-6561 equilateral triangle
Rep-9 triangle repeatedly subdividing (animated)
How try trimming the original rep-9 triangle, picking one of the trimmings, and repeating in finer detail. If you choose six triangles in this pattern, you can create a symmetrical braided fractal:
Triangular fractal stage 1
Triangular fractal #2
Triangular fractal #3
Triangular fractal #3 (cleaning up)
Triangular fractal #3 (cleaning up more)
Triangular fractal #4
Triangular fractal #5
Triangular fractal #6
Triangular fractal (animated)
But this fractal using a three-triangle trim-picking isn’t symmetrical:
Trim-picking #1
Trim-picking #2
Trim-picking #3
Trim-picking #4
Trim-picking #5
To make it symmetric, you have to delay the trim, using the full rep-9 trim for the first stage:
Delayed trim-picking #1
Delayed trim-picking #2
Delayed trim-picking #3
Delayed trim-picking #4
Delayed trim-picking #5
Delayed trim-picking #6 (with first two stages as rep-9)
Delayed trim-picking (animated)
Here are some more delayed trim-pickings used to created symmetrical patterns:
In “Polykoch!”, I looked at variants on the famous Koch snowflake, which is created by erecting new triangles on the sides of an equilaternal triangle, like this:
Koch snowflake #1
Koch snowflake #2
Koch snowflake #3
Koch snowflake #4
Koch snowflake #5
Koch snowflake #6
Koch snowflake #7
Koch snowflake (animated)
One variant is simple: the new triangles move inward rather than outward:
Inverted Koch snowflake #1
Inverted Koch snowflake #2
Inverted Koch snowflake #3
Inverted Koch snowflake #4
Inverted Koch snowflake #5
Inverted Koch snowflake #6
Inverted Koch snowflake #7
Inverted Koch snowflake (animated)
Or you can alternate between moving the new triangles inward and outward. When they always move outward and have sides 1/5 the length of the sides of the original triangle, the snowflake looks like this:

When they move inward, then always outward, the snowflake looks like this:
Now here’s a Koch square with its new squares moving inward:
Inverted Koch square #1
Inverted Koch square #2
Inverted Koch square #3
Inverted Koch square #4
Inverted Koch square #5
Inverted Koch square #6
Inverted Koch square (animated)
And here’s a pentagon with squares moving inwards on its sides:
Pentagon with squares #1
Pentagon with squares #2
Pentagon with squares #3
Pentagon with squares #4
Pentagon with squares #5
Pentagon with squares #6
Pentagon with squares (animated)
And finally, an octagon with hexagons on its sides. First the hexagons move outward, then inward, then outward, then inward, then outward:
Octagon with hexagons #1
Octagon with hexagons #2
Octagon with hexagons #3
Octagon with hexagons #4
Octagon with hexagons #5
Octagon with hexagons (animated)
This is how you form the famous Koch snowflake, in which at each stage you erect a new triangle on the middle of each line whose sides are 1/3 the length of the line:

Koch snowflake #1
Koch snowflake #2
Koch snowflake #3
Koch snowflake #4
Koch snowflake #5
Koch snowflake #6
Koch snowflake #7
Koch snowflake (animated)
Here’s a variant of the Koch snowflake, with new mid-triangles whose sides are 1/2 the length of the lines:
Koch snowflake (1/2 side) #1
Koch snowflake (1/2 side) #2
Stage #3
Stage #4
Stage #5
Stage #6
Stage #7
Stage #8
Koch snowflake (1/2 side) (animated)
But why stop at triangles? This is a Koch square, in which at each stage you erect a new 1/3 square on the middle of each line:
Koch square #1
Koch square #2
Koch square #3
Koch square #4
Koch square #5
Koch square #6
Koch square (animated)
And a Koch pentagon, in which at each stage you erect a pentagon on the middle of each line whose sides are 1 – (1/φ^2 * 2) = 0·236067977… the length of the line (I used 55/144 as an approximation of 1/φ^2):
Koch pentagon (side 55/144) #1
Koch pentagon #2
Koch pentagon #3
Koch pentagon #4
Koch pentagon #5
Koch pentagon #6
Koch pentagon (animated)
In this close-up, you can see how precisely the sprouting pentagons kiss at each stage:

Koch pentagon (close-up) #1
Koch pentagon (close-up) #2
Koch pentagon (close-up) #3
Koch pentagon (close-up) #4
Koch pentagon (close-up) #5
Koch pentagon (close-up) #6
Koch pentagon (close-up) (animated)
In his Penguin Dictionary of Curious and Interesting Numbers (1986), David Wells says that 142857 is “beloved of all recreational mathematicians”. He then says it’s the decimal period of the reciprocal of the fourth prime: “1/7 = 0·142857142857142…” And the reciprocal has maximum period. There are 6 = 7-1 digits before repetition begins, unlike the earlier prime reciprocals:
1/2 = 0·5
1/3 = 0·333...
1/5 = 0·2
1/7 = 0·142857 142857 142...
In other words, all possible remainders appear when you calculate the decimals of 1/7:
1*10 / 7 = 1 remainder 3 → 0·1
3*10 / 7 = 4 remainder 2 → 0·14
2*10 / 7 = 2 remainder 6 → 0·142
6*10 / 7 = 8 remainder 4 → 0·1428
4*10 / 7 = 5 remainder 5 → 0·14285
5*10 / 7 = 7 remainder 1 → 0·142857
1*10 / 7 = 1 remainder 3 → 0·142857 1
3*10 / 7 = 4 remainder 2 → 0·142857 14
2*10 / 7 = 2 remainder 6 → 0·142857 142...
That happens again with 1/17 and 1/19, but Wells says that “surprisingly, there is no known method of predicting which primes have maximum period.” It’s a simple question that involves some deep mathematics. Looking at prime reciprocals is like peering through a small window into a big room. Some things are easy to see, some are difficult and some are presently impossible.
In his discussion of 142857, Wells mentions one way of peering through a period pane: “The sequence of digits also makes a striking pattern when the digits are arranged around a circle.” Here is the pattern, with ten points around the circle representing the digits 0 to 9:
The digits of 1/7 = 0·142857142…
But I prefer, for further peers through the period-panes, to create the period-panes using remainders rather than digits. That is, the number of points around the circle is determined by the prime itself rather than the base in which the reciprocal is calculated:
The remainders of 1/7 = 1, 3, 2, 6, 4, 5…
Period-panes can look like butterflies or bats or bivalves or spiders or crabs or even angels. Try the remainders of 1/13. This prime reciprocal doesn’t have maximum period: 1/13 = 0·076923 076923 076923… So there are only six remainders, creating this pattern:
remainders(1/13) = 1, 10, 9, 12, 3, 4
The multiple 2/13 has different remainders and creates a different pattern:
remainders(2/13) = 2, 7, 5, 11, 6, 8
But 1/17, 1/19 and 1/23 all have maximum period and yield these period-panes:
remainders(1/17) = 1, 10, 15, 14, 4, 6, 9, 5, 16, 7, 2, 3, 13, 11, 8, 12
remainders(1/19) = 1, 10, 5, 12, 6, 3, 11, 15, 17, 18, 9, 14, 7, 13, 16, 8, 4, 2
remainders(1/23) = 1, 10, 8, 11, 18, 19, 6, 14, 2, 20, 16, 22, 13, 15, 12, 5, 4, 17, 9, 21, 3, 7
It gets mixed again with the prime 73, which doesn’t have maximum period and yields a plethora of period-panes (some patterns repeat with different n * 1/73, so I haven’t included them):
remainders(1/73)
remainders(2/73)
remainders(3/73)
remainders(4/73)
remainders(5/73)
remainders(6/73)
remainders(9/73)
remainders(11/73) (identical to pattern of 5/73)
remainders(12/73)
remainders(18/73)
101 yields a plethora of period-panes, but they’re variations on a simple theme. They look like flapping wings in this animated gif:
remainders of n/101 (animated)
The remainders of 137 yield more complex period-panes:
remainders of n/137 (animated)
And what about different bases? Here are period-panes for the remainders of 1/17 in bases 2 to 16:
remainders(1/17) in base 2
remainders(1/17) in b3
remainders(1/17) in b4
remainders(1/17) in b5
remainders(1/17) in b6
remainders(1/17) in b7
remainders(1/17) in b8
remainders(1/17) in b9
remainders(1/17) in b10
remainders(1/17) in b11
remainders(1/17) in b12
remainders(1/17) in b13
remainders(1/17) in b14
remainders(1/17) in b15
remainders(1/17) in b16
remainders(1/17) in bases 2 to 16 (animated)
But the period-panes so far have given a false impression. They’ve all been symmetrical. That isn’t the case with all the period-panes of n/19:
remainders(1/19) in b2
remainders(1/19) in b3
remainders(1/19) in b4 = 1, 4, 16, 7, 9, 17, 11, 6, 5 (asymmetrical)
remainders(1/19) in b5 = 1, 5, 6, 11, 17, 9, 7, 16, 4 (identical pattern to that of b4)
remainders(1/19) in b6
remainders(1/19) in b7
remainders(1/19) in b8
remainders(1/19) in b9
remainders(1/19) in b10 (identical pattern to that of b2)
remainders(1/19) in b11
remainders(1/19) in b12
remainders(1/19) in b13
remainders(1/19) in b14
remainders(1/19) in b15
remainders(1/19) in b16
remainders(1/19) in b17
remainders(1/19) in b18
remainders(1/19) in bases 2 to 18 (animated)
Here are a few more period-panes in different bases:
remainders(1/11) in b2
remainders(1/11) in b7
remainders(1/13) in b6
remainders(1/43) in b6
remainders in b2 for reciprocals of 29, 37, 53, 59, 61, 67, 83, 101, 107, 131, 139, 149 (animated)
And finally, to performativize the pun of “period pane”, here are some period-panes for 1/29, whose maximum period will be 28 (NASA says that the “Moon takes about one month to orbit Earth … 27.3 days to complete a revolution, but 29.5 days to change from New Moon to New Moon”):
remainders(1/29) in b4
remainders(1/29) in b5
remainders(1/29) in b8
remainders(1/29) in b9
remainders(1/29) in b11
remainders(1/29) in b13
remainders(1/29) in b14
remainders(1/29) in various bases (animated)
In “The Trivial Troot”, I looked at what happens when tri(k), the k-th triangular number, is one digit longer than the previous triangular number, tri(k-1):
6 = tri(3)
10 = tri(4)
91 = tri(13)
105 = tri(14)
990 = tri(44)
1035 = tri(45)
[...]↓
10 ← 4
105 ← 14
1035 ← 45
10011 ← 141
100128 ← 447
1000405 ← 1414
10001628 ← 4472
100005153 ← 14142
1000006281 ← 44721
10000020331 ← 141421
100000404505 ← 447214
1000001326005 ← 1414214
10000002437316 ← 4472136
100000012392316 ← 14142136
[...]
What’s going on with k? In a sense, it’s calculating the square roots of 2 and 20:
√2 = 1·414213562373095048801688724209698078569671875376948073176679738...
√20 = 4·472135954999579392818347337462552470881236719223051448541794491...
Now let’s say “Excelsior!” and go higher with a related sequence. A006003 is defined at the Online Encyclopedia of Integer Sequences as the “sum of the next n natural numbers”. Here it is:
1 = 1
5 = 2 + 3
15 = 4 + 5 + 6
34 = 7 + 8 + 9 + 10
65 = 11 + 12 + 13 + 14 + 15
111 = 16 + 17 + 18 + 19 + 20 + 21
175 = 22 + 23 + 24 + 25 + 26 + 27 + 28
260 = 29 + 30 + 31 + 32 + 33 + 34 + 35 + 36
369 = 37 + 38 + 39 + 40 + 41 + 42 + 43 + 44 + 45
505 = 46 + 47 + 48 + 49 + 50 + 51 + 52 + 53 + 54 + 55
671 = 56 + 57 + 58 + 59 + 60 + 61 + 62 + 63 + 64 + 65 + 66
870 = 67 + 68 + 69 + 70 + 71 + 72 + 73 + 74 + 75 + 76 + 77 + 78
1105 = 79 + 80 + 81 + 82 + 83 + 84 + 85 + 86 + 87 + 88 + 89 + 90 + 91
1379 = 92 + 93 + 94 + 95 + 96 + 97 + 98 + 99 + 100 + 101 + 102 + 103 + 104 + 105
1695 = 106 + 107 + 108 + 109 + 110 + 111 + 112 + 113 + 114 + 115 + 116 + 117 + 118 + 119 + 120
2056 = 121 + 122 + 123 + 124 + 125 + 126 + 127 + 128 + 129 + 130 + 131 + 132 + 133 + 134 + 135 + 136
2465 = 137 + 138 + 139 + 140 + 141 + 142 + 143 + 144 + 145 + 146 + 147 + 148 + 149 + 150 + 151 + 152 + 153
2925 = 154 + 155 + 156 + 157 + 158 + 159 + 160 + 161 + 162 + 163 + 164 + 165 + 166 + 167 + 168 + 169 + 170 + 171
3439 = 172 + 173 + 174 + 175 + 176 + 177 + 178 + 179 + 180 + 181 + 182 + 183 + 184 + 185 + 186 + 187 + 188 + 189 + 190
4010 = 191 + 192 + 193 + 194 + 195 + 196 + 197 + 198 + 199 + 200 + 201 + 202 + 203 + 204 + 205 + 206 + 207 + 208 + 209 + 210
[...]
If you’re familiar with triangular numbers, you’ll see that sumnext(k) is always higher than tri(k), except for sumnext(1) = 1 = tri(k). Now, this is what happens when sumnext(k) is one digit longer than sumnext(k-1):
5 = sumnext(2)
15 = sumnext(3)
65 = sumnext(5)
111 = sumnext(6)
870 ← 12
1105 ← 13
9855 ← 27
10990 ← 28
97585 ← 58
102719 ← 59
976625 ← 125
1000251 ← 126
9951391 ← 271
10061960 ← 272
99588644 ← 584
100101105 ← 585
997809119 ← 1259
1000188630 ← 1260
9995386529 ← 2714
10006439295 ← 2715
[...]↓
15 ← 3
111 ← 6
1105 ← 13
10990 ← 28
102719 ← 59
1000251 ← 126
10061960 ← 272
100101105 ← 585
1000188630 ← 1260
10006439295 ← 2715
100049490449 ← 5849
1000188006300 ← 12600
10000910550385 ← 27145
100003310078561 ← 58481
1000021311323825 ← 125993
10000026341777165 ← 271442
100000232056567634 ← 584804
1000002262299152685 ← 1259922
10000004237431278525 ← 2714418
100000026858987459346 ← 5848036
1000000119305407615071 ← 12599211
10000000921801015908705 ← 27144177
100000001209342964609615 ← 58480355
1000000000250317736274865 ← 125992105
10000000037633414521952245 ← 271441762
100000000183357362892853070 ← 584803548
1000000000250317673908773025 ← 1259921050
[...]
What’s going on now? In a sense, the digits of k are approximating the cube roots of 20, 200 and 2000:
2.714417616594906571518089469679489204805107769489096957284365443... = cuberoot(20)
5.848035476425732131013574720275845557060997270202060082845147020... = cuberoot(200)
12.59921049894873164767210607278228350570251464701507980081975112... = cuberoot(2000)
cuberoot(20) = 2.714417616594906571518089469679489204805107769489096957284365443...
cuberoot(200) = 5.848035476425732131013574720275845557060997270202060082845147020...
cuberoot(2000) = 12.59921049894873164767210607278228350570251464701507980081975112...
So you could say that this sequence has gone nexcelsior: sumnext(k) > tri(k); cubes are higher than squares; and (20, 200, 2000) is bigger than (2, 20).
Previously Pre-Posted…
• “The Trivial Troot” — explaining the earlier pattern in triangular numbers
Imagine a ballerina pirouetting on the perimeter of an equilateral triangle. Suppose that her armlength is half the radius of the circumscribed circle. If her right arm is represented in green and her right hand in yellow, this is one path that her right hand might trace, depending on the relative speeds of her feet and her pirouettes:
The perimeter of an equilateral triangle
A ballerina pirouetting on the perimeter stage #1
Perimeter pirouette #2
Perimeter pirouette #3
Perimeter pirouette #4
Perimeter pirouette #5
Perimeter pirouette #6
Perimeter pirouette #7
Perimeter pirouette #8
Perimeter pirouette #9
Perimeter pirouette #10
[…]
↓
[…]
Perimeter pirouette #128
Perimeter pirouettes (animated)
The right hand of the ballerina during the pirouettes
The full path traced by the ballerina’s right hand
The paths change as you adjust speed and direction (clockwise or anticlockwise) of the pirouettes, the armlength of the ballerina, and so on:
speed = 0.5 (pirouettes)
speed = 0.5 (path)
speed = -1 (anticlockwise pirouettes)
speed = -1 (path)
speed = 1, armlength = 1/3 (pirouettes)
speed = 1, armlength = 1/3 (path)
speed = -0.5 (pirouettes)
speed = -0.5 (path)
speed = -0.75 (pirouettes)
speed = -0.75 (path)
And what about the paths produced by pirouettes on the perimeters of other polygons? Watch this space.
Write the integers in groups of one, two, three, four… numbers like this:
1, 2,3, 4,5,6, 7,8,9,10, 11,12,13,14,15, 16,17,18,19,20,21, 22,23,24,25,26,27,28, 29,30,31,32,33,34,35,36, 37,38,39,40,41,42,43,44,45, 46,47,48,49,50,51,52,53,54,55, 56,57,58,59,60,61,62,63,64,65,66…
Now delete every second group:
1, 2,3, 4,5,6, 7,8,9,10, 11,12,13,14,15, 16,17,18,19,20,21, 22,23,24,25,26,27,28, 29,30,31,32,33,34,35,36, 37,38,39,40,41,42,43,44,45, 46,47,48,49,50,51,52,53,54,55, 56,57,58,59,60,61,62,63,64,65,66…
↓↓↓
1, 4,5,6, 11,12,13,14,15, 22,23,24,25,26,27,28, 37,38,39,40,41,42,43,44,45, 56,57,58,59,60,61,62,63,64,65,66…
The sum of the first n remaining groups equals n^4:
1 = 1 = 1^4
1 + 4+5+6 = 16 = 2^4
1 + 4+5+6 + 11+12+13+14+15 = 81 = 3^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 = 256 = 4^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 + 37+38+39+40+41+42+43+44+45 = 625 = 5^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 + 37+38+39+40+41+42+43+44+45 + 56+57+58+59+60+61+62+63+64+65+66 = 1296 = 6^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 + 37+38+39+40+41+42+43+44+45 + 56+57+58+59+60+61+62+63+64+65+66 + 79+80+81+82+83+84+85+86+87+88+89+90+91 = 2401 = 7^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 + 37+38+39+40+41+42+43+44+45 + 56+57+58+59+60+61+62+63+64+65+66 + 79+80+81+82+83+84+85+86+87+88+89+90+91 + 106+107+108+109+110+111+112+113+114+115+116+117+118+119+120 = 4096 = 8^4
1 + 4+5+6 + 11+12+13+14+15 + 22+23+24+25+26+27+28 + 37+38+39+40+41+42+43+44+45 + 56+57+58+59+60+61+62+63+64+65+66 + 79+80+81+82+83+84+85+86+87+88+89+90+91 + 106+107+108+109+110+111+112+113+114+115+116+117+118+119+120 + 137+138+139+140+141+142+143+144+145+146+147+148+149+150+151+152+153 = 6561 = 9^4
From David Wells’ Penguin Dictionary of Curious and Interesting Numbers (1986), entry for “81”
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 0Pascal'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 0Pascal'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 0Pascal'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 01Pascal'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 021Pascal'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 0285Pascal'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 2996Pascal'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 0Pascal'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 0Pascal'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 0Pascal'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 1Pascal'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 1Pascal'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 5Pascal'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 6Pascal'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 7Pascal'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