The Odd Couple

12,285

Together with 14,595 the smallest pair of odd amicable numbers, discovered by [the American mathematician] B.H. Brown in 1939. — The Penguin Dictionary of Curious and Interesting Numbers, David Wells (1986)

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
[...]

A Walk on the Wide Side

How wide is a number? The obvious answer is to count digits and say that 1 and 9 are one digit wide, 11 and 99 are two digits wide, 111 and 999 are three digits wide, and so on. But that isn’t a very good answer. 111 and 999 are both three digits wide, but 999 is nine larger times than 111. And although 111 and 999 are both one digit wider than 11 and 99, 111 is much closer to 99 than 999 is to 111.

So there’s got to be a better answer to the question. I came across it indirectly, when I started looking at carries in powers. I wanted to know how fast a number grew in digit-width as it was multiplied repeatedly by, say, 2. For example, 2^3 = 8 and 2^4 = 16, so there’s been a carry at the far left and 2^4 = 16 has increased in digit-width by 1 over 2^3 = 8. After that, 2^6 = 64 and 2^7 = 128, so there’s another carry and another increase in digit-width. I wrote a program to sum the carries and divide them by the power. If I were better at math, I would’ve known what the value of carries / power was going to be. Here’s the program beginning to find it (it begins with a carry of 1, to mark 2^0 = 1 as creating a digit ex nihilo, as it were):


8 = 2^3
16 = 2^4 → 2 / 4 = 0.5
64 = 2^6
128 = 2^7 → 3 / 7 = 0.4285714285714285714285714286
512 = 2^9
1024 = 2^10 → 4 / 10 = 0.4
8192 = 2^13
16384 = 2^14 → 5 / 14 = 0.3571428571428571428571428571
65536 = 2^16
131072 = 2^17 → 6 / 17 = 0.3529411764705882352941176471
524288 = 2^19
1048576 = 2^20 → 7 / 20 = 0.35
8388608 = 2^23
16777216 = 2^24 → 8 / 24 = 0.3...
67108864 = 2^26
134217728 = 2^27 → 9 / 27 = 0.3...
536870912 = 2^29
1073741824 = 2^30 → 10 / 30 = 0.3...
8589934592 = 2^33
17179869184 = 2^34 → 11 / 34 = 0.3235294117647058823529411765
68719476736 = 2^36
137438953472 = 2^37 → 12 / 37 = 0.3243243243243243243243243243
549755813888 = 2^39
1099511627776 = 2^40 → 13 / 40 = 0.325
8796093022208 = 2^43
17592186044416 = 2^44 → 14 / 44 = 0.318...
70368744177664 = 2^46
140737488355328 = 2^47 → 15 / 47 = 0.3191489361702127659574468085
562949953421312 = 2^49
1125899906842624 = 2^50 → 16 / 50 = 0.32
9007199254740992 = 2^53
18014398509481984 = 2^54 → 17 / 54 = 0.3148...
72057594037927936 = 2^56
144115188075855872 = 2^57 → 18 / 57 = 0.3157894736842105263157894737
576460752303423488 = 2^59
1152921504606846976 = 2^60 → 19 / 60 = 0.316...
9223372036854775808 = 2^63
18446744073709551616 = 2^64 → 20 / 64 = 0.3125
73786976294838206464 = 2^66
147573952589676412928 = 2^67 → 21 / 67 = 0.3134328358208955223880597015
590295810358705651712 = 2^69
1180591620717411303424 = 2^70 → 22 / 70 = 0.3142857...
9444732965739290427392 = 2^73
18889465931478580854784 = 2^74 → 23 / 74 = 0.3108...
75557863725914323419136 = 2^76
151115727451828646838272 = 2^77 → 24 / 77 = 0.3116883...
604462909807314587353088 = 2^79
1208925819614629174706176 = 2^80 → 25 / 80 = 0.3125
9671406556917033397649408 = 2^83
19342813113834066795298816 = 2^84 → 26 / 84 = 0.3095238095238095238095238095
77371252455336267181195264 = 2^86
154742504910672534362390528 = 2^87 → 27 / 87 = 0.3103448275862068965517241379
618970019642690137449562112 = 2^89
1237940039285380274899124224 = 2^90 → 28 / 90 = 0.31...
9903520314283042199192993792 = 2^93
19807040628566084398385987584 = 2^94 → 29 / 94 = 0.3085106382978723404255319149
79228162514264337593543950336 = 2^96
158456325028528675187087900672 = 2^97 → 30 / 97 = 0.3092783505154639175257731959
633825300114114700748351602688 = 2^99
1267650600228229401496703205376 = 2^100 → 31 / 100 = 0.31

After calculating 2^p higher and higher (I discarded trailing digits of 2^p), I realized that the answer — carries / power — was converging on a value of slightly less than 0.30103. In the end (doh!), I realized that what I was calculating was the logarithm of 2 in base 10:


log(2) = 0.3010299956639811952137388947...
10^0.301029995663981... = 2

You can use then same carries-and-powers method to approximate the values of other logarithms:


log(1) = 0
log(2) = 0.3010299956639811952137388947...
log(3) = 0.4771212547196624372950279033...
log(4) = 0.6020599913279623904274777894...
log(5) = 0.6989700043360188047862611053...
log(6) = 0.7781512503836436325087667980...
log(7) = 0.8450980400142568307122162586...
log(8) = 0.9030899869919435856412166842...
log(9) = 0.9542425094393248745900558065...

I also realized logarithms are a good answer to the question I raised above: How wide is a number? The logs of the powers of 2 are multiples of log(2):


    log(2^1) = log(2) = 0.301029995663981195213738894
    log(2^2) = log(4) = 0.602059991327962390427477789 = 2 * log(2)
    log(2^3) = log(8) = 0.903089986991943585641216684 = 3 * log(2)
   log(2^4) = log(16) = 1.204119982655924780854955579 = 4 * log(2)
   log(2^5) = log(32) = 1.505149978319905976068694474 = 5 * log(2)
   log(2^6) = log(64) = 1.806179973983887171282433368 = 6 * log(2)
  log(2^7) = log(128) = 2.107209969647868366496172263 = 7 * log(2)
  log(2^8) = log(256) = 2.408239965311849561709911158 = 8 * log(2)
  log(2^9) = log(512) = 2.709269960975830756923650053 = 9 * log(2)
log(2^10) = log(1024) = 3.010299956639811952137388947 = 10 * log(2)

4 is 2 times larger than 2 and, in a sense, the width of 4 is 0.301029995663981… greater than the width of 2. As you can see, when the integer part of the log-sum increases by 1, so does the digit-width of the power:


 log(2^3) = log(8) = 0.903089986991943585641216684 = 3 * log(2)
log(2^4) = log(16) = 1.204119982655924780854955579 = 4 * log(2)

[...]

 log(2^6) = log(64) = 1.806179973983887171282433368 = 6 * log(2)
log(2^7) = log(128) = 2.107209969647868366496172263 = 7 * log(2)

[...]

  log(2^9) = log(512) = 2.709269960975830756923650053 = 9 * log(2)
log(2^10) = log(1024) = 3.01029995663981195213738894 = 10 * log(2)

In other words, powers of 2 are increasing in width by 0.301029995663981… units. When the increase flips the integer part of the log-sum up by 1, the digit-width or digit-count also increases by 1. To find the digit-count of a number, n, in a particular base, you simply take the integer part of log(n,b) and add 1. In base 10, the log of 123456789 is 8.091514… The integer part is 8 and 8+1 = 9. But it also makes perfect sense that log(1) = 0. No matter how many times you multiply a number by 1, the number never changes. That is, its width stays the same. So you can say that 1 has a width of 0, while 2 has a width of 0.301029995663981…

Logarithms also answer a question pre-previously raised on Overlord of the Über-Feral: Why are the Fibonacci numbers so productive in base 11 for digsum(fib(k)) = k? In base 10, such numbers are quickly exhausted:


digsum(fib(1)) = 1 = digsum(1)
digsum(fib(5)) = 5 = digsum(5)
digsum(fib(10)) = 10 = digsum(55)
digsum(fib(31)) = 31 = digsum(1346269)
digsum(fib(35)) = 35 = digsum(9227465)
digsum(fib(62)) = 62 = digsum(4052739537881)
digsum(fib(72)) = 72 = digsum(498454011879264)
digsum(fib(175)) = 175 = digsum(1672445759041379840132227567949787325)
digsum(fib(180)) = 180 = digsum(18547707689471986212190138521399707760)
digsum(fib(216)) = 216 = digsum(619220451666590135228675387863297874269396512)
digsum(fib(251)) = 251 = digsum(12776523572924732586037033894655031898659556447352249)
digsum(fib(252)) = 252 = digsum(20672849399056463095319772838289364792345825123228624)
digsum(fib(360)) = 360
digsum(fib(494)) = 494
digsum(fib(540)) = 540
digsum(fib(946)) = 946
digsum(fib(1188)) = 1188
digsum(fib(2222)) = 2222

In base 11, such numbers go on and on:


digsum(fib(1),b=11) = 1 = digsum(1) (k=1)
digsum(fib(5),b=11) = 5 = digsum(5) (k=5)
digsum(fib(12),b=11) = 12 = digsum(1A2) (k=13)
digsum(fib(38),b=11) = 38 = digsum(855138A1) (k=41)
digsum(fib(49)) = 49 = digsum(2067A724762) (k=53) (c=5)
digsum(fib(50)) = 50 = digsum(542194A6905) (k=55)
digsum(fib(55)) = 55 = digsum(54756364A280) (k=60)
digsum(fib(56)) = 56 = digsum(886283256841) (k=61)
digsum(fib(82)) = 82 = digsum(57751318A9814A6410) (k=90)
digsum(fib(89)) = 89 = digsum(140492673676A06482A2) (k=97)
digsum(fib(144)) = 144 = digsum(401631365A48A784A09392136653457871) (k=169) (c=10)
digsum(fib(159)) = 159 = digsum(67217257641069185100889658A1AA72A0805) (k=185)
digsum(fib(166)) = 166 = digsum(26466A3A88237918577363A2390343388205432) (k=193)
digsum(fib(186)) = 186 = digsum(6A963147A9599623A20A05390315140A21992A96005) (k=215)
digsum(fib(221)) = 221 (k=265) (c=15)
digsum(fib(225)) = 225 (k=269)
digsum(fib(2A1)) = 2A1 (k=353)
digsum(fib(2A3)) = 2A3 (k=355)

[...]

digsum(fib(39409)) = 39409 (k=56395)
digsum(fib(3958A)) = 3958A (k=56605) (c=295)
digsum(fib(3965A)) = 3965A (k=56693)
digsum(fib(3A106)) = 3A106 (k=57360)
digsum(fib(3AA46)) = 3AA46 (k=58493)
digsum(fib(40140)) = 40140 (k=58729)
digsum(fib(4222A)) = 4222A (k=61500) (c=300)
digsum(fib(42609)) = 42609 (k=61961)
digsum(fib(42775)) = 42775 (k=62155)
digsum(fib(4287A)) = 4287A (k=62281)
digsum(fib(430A2)) = 430A2 (k=62669)
digsum(fib(43499)) = 43499 (k=63149) (c=305)
digsum(fib(435A9)) = 435A9 (k=63281)

[...]

digsum(fib(157476)) = 157476 (k=244140) (c=525)
digsum(fib(158470)) = 158470 (k=245465)
digsum(fib(159037)) = 159037 (k=246275)
digsum(fib(159285)) = 159285 (k=246570)
digsum(fib(159978)) = 159978 (k=247409)
digsum(fib(162993)) = 162993 (k=252750) (c=530)
digsum(fib(163A32)) = 163A32 (k=254135)
digsum(fib(164918)) = 164918 (k=255329)
digsum(fib(166985)) = 166985 (k=258065)
digsum(fib(167234)) = 167234 (k=258493)
digsum(fib(167371)) = 167371 (k=258655) (c=535)
digsum(fib(1676A5)) = 1676A5 (k=259055)
digsum(fib(16992A)) = 16992A (k=261997)

[...]

When do these numbers run out in base 11? I don’t know, but I do know why there are so many of them. The answer involves the logarithm of a special number. The most famous aspect of Fibonacci numbers is that the ratio, fib(k) / fib(k-1), of successive numbers converges on an irrational constant known as Φ. Here are the first Fibonacci numbers, where fib(k) = fib(k-2) + fib(k-1) (in other words, 1+1 = 2, 1+2 = 3, 2+3 = 5, and so on):


1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, ...

And here are the first ratios:


1 / 1 = 1
2 / 1 = 2
3 / 2 = 1.5
5 / 3 = 1.6...
8 / 5 = 1.6
13 / 8 = 1.625
21 / 13 = 1.6153846...
34 / 21 = 1.619047...
55 / 34 = 1.617647058823529411764705882
89 / 55 = 1.618...
144 / 89 = 1.617977528089887640449438202
233 / 144 = 1.61805...
377 / 233 = 1.618025751072961373390557940
610 / 377 = 1.618037135278514588859416446
987 / 610 = 1.618032786885245901639344262
1597 / 987 = 1.618034447821681864235055724
2584 / 1597 = 1.618033813400125234815278648
4181 / 2584 = 1.618034055727554179566563468
6765 / 4181 = 1.618033963166706529538387946
[...]

The ratios get closer and closer to Φ = 1.618033988749894848204586834… = (√5 + 1) / 2. In other words, fib(k) ≈ fib(k-1) * Φ = fib(k-1) * 1.618… in base 10. This means that the digit-length of fib(k) ≈ integer(k * log(&Phi)) + 1. In base b, the average value of a digit in a Fibonacci number is (b^2-b) / 2b. Therefore in base 10, the average value of a digit is (10^2-10) / 20 = 90 / 20 = 4.5. The average value of digsum(fib(k)) ≈ 4.5 * log(&Phi) * k = 4.5 * 0.20898764… * k = 0.940444… * k. It isn’t surprising that as fib(k) gets larger, digsum(fib(k)) tends to get smaller than k.

In base 10, anyway. But what about base 11? In base 11, log(Φ) = 0.20068091818623… and the average value of a base-11 digit in fib(k) is 5 = 110 / 22 = (11^2 – 11) / 22. Therefore the average value of digsum(fib(k)) in base 11 is 5 * log(&Phi) * k = 5 * 0.20068091818623… * k = 1.00340459… * k. The average value of digsum(fib(k)) is much closer to k and it’s not surprising that for so many fib(k) in base 11, digsum(fib(k)) = k. In base 11, log(Φ) ≈ 1/5 and because the average digval is 5, digsum(fib(k)) ≈ 5 * 1/5 * k = 1 * k = k. As we’ve seen, that isn’t true in base 10. Nor is it true in base 12, where log(Φ) = 0.1936538843826… and average digval is 5.5 = (12^2 – 12) / 24 = 132 / 24. Therefore the average value in base 12 of digsum(fib(k)) = 1.0650963641… * k. The function digsum(fib(k)) = k rapidly dries up in base 12, just as it does in base 10:


digsum(fib(1),b=12) = 1 = digsum(1) (k=1)
digsum(fib(5),b=12) = 5 = digsum(5) (k=5)
digsum(fib(11) = 11 = digsum(175) (k=13)
digsum(fib(12) = 12 = digsum(275) (k=14)
digsum(fib(75) = 75 = digsum(976446538A0863811) (k=89) (c=5)
digsum(fib(80) = 80 = digsum(1B3643B50939808B400) (k=96)
digsum(fib(A3) = A3 = digsum(35147A566682BB9529034402) (k=123)
digsum(fib(165) = 165 (k=221)
digsum(fib(283) = 283 (k=387)
digsum(fib(2AB) = 2AB (k=419) (c=10)
digsum(fib(39A) = 39A (k=550)
digsum(fib(460) = 460 (k=648)
digsum(fib(525) = 525 (k=749)
digsum(fib(602) = 602 (k=866)
digsum(fib(624) = 624 (k=892) (c=15)
digsum(fib(781) = 781 (k=1105)
digsum(fib(1219) = 1219 (k=2037)


Previously Pre-Posted…

Mötley Vüe — more on digsum(fib(k)) = k

Two be Continued…

Here’s a useless fact that nobody interested in mathematics would ever forget: digsum(fib(2222)) = 2222. That is, if you add the digits of the 2222nd Fibonacci number, you get 2222:


fib(2222) = 104,966,721,620,282,584,734,867,037,988,863,914,269,721,309,244,628,258,918,225,835,217,264,239,539,186,480,867,849,267,122,885,365,019,934,494,625,410,255,045,832,359,715,759,649,385,824,745,506,982,513,773,397,742,803,445,080,995,617,047,976,796,168,678,756,479,470,761,439,513,575,962,955,568,645,505,845,492,393,360,201,582,183,610,207,447,528,637,825,187,188,815,786,270,477,935,419,631,184,553,635,981,047,057,037,341,800,837,414,913,595,584,426,355,208,257,232,868,908,837,817,478,483,039,310,790,967,631,454,123,105,472,742,221,897,397,857,677,674,619,381,961,429,837,434,434,636,098,678,708,225,493,682,469,561

2222 = 1 + 0 + 4 + 9 + 6 + 6 + 7 + 2 + 1 + 6 + 2 + 0 + 2 + 8 + 2 + 5 + 8 + 4 + 7 + 3 + 4 + 8 + 6 + 7 + 0 + 3 + 7 + 9 + 8 + 8 + 8 + 6 + 3 + 9 + 1 + 4 + 2 + 6 + 9 + 7 + 2 + 1 + 3 + 0 + 9 + 2 + 4 + 4 + 6 + 2 + 8 + 2 + 5 + 8 + 9 + 1 + 8 + 2 + 2 + 5 + 8 + 3 + 5 + 2 + 1 + 7 + 2 + 6 + 4 + 2 + 3 + 9 + 5 + 3 + 9 + 1 + 8 + 6 + 4 + 8 + 0 + 8 + 6 + 7 + 8 + 4 + 9 + 2 + 6 + 7 + 1 + 2 + 2 + 8 + 8 + 5 + 3 + 6 + 5 + 0 + 1 + 9 + 9 + 3 + 4 + 4 + 9 + 4 + 6 + 2 + 5 + 4 + 1 + 0 + 2 + 5 + 5 + 0 + 4 + 5 + 8 + 3 + 2 + 3 + 5 + 9 + 7 + 1 + 5 + 7 + 5 + 9 + 6 + 4 + 9 + 3 + 8 + 5 + 8 + 2 + 4 + 7 + 4 + 5 + 5 + 0 + 6 + 9 + 8 + 2 + 5 + 1 + 3 + 7 + 7 + 3 + 3 + 9 + 7 + 7 + 4 + 2 + 8 + 0 + 3 + 4 + 4 + 5 + 0 + 8 + 0 + 9 + 9 + 5 + 6 + 1 + 7 + 0 + 4 + 7 + 9 + 7 + 6 + 7 + 9 + 6 + 1 + 6 + 8 + 6 + 7 + 8 + 7 + 5 + 6 + 4 + 7 + 9 + 4 + 7 + 0 + 7 + 6 + 1 + 4 + 3 + 9 + 5 + 1 + 3 + 5 + 7 + 5 + 9 + 6 + 2 + 9 + 5 + 5 + 5 + 6 + 8 + 6 + 4 + 5 + 5 + 0 + 5 + 8 + 4 + 5 + 4 + 9 + 2 + 3 + 9 + 3 + 3 + 6 + 0 + 2 + 0 + 1 + 5 + 8 + 2 + 1 + 8 + 3 + 6 + 1 + 0 + 2 + 0 + 7 + 4 + 4 + 7 + 5 + 2 + 8 + 6 + 3 + 7 + 8 + 2 + 5 + 1 + 8 + 7 + 1 + 8 + 8 + 8 + 1 + 5 + 7 + 8 + 6 + 2 + 7 + 0 + 4 + 7 + 7 + 9 + 3 + 5 + 4 + 1 + 9 + 6 + 3 + 1 + 1 + 8 + 4 + 5 + 5 + 3 + 6 + 3 + 5 + 9 + 8 + 1 + 0 + 4 + 7 + 0 + 5 + 7 + 0 + 3 + 7 + 3 + 4 + 1 + 8 + 0 + 0 + 8 + 3 + 7 + 4 + 1 + 4 + 9 + 1 + 3 + 5 + 9 + 5 + 5 + 8 + 4 + 4 + 2 + 6 + 3 + 5 + 5 + 2 + 0 + 8 + 2 + 5 + 7 + 2 + 3 + 2 + 8 + 6 + 8 + 9 + 0 + 8 + 8 + 3 + 7 + 8 + 1 + 7 + 4 + 7 + 8 + 4 + 8 + 3 + 0 + 3 + 9 + 3 + 1 + 0 + 7 + 9 + 0 + 9 + 6 + 7 + 6 + 3 + 1 + 4 + 5 + 4 + 1 + 2 + 3 + 1 + 0 + 5 + 4 + 7 + 2 + 7 + 4 + 2 + 2 + 2 + 1 + 8 + 9 + 7 + 3 + 9 + 7 + 8 + 5 + 7 + 6 + 7 + 7 + 6 + 7 + 4 + 6 + 1 + 9 + 3 + 8 + 1 + 9 + 6 + 1 + 4 + 2 + 9 + 8 + 3 + 7 + 4 + 3 + 4 + 4 + 3 + 4 + 6 + 3 + 6 + 0 + 9 + 8 + 6 + 7 + 8 + 7 + 0 + 8 + 2 + 2 + 5 + 4 + 9 + 3 + 6 + 8 + 2 + 4 + 6 + 9 + 5 + 6 + 1

Numbers like this, where k = digsum(fib(k)), are rare. And 2222 is almost certainly the last of them. These are the relevant listings at the Online Encyclopedia of Integer Sequences:


0, 1, 5, 10, 31, 35, 62, 72, 175, 180, 216, 251, 252, 360, 494, 504, 540, 946, 1188, 2222 — A020995, Numbers k such that the sum of the digits of Fibonacci(k) is k.

0, 1, 5, 55, 1346269, 9227465, 4052739537881, 498454011879264, 1672445759041379840132227567949787325, 18547707689471986212190138521399707760, 619220451666590135228675387863297874269396512... — A067515, Fibonacci numbers with index = digit sum.

At least, they’re rare in base 10. What about other bases? Well, they’re rare in all other bases except one: base 11. When I looked there, I quickly found more than 450 numbers where digsum(fib(k),b=11) = k. So here’s an interesting little problem: Why is base 11 so productive? Or maybe I should say: Φ is base 11 so productive?

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

Pi in the Bi

Binary is beautiful — both simple and subtle. What could be simpler than using only two digits to count with?


0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111, 10000, 10001, 10010, 10011, 10100, 10101, 10110, 10111, 11000, 11001, 11010, 11011, 11100, 11101, 11110, 11111, 100000, 100001, 100010, 100011, 100100, 100101, 100110, 100111, 101000, 101001, 101010, 101011, 101100, 101101, 101110, 101111, 110000, 110001, 110010, 110011, 110100, 110101, 110110, 110111, 111000, 111001, 111010, 111011, 111100, 111101, 111110, 111111, 1000000...

But the simple patterns in the two digits of binary involve two of the most important numbers in mathematics: π and e (aka Euler’s number):


π = 3.141592653589793238462643383...
e = 2.718281828459045235360287471...

It’s easy to write π and e in binary:


π = 11.00100 10000 11111 10110 10101 00010...
e = 10.10110 11111 10000 10101 00010 11000...

But how do π and e appear in the patterns of binary 1 and 0? Well, suppose you use the digits of binary to generate the sums of distinct integers. For example, here are the sums of distinct integers you can generate with four digits of binary, if you count the digits from right to left (so the rightmost digit is 1, the the next-to-rightmost digit is 2, the next-to-leftmost digit is 3, and the leftmost digit is 4):


0000 → 0*4 + 0*3 + 0*2 + 0*1 = 0
0001 → 0*4 + 0*3 + 0*2 + 1*1 = 1*1 = 1
0010 → 0*4 + 0*3 + 1*2 + 0*1 = 1*2 = 2
0011 → 0*4 + 0*3 + 1*2 + 1*1 = 1*2 + 1*1 = 3
0100 → 1*3 = 3
0101 → 1*3 + 1*1 = 4
0110 → 3 + 2 = 5
0111 → 3 + 2 + 1 = 6
1000 → 4
1001 → 4 + 1 = 5
1010 → 4 + 2 = 6
1011 → 4 + 2 + 1 = 7
1100 → 4 + 3 = 7
1101 → 4 + 3 + 1 = 8
1110 → 4 + 3 + 2 = 9
1111 → 4 + 3 + 2 + 1 = 10

There are 16 sums (16 = 2^4) generating 11 integers, 0 to 10. But some integers involve more than one sum:


3 = 2 + 1 ← 0011
3 = 3 ← 0100

4 = 3 + 1 ← 0101
4 = 4 ← 1000

5 = 3 + 2 ← 0110
5 = 4 + 1 ← 1001

6 = 3 + 2 + 1 ← 0111
6 = 4 + 2 ← 1010

7 = 4 + 2 + 1 ← 1011
7 = 4 + 3 ← 1100

Note the symmetry of the sums: the binary number 0011, yielding 3, is the mirror of 1100, yielding 7; the binary number 0100, yielding 3 again, is the mirror of 1011, yielding 7 again. In each pair of mirror-sums, the two numbers, 3 and 7, are related by the formula 10-3 = 7 and 10-7 = 3. This also applies to 4 and 6, where 10-4 = 6 and 10-6 = 4, and to 5, which is its own mirror (because 10-5 = 5). Now, try mapping the number of distinct sums for 0 to 10 as a graph:

Graph for distinct sums of the integers 0 to 4


The graph show how 0, 1 and 2 have one sum each, 3, 4, 5, 6 and 7 have two sums each, and 8, 9 and 10 have one sum each. Now look at the graph for sums derived from three digits of binary:

Graph for distinct sums of the integers 0 to 3


The single taller line of the seven lines represents the two sums of 3, because three digits of binary yield only one sum for 0, 1, 2, 4, 5 and 6:


000 → 0
001 → 1
010 → 2
011 → 2 + 1 = 3
100 → 3
101 → 3 + 1 = 4
110 → 3 + 2 = 5
111 → 3 + 2 + 1 = 6

Next, look at graphs for sums derived from one to sixteen binary digits and note how the symmetry of the lines begins to create a beautiful curve (the y axis is normalized, so that the highest number of sums reaches the same height in each graph):

Graph for sums from 1 binary digit


Graph for sums from 2 binary digits


Graph for sums from 3 binary digits


Graph for sums from 4 binary digits


Graph for sums from 5 binary digits


Graph for sums from 6 binary digits


Graph for sums from 7 binary digits


Graph for sums from 8 binary digits


Graph for sums from 9 binary digits


Graph for sums from 10 binary digits


Graph for sums from 11 binary digits


Graph for sums from 12 binary digits


Graph for sums from 13 binary digits


Graph for sums from 14 binary digits


Graph for sums from 15 binary digits


Graph for sums from 16 binary digits


Graphs for 1 to 16 binary digits (animated)


You may recognize the shape emerging above as the bell curve, whose formula is this:

Formula for the normal distribution or bell curve (image from ThoughtCo)


And that’s how you can find pi in the bi, or π in the binary digits of 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101…

(And how you find e too, as promised above.)


Post-Performative Post-Scriptum

I asked this question above: What could be simpler than using only two digits? Well, using only one digit is simpler still:


1, 11, 111, 1111, 11111, 111111, 1111111, 11111111, 111111111, 1111111111...

But I don’t see an easy way to find π and e in numbers like that.