Abounding in Abundants

This is the famous Ulam spiral, invented by the Jewish mathematician Stanisław Ulam (pronounced OO-lam) to represent prime numbers on a square grid:

The Ulam spiral of prime numbers


The red square represents 1, with 2 as the white block immediately to its right and 3 immediately above 2. Then 5 is the white block one space to the left of 3 and 7 the white block one space below 5. Then 11 is the white block right beside 2 and 13 the white block one space above 11. And so on. The primes aren’t regularly spaced on the spiral but patterns are nevertheless appearing. Here’s the Ulam spiral at higher resolutions:

The Ulam spiral x2


The Ulam spiral x4


The primes are neither regular nor random in their distribution on the spiral. They stand tantalizingly betwixt and between. So the numbers represented on this Ulam-like spiral, which looks like an aerial view of a city designed by architects who occasionally get drunk:

Ulam-like spiral of abundant numbers


The distribution of abundant numbers is much more regular than the primes, but is far from wholly predictable. And what are abundant numbers? They’re numbers n such that sum(divisors(n)-n) > n. In other words, when you add the divisors of n less than n, the sum is greater than n. The first abundant number is 12:

12 is divisible by 1, 2, 3, 4, 6 → 1 + 2 + 3 + 4 + 6 = 16 > 12

The abundant numbers go like this:

12, 18, 20, 24, 30, 36, 40, 42, 48, 54, 56, 60, 66, 70, 72, 78, 80, 84, 88, 90, 96, 100, 102, 104, 108, 112, 114, 120, 126, 132, 138, 140, 144, 150, 156, 160, 162, 168, 174, 176, 180, 186, 192, 196, 198, 200, 204, 208, 210, 216, 220, 222, 224, 228, 234, 240, 246, 252, 258, 260, 264, 270… — A005101 at the Online Encyclopedia of Integer Sequences

Are all abundant numbers even? No, but the first odd abundant number takes a long time to arrive: it’s 45045. The abundance of 45045 was first discovered by the French mathematician Charles de Bovelles or Carolus Bovillus (c. 1475-1566), according to David Wells in his wonderful Penguin Dictionary of Curious and Interesting Numbers (1986):

45045 = 3^2 * 5 * 7 * 11 * 13 → 1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 21 + 33 + 35 + 39 + 45 + 55 + 63 + 65 + 77 + 91 + 99 + 105 + 117 + 143 + 165 + 195 + 231 + 273 + 315 + 385 + 429 + 455 + 495 + 585 + 693 + 715 + 819 + 1001 + 1155 + 1287 + 1365 + 2145 + 3003 + 3465 + 4095 + 5005 + 6435 + 9009 + 15015 = 59787 > 45045

Here’s the spiral of abundant numbers at higher resolutions:

Abundant numbers x2


Abundant numbers x4


Negating the spiral of the abundant numbers — almost — is the spiral of the deficient numbers, where sum(divisors(n)-n) < n. Like most odd numbers, 15 is deficient:

15 = 3 * 5 → 1 + 3 + 5 = 9 < 15

Here’s the spiral of deficient numbers at various resolutions:

Deficient numbers on Ulam-like spiral


Deficient numbers x2


Deficient numbers x4


The spiral of deficient numbers doesn’t quite negate (reverse the colors of) the spiral of abundant numbers because of the very rare perfect numbers, where sum(divisors(n)-n) = n. That is, their factor-sums are exactly equal to themselves:

• 6 = 2 * 3 → 1 + 2 + 3 = 6
• 28 = 2^2 * 7 → 1 + 2 + 4 + 7 + 14 = 28
• 496 = 2^4 * 31 → 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 = 496

Now let’s try numbers n such than sum(divisors(n)) mod 2 = 1 (“n mod 2″ gives the remainder when n is divided by 2, i.e. n mod 2 is either 0 or 1). For example:

• 4 = 2^2 → 1 + 2 + 4 = 7 → 7 mod 2 = 1
• 18 = 2 * 3^2 → 1 + 2 + 3 + 6 + 9 + 18 = 39 → 39 mod 2 = 1
• 72 = 2^3 * 3^2 → 1 + 2 + 3 + 4 + 6 + 8 + 9 + 12 + 18 + 24 + 36 + 72 = 195 → 195 mod 2 = 1

Here are spirals for these numbers:

Ulam-like spiral for n such than sum(divisors(n)) mod 2 = 1


sum(divisors(n)) mod 2 = 1 x2


sum(divisors(n)) mod 2 = 1 x4


sum(divisors(n)) mod 2 = 1 x8


sum(divisors(n)) mod 2 = 1 x16


Second Whirled Warp

In “First Whirled Warp”, I looked at the paths traced by the midpoint of two points moving at varying speeds around the perimeter of a circle or polygon. Now I wanted to look at the midpoint of two points moving on the perimeter of a star. Suppose the star looks like this:

Four-pointed star


If the two points start at the same vertex and one point is moving 1/2 as fast as the other, the midpoint traces a shape like the head of a fox:

Fox-head from midpoint of two points moving in speed-ratio 1/2 : 1 (or 1 : 2)


If one point is moving 1/3 as fast (or 3x faster), the trace looks like this:

Midpoint of two points moving in speed-ratio 1/3 : 1


And if the points are moving -1/3 : 1, that is, in opposite directions (one clockwise, one widdershins):

Speed-ratio -1/3 : 1


And you can adjust all pixels outward so that the outer vertices of the star lie on the perimeter of a circle:

Speed-ratio -1/3 : 1 (circular)


Here are more traces created by the midpoint of two points moving around the perimeter of a four-pointed star:

Speed-ratio 1/5 : 1


Speed-ratio 3/5 : 1

Speed-ratio 3/5 : 1 (circular)


Speed-ratio -3/7 : 1/3

Speed-ratio -3/7 : 1/3 (circular)


Speed-ratio 7/3 : 6/7

Speed-ratio 7/3 : 6/7 (circular)


Speed-ratio -7/3 : 6/7

Speed-ratio -7/3 : 6/7 (circular)


If the star is adjusted like this:

Variant on four-pointed star


You can get mid-traces like this:

Speed-ratio -1/7 : 1 (adjusted star)

Speed-ratio -1/7 : 1 (adjusted star) (circular)


Here’s a three-pointed star:

Speed-ratio -4/5 : 1 (3p star)

Speed-ratio -4/5 : 1 (3p star) (circular)


And some five-pointed stars:

Speed-ratio 2/7 : 1 (5p star)

Speed-ratio 2/7 : 1 (5p star) (circular)


Speed-ratio -7/5 : 3/7 (5p star)

Speed-ratio -7/5 : 3/7 (5p star) (circular)


Elsewhere Other-Accessible…

First Whirled Warp — an earlier look at points performativizing on perimeters
Third Whirled Warp — a later look at points performativizing on perimeters

Fib and Let Eye

An ox-eye daisy (Leucanthemum sp.) with a harlequin ladybird, Harmonia axyridis, sitting at its center


Peri-Performative Post-Scriptum…

The title of this incendiary intervention refers to

1) The Fibonacci sequence present in the beautiful interlocking curves at the heart of the

2) daisy, whose name comes from Anglo-Saxon dæges ēage, meaning “day’s eye”.

3) The eye-like appearance of the daisy, with the ladybird like a slightly off-centered pupil

Pyramids for Pi

These are the odd numbers:


1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59...

If you add the odd numbers, 1+3+5+7…, you get the square numbers:


1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900...

And if you add the square numbers, 1+4+9+16…, you get what are called the square pyramidal numbers:


1, 5, 14, 30, 55, 91, 140, 204, 285, 385, 506, 650, 819, 1015, 1240, 1496, 1785, 2109, 2470, 2870, 3311, 3795, 4324, 4900, 5525, 6201, 6930, 7714, 8555, 9455...

There’s not a circle in sight, so you wouldn’t expect to find π amid the pyramids. But it’s there all the same. You can get π from this formula using the square pyramidal numbers:

π from a formula using square pyramidal numbers (Wikipedia)


Here are the approximations getting nearer and near to π:


3.1415926535897932384... = π
3.1666666666666666666... = sqpyra2pi(i=1) / 6 + 3
1 = sqpyra(1)

3.1415926535897932384... = π
3.1452380952380952380... = sqpyra2pi(i=3) / 6 + 3
14 = sqpyra(3)

3.1415926535897932384... = π
3.1412548236077647842... = sqpyra2pi(i=8) / 6 + 3
204 = sqpyra(8)

3.1415926535897932384... = π
3.1415189855952756236... = sqpyra2pi(i=14) / 6 + 3
1,015 = sqpyra(14)

3.1415926535897932384... = π
3.1415990074057163751... = sqpyra2pi(i=33) / 6 + 3
12,529 = sqpyra(33)

3.1415926535897932384... = π
3.1415920110950124679... = sqpyra2pi(i=72) / 6 + 3
127,020 = sqpyra(72)

3.1415926535897932384... = π
3.1415926017980070553... = sqpyra2pi(i=168) / 6 + 3
1,594,684 = sqpyra(168)

3.1415926535897932384... = π
3.1415926599504002195... = sqpyra2pi(i=339) / 6 + 3
13,043,590 = sqpyra(339)

3.1415926535897932384... = π
3.1415926530042565359... = sqpyra2pi(i=752) / 6 + 3
142,035,880 = sqpyra(752)

3.1415926535897932384... = π
3.1415926535000384883... = sqpyra2pi(i=1406) / 6 + 3
927,465,791 = sqpyra(1406)

3.1415926535897932384... = π
3.1415926535800054618... = sqpyra2pi(i=2944) / 6 + 3
8,509,683,520 = sqpyra(2944)

3.1415926535897932384... = π
3.1415926535890006043... = sqpyra2pi(i=6806) / 6 + 3
105,111,513,491 = sqpyra(6806)

3.1415926535897932384... = π
3.1415926535897000092... = sqpyra2pi(i=13892) / 6 + 3
893,758,038,910 = sqpyra(13892)

3.1415926535897932384... = π
3.1415926535897999990... = sqpyra2pi(i=33315) / 6 + 3
12,325,874,793,790 = sqpyra(33315)

3.1415926535897932384... = π
3.1415926535897939999... = sqpyra2pi(i=68985) / 6 + 3
109,433,980,000,485 = sqpyra(68985)

3.1415926535897932384... = π
3.1415926535897932999... = sqpyra2pi(i=159563) / 6 + 3
1,354,189,390,757,594 = sqpyra(159563)

3.1415926535897932384... = π
3.1415926535897932300... = sqpyra2pi(i=309132) / 6 + 3
9,847,199,658,130,890 = sqpyra(309132)

3.1415926535897932384... = π
3.1415926535897932389... = sqpyra2pi(i=774865) / 6 + 3
155,080,688,289,901,465 = sqpyra(774865)

3.1415926535897932384... = π
3.1415926535897932384... = sqpyra2pi(i=1586190) / 6 + 3
1,330,285,259,163,175,415 = sqpyra(1586190)

Summer Samer

10 can be represented in exactly 10 ways as a sum of distinct integers:


10 = 1 + 2 + 3 + 4
10 = 2 + 3 + 5
10 = 1 + 4 + 5
10 = 1 + 3 + 6
10 = 4 + 6 (c=5)
10 = 1 + 2 + 7
10 = 3 + 7
10 = 2 + 8
10 = 1 + 9
10 = 10 (c=10)

But there’s something unsatisfying about including 10 as a sum of itself. It’s much more satisfying that 76 can be represented in exactly 76 ways as a sum of distinct primes:


76 = 2 + 3 + 7 + 11 + 13 + 17 + 23
76 = 5 + 7 + 11 + 13 + 17 + 23
76 = 2 + 3 + 5 + 11 + 13 + 19 + 23
76 = 3 + 7 + 11 + 13 + 19 + 23
76 = 2 + 3 + 5 + 7 + 17 + 19 + 23 (c=5)
76 = 2 + 3 + 5 + 7 + 13 + 17 + 29
76 = 2 + 3 + 5 + 7 + 11 + 19 + 29
76 = 3 + 5 + 7 + 13 + 19 + 29
76 = 11 + 17 + 19 + 29
76 = 11 + 13 + 23 + 29 (c=10)
76 = 2 + 5 + 17 + 23 + 29
76 = 7 + 17 + 23 + 29
76 = 2 + 3 + 19 + 23 + 29
76 = 5 + 19 + 23 + 29
76 = 2 + 3 + 5 + 7 + 11 + 17 + 31 (c=15)
76 = 3 + 5 + 7 + 13 + 17 + 31
76 = 3 + 5 + 7 + 11 + 19 + 31
76 = 2 + 11 + 13 + 19 + 31
76 = 2 + 7 + 17 + 19 + 31
76 = 2 + 7 + 13 + 23 + 31 (c=20)
76 = 2 + 3 + 17 + 23 + 31
76 = 5 + 17 + 23 + 31
76 = 3 + 19 + 23 + 31
76 = 2 + 3 + 11 + 29 + 31
76 = 5 + 11 + 29 + 31 (c=25)
76 = 3 + 13 + 29 + 31
76 = 3 + 5 + 7 + 11 + 13 + 37
76 = 2 + 7 + 13 + 17 + 37
76 = 2 + 7 + 11 + 19 + 37
76 = 2 + 5 + 13 + 19 + 37 (c=30)
76 = 7 + 13 + 19 + 37
76 = 3 + 17 + 19 + 37
76 = 2 + 3 + 11 + 23 + 37
76 = 5 + 11 + 23 + 37
76 = 3 + 13 + 23 + 37 (c=35)
76 = 2 + 3 + 5 + 29 + 37
76 = 3 + 7 + 29 + 37
76 = 3 + 5 + 31 + 37
76 = 2 + 5 + 11 + 17 + 41
76 = 7 + 11 + 17 + 41 (c=40)
76 = 2 + 3 + 13 + 17 + 41
76 = 5 + 13 + 17 + 41
76 = 2 + 3 + 11 + 19 + 41
76 = 5 + 11 + 19 + 41
76 = 3 + 13 + 19 + 41 (c=45)
76 = 2 + 3 + 7 + 23 + 41
76 = 5 + 7 + 23 + 41
76 = 2 + 7 + 11 + 13 + 43
76 = 2 + 3 + 11 + 17 + 43
76 = 5 + 11 + 17 + 43 (c=50)
76 = 3 + 13 + 17 + 43
76 = 2 + 5 + 7 + 19 + 43
76 = 3 + 11 + 19 + 43
76 = 2 + 3 + 5 + 23 + 43
76 = 3 + 7 + 23 + 43 (c=55)
76 = 2 + 31 + 43
76 = 2 + 3 + 11 + 13 + 47
76 = 5 + 11 + 13 + 47
76 = 2 + 3 + 7 + 17 + 47
76 = 5 + 7 + 17 + 47 (c=60)
76 = 2 + 3 + 5 + 19 + 47
76 = 3 + 7 + 19 + 47
76 = 29 + 47
76 = 2 + 3 + 7 + 11 + 53
76 = 5 + 7 + 11 + 53 (c=65)
76 = 2 + 3 + 5 + 13 + 53
76 = 3 + 7 + 13 + 53
76 = 23 + 53
76 = 2 + 3 + 5 + 7 + 59
76 = 17 + 59 (c=70)
76 = 3 + 5 + 7 + 61
76 = 2 + 13 + 61
76 = 2 + 7 + 67
76 = 2 + 3 + 71
76 = 5 + 71 (c=75)
76 = 3 + 73

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)