Deep-Dive Dyadendricity

This simple equation helps you understand a fractal:

1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + … = 2 = Σ(1/2k,k=0..∞)

Now here’s the construction of the H-tree fractal, in which the lines are divided in length by sqrt(2) = 1.41421356237… at each stage. Or multiplied by 0.70710678118… = &sqrt;0.5. This means that, after two divisions, the lines are 1/2 the size. So in the end they create a 1 x &sqrt;2 rectangle:

H-Tree fractal #1


H-Tree fractal #2


H-Tree fractal #3


H-Tree fractal #4


H-Tree fractal #5


H-Tree fractal #6


H-Tree fractal #7


H-Tree fractal #8


H-Tree fractal #9


H-Tree fractal #10

↓
[…]
↓

H-Tree fractal #13


H-Tree fractal #14


H-Tree fractal #15


Here’s an animation:

H-Tree fractal (animated at EZgif)


And here’s the H-tree in black-and-white:

H-Tree fractal #3

↓

H-Tree fractal #6

↓

H-Tree fractal #6

↓

H-Tree fractal #12

↓

H-Tree fractal #15

↓

H-Tree fractal (animated at EZgif)


Because the construction of the H-tree is governed by a string of directions — for example, left-right-right-left-left-left… or 211222… — you can perform tests on that string to create sub-fractals from the super-fractal. Like this:

count(1) = count(2) in string to step 12


count(1) = count(2) in string (omitting lines)


sum(string) = mul(string)


sum(string) > mul(string)


count(1) = 2 or count(2) = 2 after step 2


count(1) < count(2)


count(1) < 3 or count(2) < 3 after step 6


value of string after step 8 > value of string at step 1


value after step 8 > value at step 4


value after step 8 < value step 1


ispalindrome(string) to step 11


ispalindrome(string) to step 18


ispalindrome(string) to step 20


alternating 121… or 212… in string after step 9


ispolygonal(sum(string[i]-1),pol=10)


isprime(sum(string))


sum(string[i]-1) mod 13 = 0


sum(string[i]-1) mod 13 = 1


sum(string[i]-1) mod 16 = 0


sum(string[i]-1) mod 18 = 0


Message from Mater

As any recreational mathematician kno, the Ulam spiral shows the prime numbers on a spiral grid of integers. Here’s a Ulam spiral with 1 represented in blue and 2, 3, 5, 7… as white blocks spiralling anti-clockwise from the right of 1:

The Ulam spiral of prime numbers


Ulam spiral at higher resolution


I like the Ulam spiral and whenever I’m looking at new number sequences I like to Ulamize it, that is, display it on a spiral grid of integers. Sometimes the result looks good, sometimes it doesn’t. But I’ve always wondered something beforehand: will this be the spiral where I see a message appear? That is, will I see a message from Mater Mathematica, Mother Maths, the omniregnant goddess of mathematics? Is there an image or text embedded in some obscure number sequence, revealed when the sequence is Ulamized and proving that there’s divine intelligence and design behind the universe? Maybe the image of a pantocratic cat will appear. Or a text in Latin or Sanskrit or some other suitably century-sanctified language.

That’s what I wonder. I don’t wonder it seriously, of course, but I do wonder it. But until 22nd March 2025 I’d never seen any Ulam-ish spiral that looked remotely like a message. But 22nd May is the day I Ulamed some continued fractions. And I saw something that did look a little like a message. Like text, that is. But I might need to explain continued fractions first. What are they? They’re a fascinating and beautiful way of representing both rational and irrational numbers. The continued fractions for rational numbers look like this in expanded and compact format:

5/3 = 1 + 1/(1 + ½) = 1 + ⅔
5/3 = [1; 1, 2]

19/7 = 2 + 1/(1 + 1/(2 + ½)) = 2 + 4/7
19/7 = [2; 1, 2, 2]

2/3 = 0 + 1/(1 + 1/2)
2/3 = [0; 1, 2] (compare 5/3 above)

3/5 = 0 + 1/(1 + 1/(1 + 1/2))
3/5 = [0; 1, 1, 2]

5/7 = 0 + 1/(1 + 1/(2 + 1/2))
5/7 = [0; 1, 2, 2] (compare 19/7 above)

13/17 = 0 + 1/(1 + 1/(3 + 1/4))
13/17 = [0; 1, 3, 4]

30/67 = 0 + 1/(2 + 1/(4 + 1/(3 + ½)))
30/67 = [0; 2, 4, 3, 2]

The continued fractions of irrational numbers are different. Most importantly, they never end. For example, here are the infinite continued fractions for φ, √2 and π in expanded and compact format:

φ = 1 + (1/(1 + 1/(1 + 1/(1 + …)))φ = [1; 1]

√2 = 1 + (1/(2 + 1/(2 + 1/(2 + …)))
√2 = [1; 2]

π = 3 + 1/(7 + 1/(15 + 1/(1 + 1/(292 + 1/(1 + 1/(1 + 1/(1 + 1/(2 + 1/(1 + 1/(3 +…))))))))))
π = [3; 7, 15, 1, 292, 1, 1, 1, 2, 1, 3…]

As you can see, the continued fraction of π doesn’t fall into a predictable pattern like those for φ and √2. But I’ve already gone into continued fractions further than I need for this post, so let’s return to the continued fractions of rationals. I set up an Ulam spiral to show patterns based on the continued fractions for 1/1, ½, ⅓, ⅔, 1/4, 2/4, 3/4, 1/5, 2/5, 3/5, 4/5, 1/6, 2/6, 3/6… (where the fractions are assigned to 1,2,3… and 2/4 = ½, 2/6 = ⅓ etc). For example, if the continued fraction contains a number higher than 5, you get this spiral:

Spiral for continued fractions containing at least number > 5


With tests for higher and higher numbers in the continued fractions, the spirals start to thin and apparent symbols start to appear in the arms of the spirals:

Spiral for contfrac > 10


Spiral for contfrac > 15


Spiral for contfrac > 20


Spiral for contfrac > 25


Spiral for contfrac > 30


Spiral for contfrac > 35


Spiral for contfrac > 40


Spirals for contfrac > 5..40 (animated at EZgif)


Here are some more of these spirals at increasing magnification:

Spiral for contfrac > 23 (#1)


Spiral for contfrac > 23 (#2)


Spiral for contfrac > 23 (#3)


Spiral for contfrac > 13


Spiral for contfrac > 15 (off-center)


Spiral for contfrac > 23 (off-center)


And here are some of the symbols picked out in blue:

Spiral for contfrac > 15 (blue symbols)


Spiral for contfrac > 23 (blue symbols)


But they’re not really symbols, of course. They’re quasi-symbols, artefacts of the Ulamization of a simple test on continued fractions. Still, they’re the closest I’ve got so far to a message from Mater Mathematica.

Fract-L Geometry

Suppose you set up an L, i.e. a vertical and horizontal line, representing the x,y coordinates between 0 and 1. Next, find the fractional pairs x = 1/2, 1/3, 2/3, 1/4, 2/4…, y = 1/2, 1/3, 2/3, 1/4, 2/4… and mark the point (x,y). That is, find the point, say, 1/5 of the way along the x-line, then the points 1/5, 2/5, 3/5 and 4/5 along the y-line, marking the points (1/5, 1/5), (1/5, 2/5), (1/5, 3/5), (1/5, 4/5). Then find (2/5, 1/5), (2/5, 2/5), (2/5, 3/5), (2/5, 4/5) and so on. Some interesting patterns appear in what I call a Frac-L (pronounced “frackle”) or Fract-L:

Frac-L for 1/2 to 21/22


Frac-L for 1/2 to 48/49


Frac-L for 1/2 to 75/76


Frac-L for 1/2 to 102/103


Frac-L for 1/2 to 102/103 (animated)


If the (x,y) point is first red, then becomes different colors as it is repeatedly found, you get these patterns:

Frac-L for 1/2 to 48/49 (color)


Frac-L for 1/2 to 75/79 (color)


Frac-L for 1/2 to 102/103 (color) (animated)


Now try polygonal numbers. The triangular numbers are 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78…, so you’re finding the fractional pairs, say, (1/21, 1/21), (1/21, 3/21, (1/21, 6/21), (1/21, 10/21), (1/21, 15/21), then (3/21, 1/21), (3/21, 3/21, (3/21, 6/21), (3/21, 10/21), (3/21, 15/21), and so on:

Frac-L for triangular fractions


The frac-L for square numbers (1, 4, 9, 16, 25, 36, 49, 64, 81, 100…) is almost identical:

Frac-L for square fractions, e.g. (1/16, 1/16), (1/16, 4/16), (1/16, 9/16)…


So is the frac-L for pentagonal numbers (1, 5, 12, 22, 35, 51, 70, 92, 117, 145, 176, 210, 247, 287, 330…):

Frac-L for pentagonal fractions, e.g. (1/35, 5/35), (1/35, 12/35), (1/35,22/35)…


Here are frac-Ls for tetrahedral and square-pyramidal numbers:

Frac-L for tetrahedral fractions


Frac-L for square pyramidal fractions


But what about prime numbers (skipping 2)? Here the fractional pairs are, say, (1/17, 1/17), (1/17, 3/17), (1/17, 5/17), (1/17, 7/17), (1/17, 11/17), (1/17, 13/17), then (3/17, 1/17), (3/17, 3/17), (3/17, 5/17), (3/17, 7/17), (3/17, 11/17), (3/17, 13/17), and so on:

Frac-L for 1/3 to 73/79 (prime fractions)


Frac-L for 1/3 to 223/227


Frac-L for 1/3 to 307/331


Frac-L for 1/3 to 307/331 (animated)


Frac-L for 1/3 to 73/79 (color) (prime fractions)


Frac-L for 1/3 to 223/227 (color)


Frac-L for 1/3 to 307/331 (color)


Frac-L for 1/3 to 307/331 (color) (animated)


And finally (for now), a frac-L for Fibonnaci numbers, where the fractional pairs are, say, (1/13, /13), (1/13, 2/13), (1/13, 3/13), (1/13, 5/13), (1/13, 8/13), then (2/13, /13), (2/13, 2/13), (2/13, 3/13), (2/13, 5/13), (2/13, 8/13), and so on:

Frac-L for Fibonacci fractions to 14930352/2178309 = fibonacci(36)/fibonacci(37)


Mods and Clockers

To understand clock-arithmetic, simply picture a clock-face with one hand and a big fat 0 in place of the 12. Now you can do some clock-arithmetic. For example, set the hour-hand to 5, then move on 4 hours. You’ve done this sum:

5 + 4 → 9

Now try 9 + 7. The hour-hand is already on 9, so move forward 7 hours:

9 + 7 → 4

Now try 3 + 8 + 1:

3 + 8 + 1 → 0

And 3 * 4:

4 * 3 = 4 + 4 + 4 → 0

That’s clock-arithmetic. But you’re not confined to 12-hour clocks. Here’s a 7-hour clock, where the 7 is replaced with a 0:

3 + 1 → 4
4 + 5 → 2
2 + 4 + 1 → 0
3 * 3 = 3 + 3 + 3 → 2

Another name for clock-arithmetic is modular arithmetic, because the clocks model the process of dividing a number by 12 or 7 and finding the remainder or residue — 12 or 7 is known as the modulus (and modulo is Latin for “by the modulus”).

5 + 4 = 9 → 9 / 12 = 0*12 + 9

(5 + 4) modulo 12 = 9


3 + 8 + 1 = 12 → 12 / 12 = 1*12 + 0

(3 + 8 + 1) modulo 12 = 0


19 / 12 = 1*12 + 7

19 mod 12 = 7


3 + 1 = 4 → 4 / 7 = 0*7 + 4

(3 + 1) mod 7 = 4


2 + 4 + 1 = 7 → 7 / 7 = 1*7 + 0

(2 + 4 + 1) mod 7 = 0


19 / 7 = 2*7 + 5

19 mod 7 = 5


Modular arithmetic can do wonderful things. One small but beautiful example is the way it can uncover hidden fractals in Pascal’s triangle:

Pascal’s Triangle (via Desmos)


How to create Pascal’s triangle (via Wikipedia)


If you color all numbers n mod 2 = 1 (i.e., odd numbers) in the triangle, they create the famous Sierpiński triangle:

The Sierpiński triangle in Pascal’s triangle (via Fractal Foundation)

↓

Pascal’s triangle, n mod 2 = 1 (click for larger)


The Sierpiński triangle appears like this for all n mod 4 = 2 in Pascal’s triangle:

Pascal’s triangle, n mod 4 = 2 (click for larger)


And so on:

Pascal’s triangle, n mod 8 = 4


Pascal’s triangle, n mod 16 = 8


Pascal’s triangle, n mod 32 = 16


Pascal’s triangle, n mod 64 = 32


Pascal’s triangle, n mod 128 = 64


Pascal’s triangle, n mod 256 = 128


Pascal’s triangle, n mod 2,4,8… = 1,2,4… (animated via EzGif)


Post-Performative Post-Scriptum

There’s no need to calculate Pascal’s triangle in full to find the fractals above. The 10th row of Pascal’s triangle is this:

1, 10, 45, 120, 210, 252, 210, 120, 45, 10, 1

The 20th row is this:

1, 20, 190, 1140, 4845, 15504, 38760, 77520, 125970, 167960, 184756, 167960, 125970, 77520, 38760, 15504, 4845, 1140, 190, 20, 1

And the 29th is this:

1, 29, 406, 3654, 23751, 118755, 475020, 1560780, 4292145, 10015005, 20030010, 34597290, 51895935, 67863915, 77558760, 77558760, 67863915, 51895935, 34597290, 20030010, 10015005, 4292145, 1560780, 475020, 118755, 23751, 3654, 406, 29, 1

But you don’t need to consider those ever-growing numbers in the triangle when you’re finding fractals with modular arithmetic. When the modulus is 2, you just work with 0 and 1, that is, you add the previous numbers in the triangle and find the sum modulo 2. When the modulus is 4, you just work with 0, 1, 2 and 3, adding the numbers and finding the sum modulo 4. When it’s 8, you just work with 0, 1, 2, 3, 4, 5, 6 and 7, finding the sum modulo 8. And so on.

Summer Sets (and Truncated Triangulars)

Here is the sequence of triangular numbers, created by summing consecutive integers from 1 (i.e., 1+2+3+4+5…):


1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, 1326, 1378, 1431, 1485, 1540, 1596, 1653, 1711, 1770, 1830, 1891, 1953, 2016, 2080, 2145, 2211, 2278, 2346, 2415, 2485, 2556, 2628, 2701, 2775, 2850, 2926, 3003, 3081, 3160, 3240, 3321, 3403, 3486, 3570, 3655, 3741, 3828, 3916, 4005, 4095, 4186, 4278, 4371, 4465, 4560, 4656, 4753, 4851, 4950, 5050, 5151, 5253, 5356, 5460, 5565, 5671, 5778, 5886, 5995...

And here is a sequence of truncated triangulars, created by summing consecutive integers from 15 (i.e., 15+16+17+18+19…):


15, 31, 48, 66, 85, 105, 126, 148, 171, 195, 220, 246, 273, 301, 330, 360, 391, 423, 456, 490, 525, 561, 598, 636, 675, 715, 756, 798, 841, 885, 930, 976, 1023, 1071, 1120, 1170, 1221, 1273, 1326, 1380, 1435, 1491, 1548, 1606, 1665, 1725, 1786, 1848, 1911, 1975, 2040, 2106, 2173, 2241, 2310, 2380, 2451, 2523, 2596, 2670, 2745, 2821, 2898, 2976, 3055, 3135, 3216, 3298, 3381, 3465, 3550, 3636, 3723, 3811, 3900, 3990, 4081, 4173, 4266, 4360, 4455, 4551, 4648, 4746, 4845, 4945, 5046, 5148, 5251, 5355, 5460, 5566, 5673, 5781...

It’s obvious that the sequences are different at each successive step: 1 ≠ 15, 3 ≠ 31, 6 ≠ 48, 10 ≠ 66, 21 ≠ 85, and so on. But seven numbers occur in both sequences: 15, 66, 105, 171, 561, 1326 and 5460. And that’s it — 7 is the 14-th entry in A309507 at the Encyclopedia of Integer Sequences:


0, 1, 1, 1, 3, 3, 1, 2, 5, 3, 3, 3, 3, 7, 3, 1, 5, 5, 3, 7, 7, 3, 3, 5, 5, 7, 7, 3, 7, 7, 1, 3, 7, 7, 11, 5, 3, 7, 7, 3, 7, 7, 3, 11, 11, 3, 3, 5, 8, 11, 7, 3, 7, 15, 7, 7, 7, 3, 7, 7, 3, 11, 5, 3, 15, 7, 3, 7, 15, 7, 5, 5, 3, 11, 11, 7, 15, 7, 3, 9, 9, 3, 7 — A309507

I decided to take create graphs of shared numbers in compared sequences like this. In the 135×135 grid below, the brightness of the squares corresponds to the count of shared numbers in the sequence-pair sum(x..x+n) and sum(y..y+n), where x and y are the coordinates of each individual square. I think the grid looks like a city of skyscrapers bisected by a highway:

Count of shared numbers in sequence-pairs sum(x..x+n) and sum(y..y+n)


Note that the bright white diagonal in the grid corresponds to the sequence-pairs where x = y. Because the sequences are identical in each pair, the count of shared numbers is infinite. The grid is symmetrically reflected along the diagonal because, for example, the sequence-pair for x=12, y=43, where sum(12..12+n) is compared with sum(43..43+n), corresponds to the sequence pair for x=43, y=12, where sum(43..43+n) is compared with sum(12..12+n). The scale of brightness runs from 0 (black) to 255 (full white) and increases by 32 for each shared number in the sequence. Obviously, then, the brightness can’t increase indefinitely and some maximally bright squares will represent sequence-pairs that have different counts of shared pairs.

Now try altering the size of the step in brightness. You get grids in which the width of the central strip increases (smaller step) or decreases (bigger step). Here are grids for steps for 1, 2, 4, 8, 16, 32 and 64 (I’ve removed the bright x=y diagonal for the first few grids, because it’s too prominent against duller shades):

Brightness-step = 1


Brightness-step = 2


Brightness-step = 4


Brightness-step = 8


Brightness-step = 16


Brightness-step = 32


Brightness-step = 63


Brightness-step = 1, 2, 4, 8, 16, 32, 63 (animated)


Trigging Triangles

A fractal is a shape in which a part looks like the whole. Trees are fractals. And lungs. And clouds. But there are man-made fractals too and probably the most famous of them all is the Sierpiński triangle, invented by the Polish mathematician Wacław Sierpiński (1882-1969):

Sierpiński triangle


There are many ways to create a Sierpiński triangle, but one of the simplest is to trace all possible routes followed by a point jumping halfway towards the vertices of an equilateral triangle. If you mark the endpoint of the jumps, the Sierpiński triangle appears as the routes get longer and longer, like this:

Point jumping 1/2 way towards vertices of an equilateral triangle (animated)


Once you’ve created a Sierpiński triangle like that, you can play with it. For example, you can use simple trigonometry to stretch the triangle into a circle:

Sierpiński triangle to circle stage #1


Sierpiński triangle to circle #2


Sierpiński triangle to circle #3


Sierpiński triangle to circle #4


Sierpiński triangle to circle #5


Sierpiński triangle to circle #6


Sierpiński triangle to circle #7


Sierpiński triangle to circle #8


Sierpiński triangle to circle #9


Sierpiński triangle to circle #10


Sierpiński triangle to Sierpiński circle (animated)


But the trigging of the triangle can go further. You can expand the Sierpiński circle further, like this:

Sierpiński circle expanded


Or shrink the Sierpiński triangle like this:

Shrinking Sierpiński triangle stage #1


Shrinking Sierpiński triangle #2


Shrinking Sierpiński triangle #3


Shrinking Sierpiński triangle #4


Shrinking Sierpiński triangle #5


Shrinking Sierpiński triangle #6


Shrinking Sierpiński triangle (animated)


You can also create new shapes using the jumping-point technique. Suppose that, as the point is jumping, you adjust its position outwards into the circumscribed circle whenever it lands within the boundaries of the governing triangle. But if the point lands outside those boundaries, you leave it alone. Using this adapted technique, you get a shape like this:

Adjusted Sierpiński circle


And if the point is swung by 60° after it’s adjusted into the circle, you get a shape like this:

Adjusted Sierpiński circle (60° swing)


Here are some animated gifs showing these shapes rotating in a full circle at various speeds:

Adjusted Sierpiński circle (swinging animation) (fast)


Adjusted Sierpiński circle (swinging animation) (medium)


Adjusted Sierpiński circle (swinging animation) (slow)


Arty Fish Haul

When is a fish a reptile? When it looks like this:

Fish from four isosceles right triangles


The fish-shape can be divided into eight identical sub-copies of itself. That is, it can be repeatedly tiled with copies of itself, so it’s an example of what geometry calls a rep-tile:

Fish divided into eight identical sub-copies


Fish divided again


Fish divided #4


Fish divided #5


Fish divided #6


Fish (animated rep-tiling)


Now suppose you divide the fish, then discard one of the sub-copies. And carry on dividing-and-discarding like that:

Fish discarding sub-copy 7 (#1)


Fish discarding sub-copy 7 (#2)


Fish discarding sub-copy 7 (#3)


Fish discarding sub-copy 7 (#4)


Fish discarding sub-copy 7 (#5)


Fish discarding sub-copy 7 (#6)


Fish discarding sub-copy 7 (#7)


Fish discarding sub-copy 7 (animated)


Here are more examples of the fish sub-dividing, then discarding sub-copies:

Fish discarding sub-copy #1


Fish discarding sub-copy #2


Fish discarding sub-copy #3


Fish discarding sub-copy #4


Fish discarding sub-copy #5


Fish discarding sub-copy #6


Fish discarding sub-copy #7


Fish discarding sub-copy #8


Fish discarding sub-copies (animated)


Now try a square divided into four copies of the fish, then sub-divided again and again:

Fish-square #1


Fish-square #2


Fish-square #3


Fish-square #4


Fish-square #5


Fish-square #6


Fish-square (animated)


The fish-square can be used to create more symmetrical patterns when the divide-and-discard rule is applied. Here’s the pattern created by dividing-and-discarded two of the sub-copies:

Fish-square divide-and-discard #1


Fish-square divide-and-discard #2


Fish-square divide-and-discard #3


Fish-square divide-and-discard #4


Fish-square divide-and-discard #5


Fish-square divide-and-discard #6


Fish-square divide-and-discard #7


Fish-square divide-and-discard #8 (delayed discard)


Fish-square divide-and-discard (animated)


Using simple trigonometry, you can convert the square pattern into a circular pattern:

↓

Circular version


Square to circle (animated)


Here are more examples of divide-and-discard fish-squares:

Fish-square divide-and-discard #1


Fish-square divide-and-discard #2


Fish-square divide-and-discard #3


Fish-square divide-and-discard #4


Fish-square divide-and-discard #5


Fish-square divide-and-discard #6


And more examples of fish-squares being converted into circles:

Fish-square to circle #1 (animated)


Fish-square to circle #2


Fish-square to circle #3


Fish-square to circle #4


Fish-square to circle #5


Fish-square to circle #6


Square Routes Re-Re-Re-Re-Re-Re-Revisited

Suppose you trace all possible routes followed by a point inside a triangle jumping halfway towards one or another of the three vertices of the triangle. If you mark each jump, you get a famous geometrical shape called the Sierpiński triangle (or Sierpiński sieve).

Sierpiński triangle found by tracing all possible routes for a point jumping halfway towards the vertices of a triangle


The Sierpiński triangle is a fractal, because it contains copies of itself at smaller and smaller scales. Now try the same thing with a square. If you trace all possible routes followed by a point inside a square jumping halfway towards one or another of the four vertices of the square, you don’t get an obvious fractal. Instead, the interior of the square fills steadily (and will eventually be completely solid):

Routes of a point jumping halfway towards vertices of a square


Try a variant. If the point is banned from jumping towards the same vertex twice or more in a row, the routes trace out a fractal that looks like this:

Ban on choosing same vertex twice or more in a row


If the point is banned from jumping towards the vertex one place anti-clockwise of the vertex it’s just jumped towards, you get a fractal like this:

Ban on jumping towards vertex one place anti-clockwise of previously chosen vertex


And if the point can’t jump towards two places clockwise or anti-clockwise of the currently chosen vertex, this fractal appears (called a T-square fractal):

Ban on jumping towards the vertex diagonally opposite of the previously chosen vertex


That ban is equivalent to banning the point from jumping from the vertex diagonally opposite to the vertex it’s just jumped towards. Finally, here’s the fractal created when you ban the point from jumping towards the vertex one place clockwise of the vertex it’s just jumped towards:

Ban on jumping towards vertex one place clockwise of previously chosen vertex


As you can see, the fractal is a mirror-image of the one-place-anti-clockwise-ban fractal.

I discovered the ban-construction of those fractals more than twenty years ago. Then I found that I was re-discovering the same fractals when I looked at what first seemed like completely different ways of constructing fractals. There are lots of different routes to the same result. I’ve recently discovered yet another route. Let’s try what seems like an entirely different way of constructing fractals. Take a square and erect four new half-sized squares, sq1, sq2, sq3, sq4, on each corner. Then erect three more quarter-sized squares on the outward facing corners of sq1, sq2, sq3 and sq4. Carry on doing that and see what happens at the end when you remove all the previous stages of construction:













Animation of the new construction


Animation in black-and-white


It’s the T-square fractal again. Now try rotating the squares you add at stage 3 and see what happens (the rotation means that two new squares are added on adjacent outward-facing corners and one new square on the inward-facing corner):












Animation of the construction


It’s the one-place-clockwise-ban fractal again. Now try rotating the squares two places, so that two new squares are added on diagonally opposite outward-facing corners and one new square on the inward-facing corner:












Animation of the construction


It’s the same-vertex-ban fractal again. Finally, rotate squares one place more:

Animation of the construction



It’s the one-place-clockwise-ban fractal again. And this method isn’t confined to squares. Here’s what happens when you add 5/8th-sized triangles to the corners of triangles:















Animation of the construction


And here’s what happens when you add 5/13th-sized pentagons to the corners of pentagons:










Animation of the construction


Finally, here’s a variant on that pentagonal fractal (adding two rather than four pentagons at stage 3 and higher):















Animation of the construction


Previously pre-posted (please peruse):

• Square Routes
• Square Routes Revisited
• Square Routes Re-Revisited
• Square Routes Re-Re-Revisited
• Square Routes Re-Re-Re-Revisited
• Square Routes Re-Re-Re-Re-Revisited
• Square Routes Re-Re-Re-Re-Re-Revisited

The Hex Fractor #3

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