Mod’s Chosen

When you divide one integer by another, one of two things happens. Either the second number goes perfectly into the first or there’s a remainder:


15 / 5 = 3
18 / 5 = 3⅗

In the first case, there’s no remainder, that is, the remainder is 0. In the second case, there’s a remainder of 3. And all that gives you the basis for what’s called modular arithmetic. It returns the remainder when one number is divided by another:


15 mod 5 = 0
16 mod 5 = 1
17 mod 5 = 2
18 mod 5 = 3
19 mod 5 = 4
20 mod 5 = 0
21 mod 5 = 1
22 mod 5 = 2...

It looks simple but a lot of mathematics is built on it. I don’t know much of that maths, but I know one thing I like: the patterns you can get from modular arithmetic. Suppose you draw a square, then find a point and measure the distances from that point to all the vertices of the square. Then add the distances up, turn the result into an integer if necessary, and test whether the result is divisible by 2 or not. If it is divisible, colour the point in. If it isn’t, leave the point blank.

Then move on to another point and perform the same test. This is modular arithematic, because for each point you’re asking whether d mod 2 = 0. The result looks like this:

d mod 2 = 0


Here are more divisors:

d mod 3 = 0


d mod 4 = 0


d mod 5 = 0


d mod 6 = 0


d mod 7 = 0


d mod 8 = 0


d mod 9 = 0


d mod 10 = 0


d mod various = 0 (animated)


You can also use modular arithmetic to determine the colour of the points. For example, if d mod n = 0, the point is black; if d mod n = 1, the point is red; if d mod n = 2, the point is green; and so on.

d mod 3 = 0, 1, 2 (coloured)


d mod 4 = 0, 1, 2, 3 (coloured)


d mod 5 = 0, 1, 2, 3, 4 (coloured)



d mod 5 = 0, 1, 2, 3, 4 (animated and expanding)


Autonomata

“Describe yourself.” You can say it to people. And you can say it to numbers too. For example, here’s the number 3412 describing the positions of its own digits, starting at 1 and working upward:


3412 – the 1 is in the 3rd position, the 2 is in the 4th position, the 3 is in the 1st position, and the 4 is in the 2nd position.

In other words, the positions of the digits 1 to 4 of 3412 recreate its own digits:


3412 → (3,4,1,2) → 3412

The number 3412 describes itself – it’s autonomatic (from Greek auto, “self” + onoma, “name”). So are these numbers:


1
21
132
2143
52341
215634
7243651
68573142
321654798

More precisely, they’re panautonomatic numbers, because they describe the positions of all their own digits (Greek pan or panto, “all”). But what if you use the positions of only, say, the 1s or the 3s in a number? In base ten, only one number describes itself like that: 1. But we’re not confined to base 10. In base 2, the positions of the 1s in 110 (= 6) are 1 and 10 (= 2). So 110 is monautonomatic in binary (Greek mono, “single”). 10 is also monautonomatic in binary, if the digit being described is 0: it’s in 2nd position or position 10 in binary. These numbers are monoautonomatic in binary too:


110100 = 52 (digit = 1)
10100101111 = 1327 (d=0)

In 110100, the 1s are in 1st, 2nd and 4th position, or positions 1, 10, 100 in binary. In 10100101111, the 0s are in 2nd, 4th, 5th and 7th position, or positions 10, 100, 101, 111 in binary. Here are more monautonomatic numbers in other bases:


21011 in base 4 = 581 (digit = 1)
11122122 in base 3 = 3392 (d=2)
131011 in base 5 = 5131 (d=1)
2101112 in base 4 = 9302 (d=1)
11122122102 in base 3 = 91595 (d=2)
13101112 in base 5 = 128282 (d=1)
210111221 in base 4 = 148841 (d=1)

For example, in 131011 the 1s are in 1st, 3rd, 5th and 6th position, or positions 1, 3, 10 and 11 in quinary. But these numbers run out quickly and the only monautonomatic number in bases 6 and higher is 1. However, there are infinitely long monoautonomatic integer sequences in all bases. For example, in binary this sequence at the Online Encyclopedia of Integer Sequences describes itself using the positions of its 1s:


A167502: 1, 10, 100, 111, 1000, 1001, 1010, 1110, 10001, 10010, 10100, 10110, 10111, 11000, 11010, 11110, 11111, 100010, 100100, 100110, 101001, 101011, 101100, 101110, 110000, 110001, 110010, 110011, 110100, 111000, 111001, 111011, 111101, 11111, …

In base 10, it looks like this:


A167500: 1, 2, 4, 7, 8, 9, 10, 14, 17, 18, 20, 22, 23, 24, 26, 30, 31, 34, 36, 38, 41, 43, 44, 46, 48, 49, 50, 51, 52, 56, 57, 59, 61, 62, 63, 64, 66, 67, 68, 69, 70, 71, 75, 77, 80, 83, 86, 87, 89, 91, 94, 95, 97, 99, 100, 101, 103, 104, 107, 109, 110, 111, 113, 114, 119, 120, 124, … (see A287515 for a similar sequence using 0s)

Amateur ’Grammatics

There is much more to mathematics than mathematics. Like a tree, it has deep roots. Like a tree, it’s affected by its environment. Philosophy of mathematics is concerned with the roots. Psychology of mathematics is concerned with the environment.

On Planet Earth, the environment is human beings. What attracts men and women to the subject? What makes them good or bad at it?And so on. One interesting answer to the first question was supplied by the mathematician Stanislaw Ulam (1909-84), who wrote this in his autobiography:

“In many cases, mathematics is an escape from reality. The mathematician finds his own monastic niche and happiness in pursuits that are disconnected from external affairs. Some practice it as if using a drug.” – Adventures of a Mathematician (1983)

That’s certainly part of maths’ appeal to me: as an escape from reality, or an escape from one reality into another (and deeper). Real life is messy. Maths isn’t, unless you want it to be. But you can find parallels between maths and real life too. In real life, people collect things that they find attractive or interesting: stamps, sea-shells, gems, cigarette-cards, beer-cans and so on. You can collect things in maths too: interesting numbers and number patterns. Recreational maths can feel like looking on a beach for attractive shells and pebbles.

Here’s a good example: digital anagrams, or numbers in different bases whose digits are the same but re-arranged. For example, 13 in base 10 equals 31 in base 4, because 13 = 3 * 4 + 1. To people with the right kind of mind, that’s an interesting and attractive pattern. There are lots more anagrams like that:

1045 = 4501 in base 6
1135 = 5131 in base 6

23 = 32 in base 7
46 = 64 in base 7

1273 = 2371 in base 8
1653 = 3165 in base 8

158 = 185 in base 9
227 = 272 in base 9

196 = 169 in base 11
283 = 238 in base 11

2193 = 1329 in base 12
6053 = 3605 in base 12

43 = 34 in base 13
86 = 68 in base 13

But triple anagrams, involving three bases, seem even more attractive:

913 = 391 in base 16 = 193 in base 26
103462 = 610432 in base 7 = 312046 in base 8
245183 = 413285 in base 9 = 158234 in base 11

And that’s just looking in base 10. If you include all bases, the first double anagram is in fact 21 in base 3 = 12 in base 5 (equals 7 in base 10). The first triple anagram is this:

2C1 in base 13 = 1C2 in base 17 = 12C in base 21 (equals 495 in base 10)

But are there quadruple anagrams, quintuple anagrams and higher? I don’t know. I haven’t found any and it gets harder and harder to search for them, because the bigger n gets, the more bases there are to check. However, I can say one thing for certain: in any given base, anagrams eventually disappear.

To understand why, consider the obvious fact that anagrams have to have the same number of digits in different bases. But the number of digits is a function of the powers of the base. That is, the triple anagram 103462 (see above) has six digits in bases 7, 8 and 10 because 7^5 < 103462 < 7^6, 8^5 < 103462 < 8^6 and 10^5 < 103462 < 10^6. Similarly, the triple anagram 245183 (ditto) has six digits in bases 9, 10 and 11 because 9^5 < 245183 < 9^6, 10^5 < 245183 < 10^6 and 11^5 < 245183 < 11^6:

7^5 < 103462 < 7^6
16807 < 103462 < 117649
8^5 < 103462 < 8^6
32768 < 103462 < 262144
10^5 < 103462 < 10^6
100000 < 103462 < 1000000
9^5 < 245183 < 9^6
59049 < 245183 < 531441
10^5 < 245183 < 10^6
100000 < 245183 < 1000000
11^5 < 245183 < 11^6
161051 < 245183 < 1771561

In other words, for some n the number-lengths of bases 7 and 8 overlap the number-lengths of base 10, which overlap the number-lengths of bases 9 and 11. But eventually, as n gets larger, the number-lengths of base 10 will fall permanently below the number-lengths of bases 7, 8 and 9, just as the number-lengths of base 11 will fall permanently below the number-lengths of base 10.

To see this in action, consider the simplest example: number-lengths in bases 2 and 3. There is no anagram involving these two bases, because only two numbers have the same number of digits in both: 1 and 3 = 11 in base 2 = 10 in base 3. After that, n in base 2 always has more digits than n in base 3:

2^0 = 1 in base 2 (number-length=1) = 1 in base 3 (l=1)
2^1 = 2 = 10 in base 2 (number-length=2) = 2 in base 3 (l=1)
2^2 = 4 = 100 in base 2 (l=3) = 11 in base 3 (l=2)
2^3 = 8 = 1000 in base 2 = 22 in base 3 (l=2)
2^4 = 16 = 10000 in base 2 = 121 in base 3 (l=3)
2^5 = 32 = 1012 in base 3 (l=4)
2^6 = 64 = 2101 in base 3 (l=4)
2^7 = 128 = 11202 in base 3 (l=5)
2^8 = 256 = 100111 in base 3 (l=6)
2^9 = 512 = 200222 in base 3 (l=6)
2^10 = 1024 = 1101221 in base 3 (l=7)

Now consider bases 3 and 4. Here is an anagram using these bases: 211 in base 3 = 112 in base 4 = 22. There are no more anagrams and eventually there’s no more chance for them to occur, because this happens as n gets larger:

3^0 = 1 in base 3 (number-length=1) = 1 in base 4 (l=1)
3^1 = 3 = 10 in base 3 (number-length=2) = 3 in base 4 (l=1)
3^2 = 9 = 100 in base 3 (l=3) = 21 in base 4 (l=2)
3^3 = 27 = 1000 in base 3 (l=4) = 123 in base 4 (l=3)
3^4 = 81 = 10000 in base 3 (l=5) = 1101 in base 4 (l=4)
3^5 = 243 = 100000 in base 3 (l=6) = 3303 in base 4 (l=4)
3^6 = 729 = 23121 in base 4 (l=5)
3^7 = 2187 = 202023 in base 4 (l=6)
3^8 = 6561 = 1212201 in base 4 (l=7)
3^9 = 19683 = 10303203 in base 4 (l=8)
3^10 = 59049 = 32122221 in base 4 (l=8)
3^11 = 177147 = 223033323 in base 4 (l=9)
3^12 = 531441 = 2001233301 in base 4 (l=10)
3^13 = 1594323 = 12011033103 in base 4 (l=11)
3^14 = 4782969 = 102033231321 in base 4 (l=12)
3^15 = 14348907 = 312233021223 in base 4 (l=12)
3^16 = 43046721 = 2210031131001 in base 4 (l=13)
3^17 = 129140163 = 13230220113003 in base 4 (l=14)
3^18 = 387420489 = 113011321011021 in base 4 (l=15)
3^19 = 1162261467 = 1011101223033123 in base 4 (l=16)
3^20 = 3486784401 = 3033311001232101 in base 4 (l=16)

When n is sufficiently large, it always has fewer digits in base 4 than in base 3. And the gap gets steadily bigger. When n doesn’t have the same number of digits in two bases, it can’t be an anagram. A similar number-length gap eventually appears in bases 4 and 5, but the anagrams don’t run out as quickly there:

103 in base 5 = 130 in base 4 = 28
1022 in base 5 = 2021 in base 4 = 137
1320 in base 5 = 3102 in base 4 = 210
10232 in base 5 = 22310 in base 4 = 692
10332 in base 5 = 23031 in base 4 = 717
12213 in base 5 = 32211 in base 4 = 933
100023 in base 5 = 301002 in base 4 = 3138
100323 in base 5 = 302031 in base 4 = 3213
102131 in base 5 = 311120 in base 4 = 3416
102332 in base 5 = 312023 in base 4 = 3467
103123 in base 5 = 313102 in base 4 = 3538
1003233 in base 5 = 3323010 in base 4 = 16068

Base 10 isn’t exempt. Eventually it must outshrink base 9 and be outshrunk by base 11, so what is the highest 9:10 anagram and highest 10:11 anagram? I don’t know: my maths isn’t good enough for me to find out quickly. But using machine code, I’ve found these large anagrams:

205888888872731 = 888883178875022 in base 9
1853020028888858 = 8888888525001032 in base 9
16677181388880888 = 88888888170173166 in base 9

999962734025 = 356099992472 in base 11
9999820360965 = 3205999998606 in base 11
99999993520348 = 29954839390999 in base 11

Note how the digits of n in the lower base are increasing as the digits of n in the higher base are decreasing. Eventually, n in the lower base will always have more digits than n in the higher base. When that happens, there will be no more anagrams.

Some triple anagrams

2C1 in base 13 = 1C2 in base 17 = 12C in base 21 (n=495 = 3^2*5*11)
912 in base 10 = 219 in base 21 = 192 in base 26 (2^4*3*19)
913 in base 10 = 391 in base 16 = 193 in base 26 (11*83)
4B2 in base 15 = 42B in base 16 = 24B in base 22 (n=1067 = 11*97)
5C1 in base 17 = 51C in base 18 = 1C5 in base 35 (n=1650 = 2*3*5^2*11)
3L2 in base 26 = 2L3 in base 31 = 23L in base 35 (n=2576 = 2^4*7*23)
3E1 in base 31 = 1E3 in base 51 = 13E in base 56 (n=3318 = 2*3*7*79)
531 in base 29 = 351 in base 37 = 135 in base 64 (n=4293 = 3^4*53)
D53 in base 18 = 53D in base 29 = 35D in base 37 (n=4305 = 3*5*7*41)
53I in base 29 = 3I5 in base 35 = 35I in base 37 (n=4310 = 2*5*431)
825 in base 25 = 582 in base 31 = 258 in base 49 (n=5055 = 3*5*337)
6S2 in base 31 = 2S6 in base 51 = 26S in base 56 (n=6636 = 2^2*3*7*79)
D35 in base 23 = 5D3 in base 36 = 3D5 in base 46 (n=6951 = 3*7*331)
3K1 in base 49 = 31K in base 52 = 1K3 in base 81 (n=8184 = 2^3*3*11*31)
A62 in base 29 = 6A2 in base 37 = 26A in base 64 (n=8586 = 2*3^4*53)
9L2 in base 30 = 92L in base 31 = 2L9 in base 61 (n=8732 = 2^2*37*59)
3W1 in base 49 = 1W3 in base 79 = 13W in base 92 (n=8772 = 2^2*3*17*43)
G4A in base 25 = AG4 in base 31 = 4AG in base 49 (n=10110 = 2*3*5*337)
J10 in base 25 = 1J0 in base 100 = 10J in base 109 (n=11900 = 2^2*5^2*7*17)
5[41]1 in base 46 = 1[41]5 in base 93 = 15[41] in base 109 (n=12467 = 7*13*137)
F91 in base 29 = 9F1 in base 37 = 19F in base 109 (n=12877 = 79*163)
F93 in base 29 = 9F3 in base 37 = 39F in base 64 (n=12879 = 3^5*53)
AP4 in base 35 = A4P in base 36 = 4AP in base 56 (n=13129 = 19*691)
BP2 in base 36 = B2P in base 37 = 2PB in base 81 (n=15158 = 2*11*13*53)
O6F in base 25 = FO6 in base 31 = 6FO in base 49 (n=15165 = 3^2*5*337)
FQ1 in base 31 = 1QF in base 111 = 1FQ in base 116 (n=15222 = 2*3*43*59)
B74 in base 37 = 7B4 in base 46 = 47B in base 61 (n=15322 = 2*47*163)

Playing the Double Base

Here’s some mathematical nonsense:

10 > 12
100 > 122
1000 > 1222

How can 1000 > 1222? Well, it makes perfect sense in what you might call a double base. In this base, every number is identified by a unique string of digits, but the strings don’t behave as they do in a standard base.

To see how this double base works, first look at 9 in standard base 2. To generate the binary digits from right to left, you follow the procedure x mod 2 and x = x div 2, where (x mod 2) returns the remainder when x is divided by 2 and (x div 2) divides x by 2 and discards the remainder:

9 mod 2 = 1 → ...1
9 div 2 = 4
4 mod 2 = 0 → ..01
4 div 2 = 2
2 mod 2 = 0 → .001
2 div 2 = 1
1 mod 2 = 1 → 1001

So 9[b=10] = 1001[b=2]. To adapt the procedure to base 3, simply use x mod 3 and x = x div 3:

32 mod 3 = 2 → ...2
32 div 3 = 10
10 mod 3 = 1 → ..12
10 div 3 = 3
3 mod 3 = 0 → .012
3 div 3 = 1
1 mod 3 = 1 → 1012

So 32[b=10] = 1012[b=3].

But what happens if you mix bases and use (x mod 3) and (x div 2), like this?:

2 mod 3 = 2 → .2
2 div 2 = 1
1 mod 3 = 1 → 12

3 mod 3 = 0 → .0
3 div 2 = 1
1 mod 3 = 1 → 10

So 10 > 12, i.e. 10[b=3,2] > 12[b=3,2].

5 mod 3 = 2 → ..2
5 div 2 = 2
2 mod 3 = 2 → .22
2 div 2 = 1
1 mod 3 = 1 → 122

6 mod 3 = 0 → ..0
6 div 2 = 3
3 mod 3 = 0 → .00
3 div 2 = 1
1 mod 3 = 1 → 100

So 100 > 122.

11 mod 3 = 2 → ...2
11 div 2 = 5
5 mod 3 = 2 → ..22
5 div 2 = 2
2 mod 3 = 2 → .222
2 div 2 = 1
1 mod 3 = 1 → 1222

12 mod 3 = 0 → …0
12 div 2 = 6
6 mod 3 = 0 → ..00
6 div 2 = 3
3 mod 3 = 0 → .000
3 div 2 = 1
1 mod 3 = 1 → 1000

And 1000 > 1222. Here are numbers 1 to 32 in this double base:

1 = 1
12 = 2
10 = 3
121 = 4
122 = 5
100 = 6
101 = 7
1212 = 8
1210 = 9
1221 = 10
1222 = 11
1000 = 12
1001 = 13
1012 = 14
1010 = 15
12121 = 16
12122 = 17
12100 = 18
12101 = 19
12212 = 20
12210 = 21
12221 = 22
12222 = 23
10000 = 24
10001 = 25
10012 = 26
10010 = 27
10121 = 28
10122 = 29
10100 = 30
10101 = 31
121212 = 32

Given a number represented in this mixed base, how do you extract the underlying n? Suppose the number takes the form n = (digit[1]..digit[di]), where digit[1] is the first and leftmost digit and digit[di] the final and rightmost digit. Then this algorithm will extract n:

n = 1
for i = 2 to di
..n = n * 2
..while n mod 3 ≠ digit[i]
....n = n + 1
..endwhile
next i
print n

For example, suppose n = 12212[b=3,2]. Then di = 5 and the algorithm will work like this:

n = 1
n = n * 2 = 2.
2 mod 3 = 2 = digit[2]
2 * 2 = 4
4 mod 3 = 1 ≠ digit[3]
5 mod 3 = 2 = digit[3]
5 * 2 = 10
10 mod 3 = 1 = digit[4]
10 * 2 = 20
20 mod 3 = 2 = digit[5]

Therefore 12212[b=3,2] = 20[b=10].

Now try some more mathematical nonsense:

21 > 100
111 > 1,000
1,001 > 10,000
10,001 > 100,000

How can numbers with d digits be greater than numbers with d+1 digits? Easily. In this incremental base, the base adjusts itself as the digits are generated, like this:

5 mod 2 = 1 → .1
5 div 2 = 2
2 mod (2 + 1) = 2 mod 3 = 2 → 21

The first digit generated is 1, so the base increases to (2 + 1) = 3 for the second digit. Compare the procedure when n = 4:

4 mod 2 = 0 → ..0
4 div 2 = 2
2 mod 2 = 0 → .00
2 div 2 = 1
1 mod 2 = 1 → 100

So 21 > 100, because 4 is a power of 2 and all the digits generated by (x mod 2) are 0 except the final and leftmost. 2 + 0 = 2. Now try n = 33:

33 mod 2 = 1 → ...1
33 div 2 = 16
16 mod (2+1) = 16 mod 3 = 1 → ..11
16 div 3 = 5
5 mod (3+1) = 5 mod 4 = 1 → .111
5 div 4 = 1
1 mod (4+1) = 1 mod 5 = 1.

33[b=10] = 1111[b=2,3,4,5].

Here are numbers 1 to 60 in this incremental base (note how 21 > 100, 111 > 1000, 1001 > 10000 and 10001 > 100000):

1 = 1
10 = 2
11 = 3
100 = 4*
21 = 5*
110 = 6
101 = 7
1000 = 8*
111 = 9*
210 = 10
121 = 11
1100 = 12
201 = 13
1010 = 14
211 = 15
10000 = 16*
221 = 17
1110 = 18
1001 = 19*
2100 = 20
311 = 21
1210 = 22
321 = 23
11000 = 24
1101 = 25
2010 = 26
1011 = 27
10100 = 28
421 = 29
2110 = 30
1201 = 31
100000 = 32*
1111 = 33
2210 = 34
1021 = 35
11100 = 36
2001 = 37
10010 = 38
1211 = 39
21000 = 40
1121 = 41
3110 = 42
2101 = 43
12100 = 44
1311 = 45
3210 = 46
1221 = 47
110000 = 48
2201 = 49
11010 = 50
2011 = 51
20100 = 52
1321 = 53
10110 = 54
10001 = 55*
101000 = 56
2111 = 57
4210 = 58
1421 = 59
21100 = 60

And here are numbers 256 to 270 (Note how 8,421 > 202,100 > 100,000,000):

100000000 = 256*
11221 = 257
101110 = 258
32101 = 259
202100 = 260*
13311 = 261
41210 = 262
10321 = 263
1111000 = 264
24201 = 265
131010 = 266
23011 = 267
320100 = 268
8421 = 269*
52110 = 270

Extracting n from a number represented in this incremental base is trickier than for the double base using (x mod 3) and (x div 2). To see how to do it, examine 11221[b=incremental]. The fifth and rightmost digit is 1, so the base increases to (2 + 1) = 3 for the fourth digit, which is 2. The base increases to (3 + 2) = 5 for the third digit, which is 2 again. The base increases to (5 + 2) = 7 for the second digit, 1. But the first and rightmost digit, 1, represents (x div 7) mod (7 + 1 = 8). So n can be extracted like this:

digit[1] * 7 = 1 * 7 = 7
7 mod 7 = 0 ≠ digit[2]
8 mod 7 = 1 = digit[2]
8 * 5 = 40
40 mod 5 = 0 ≠ digit[3]
41 mod 5 = 1 ≠ digit[3]
42 mod 5 = 2 = digit[3]
42 * 3 = 126
126 mod 3 = 0 ≠ digit[4]
127 mod 3 = 1 ≠ digit[4]
128 mod 3 = 2 = digit[4]
128 * 2 = 256
256 mod 2 = 0 ≠ digit[5]
257 mod 2 = 1 = digit[5]

So 11221[b=8,7,5,3,2] = 257[b=10].

Now try 8421[b=incremental]. The fourth and rightmost digit is 1, so the base increases to (2 + 1) = 3 for the third digit, which is 2. The base increases to (3 + 2) = 5 for the second digit, 4. But the first and rightmost digit, 8, represents (x div 5) mod (5 + 4 = 9). So n can be extracted like this:

digit[1] * 5 = 8 * 5 = 40
40 mod 5 = 0 ≠ digit[2]
41 mod 5 = 1 ≠ digit[2]
42 mod 5 = 2 ≠ digit[2]
43 mod 5 = 3 ≠ digit[2]
44 mod 5 = 4 = digit[2]
44 * 3 = 132
132 mod 3 = 0 ≠ digit[3]
133 mod 3 = 1 ≠ digit[3]
134 mod 3 = 2 = digit[3]
134 * 2 = 268
268 mod 2 = 0 ≠ digit[4]
269 mod 2 = 1 = digit[4]

So 8421[b=9,5,3,2] = 269[b=10].

The Rite of Sling

Duels are interesting things. Flashman made his name in one and earnt an impressive scar in another. Maupassant explored their psychology and so did his imitator Maugham. Game theory might be a good guide on how to fight one, but I’d like to look at something simpler: the concept of duelling numbers.

How would two numbers fight? One way is to use digit-sums. Find the digit-sum of each number, then take it away from the other number. Repeat until one or both numbers <= 0, like this:

function duel(n1,n2){
print(n1," <-> ",n2);
do{
s1=digitsum(n1);
s2=digitsum(n2);
n1 -= s2;
n2 -= s1;
print(” -> ",n1," <-> ",n2);
}while(n1>0 && n2>0);
}

Suppose n1 = 23 and n2 = 22. At the first step, s1 = digitsum(23) = 5 and s2 = digitsum(22) = 4. So n1 = 23 – 4 = 19 and n2 = 22 – 5 = 17. And what happens in the end?

23 ↔ 22 ➔ 19 ↔ 17 ➔ 11 ↔ 7 ➔ 4 ↔ 5 ➔ -1 ↔ 1

So 23 loses the duel with 22. Now try 23 vs 24:

23 ↔ 24 ➔ 17 ↔ 19 ➔ 7 ↔ 11 ➔ 5 ↔ 4 ➔ 1 ↔ -1

23 wins the duel with 24. The gap can be bigger. For example, 85 and 100 are what might be called David and Goliath numbers, because the David of 85 beats the Goliath of 100:

85 ↔ 100 ➔ 84 ↔ 87 ➔ 69 ↔ 75 ➔ 57 ↔ 60 ➔ 51 ↔ 48 ➔ 39 ↔ 42 ➔ 33 ↔ 30 ➔ 30 ↔ 24 ➔ 24 ↔ 21 ➔ 21 ↔ 15 ➔ 15 ↔ 12 ➔ 12 ↔ 6 ➔ 6 ↔ 3 ➔ 3 ↔ -3

999 and 1130 are also David and Goliath numbers:

999 ↔ 1130 ➔ 994 ↔ 1103 ➔ 989 ↔ 1081 ➔ 979 ↔ 1055 ➔ 968 ↔ 1030 ➔ 964 ↔ 1007 ➔ 956 ↔ 988 ➔ 931 ↔ 968 ➔ 908 ↔ 955 ➔ 889 ↔ 938 ➔ 869 ↔ 913 ➔ 856 ↔ 890 ➔ 839 ↔ 871 ➔ 823 ↔ 851 ➔ 809 ↔ 838 ➔ 790 ↔ 821 ➔ 779 ↔ 805 ➔ 766 ↔ 782 ➔ 749 ↔ 763 ➔ 733 ↔ 743 ➔ 719 ↔ 730 ➔ 709 ↔ 713 ➔ 698 ↔ 697 ➔ 676 ↔ 674 ➔ 659 ↔ 655 ➔ 643 ↔ 635 ➔ 629 ↔ 622 ➔ 619 ↔ 605 ➔ 608 ↔ 589 ➔ 586 ↔ 575 ➔ 569 ↔ 556 ➔ 553 ↔ 536 ➔ 539 ↔ 523 ➔ 529 ↔ 506 ➔ 518 ↔ 490 ➔ 505 ↔ 476 ➔ 488 ↔ 466 ➔ 472 ↔ 446 ➔ 458 ↔ 433 ➔ 448 ↔ 416 ➔ 437 ↔ 400 ➔ 433 ↔ 386 ➔ 416 ↔ 376 ➔ 400 ↔ 365 ➔ 386 ↔ 361 ➔ 376 ↔ 344 ➔ 365 ↔ 328 ➔ 352 ↔ 314 ➔ 344 ↔ 304 ➔ 337 ↔ 293 ➔ 323 ↔ 280 ➔ 313 ↔ 272 ➔ 302 ↔ 265 ➔ 289 ↔ 260 ➔ 281 ↔ 241 ➔ 274 ↔ 230 ➔ 269 ↔ 217 ➔ 259 ↔ 200 ➔ 257 ↔ 184 ➔ 244 ↔ 170 ➔ 236 ↔ 160 ➔ 229 ↔ 149 ➔ 215 ↔ 136 ➔ 205 ↔ 128 ➔ 194 ↔ 121 ➔ 190 ↔ 107 ➔ 182 ↔ 97 ➔ 166 ↔ 86 ➔ 152 ↔ 73 ➔ 142 ↔ 65 ➔ 131 ↔ 58 ➔ 118 ↔ 53 ➔ 110 ↔ 43 ➔ 103 ↔ 41 ➔ 98 ↔ 37 ➔ 88 ↔ 20 ➔ 86 ↔ 4 ➔ 82 ↔ -10

You can look in the other direction and find bully numbers, or numbers that beat all numbers smaller than themselves. In base 10, the numbers 2 to 9 obviously do. So do these:

35, 36, 37, 38, 39, 47, 48, 49, 58, 59, 64, 65, 66, 67, 68, 69, 76, 77, 78, 79, 189

In other bases, bullies are sometimes common, sometimes rare. Sometimes they don’t exist at all for n > b. Here are bully numbers for bases 2 to 30:

base=2: 3, 5, 7, 13, 15, 21, 27, 29, 31, 37, 43, 45, 47, 54, 59
b=3: 4, 5, 7, 8, 14
b=4: 5, 6, 7, 9, 10, 11, 14, 15, 27, 63
b=5: 12, 13, 14, 18, 19, 23, 24
b=6: 15, 16, 17, 22, 23, 26, 27, 28, 29, 32, 33, 34, 35, 65, 71, 101
b=7: 17, 18, 19, 20, 24, 25, 26, 27, 32, 33, 34, 40, 41, 45, 46, 47, 48, 76
b=8: 37, 38, 39, 46, 47, 59, 60, 61, 62, 63, 95, 103, 111, 119
b=9: 42, 43, 44, 52, 53, 61, 62
b=10: 35, 36, 37, 38, 39, 47, 48, 49, 58, 59, 64, 65, 66, 67, 68, 69, 76, 77, 78, 79, 189
b=11: 38, 39, 40, 41, 42, 43, 49, 50, 51, 52, 53, 54, 62, 63, 64, 65, 73, 74, 75, 76, 85, 86, 87
b=12: 57, 58, 59
b=13: 58, 59, 60, 61, 62, 63, 64, 74, 75, 76, 77, 87, 88, 89, 90, 101, 102, 103, 115, 116, 127, 128, 129
b=14: none (except 2 to 13)
b=15: 116, 117, 118, 119, 130, 131, 132, 133, 134, 147, 148, 149
b=16: 122, 123, 124, 125, 126, 127, 140, 141, 142, 143, 156, 157, 158, 159, 173, 174, 175, 190, 191, 222, 223
b=17: 151, 152, 168, 169, 185, 186
b=18: 85, 86, 87, 88, 89, 191, 192, 193, 194, 195, 196, 197, 212, 213, 214, 215
b=19: 242, 243, 244, 245, 246
b=20: none
b=21: 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 162, 163, 164, 165, 166, 167, 183, 184, 185, 186, 187, 188, 206, 207, 208, 209, 227, 228, 229, 230, 248, 249, 250, 251, 270, 271, 272
b=22: 477, 478, 479, 480, 481, 482, 483
b=23: none
b=24: none
b=25: 271, 272, 273, 274, 296, 297, 298, 299, 322, 323, 324, 348, 349, 372, 373, 374
b=26: none
b=27: none
b=28: none
b=29: 431, 432, 433, 434, 459, 460, 461, 462, 463, 490, 491, 492, 546, 547, 548, 549, 550
b=30: none

Talcum Power

If primes are like diamonds, powers of 2 are like talc. Primes don’t crumble under division, because they can’t be divided by any number but themselves and one. Powers of 2 crumble more than any other numbers. The contrast is particularly strong when the primes are Mersenne primes, or equal to a power of 2 minus 1:

3 = 4-1 = 2^2 – 1.
4, 2, 1.

7 = 8-1 = 2^3 – 1.
8, 4, 2, 1.

31 = 32-1 = 2^5 – 1.
32, 16, 8, 4, 2, 1.

127 = 2^7 – 1.
128, 64, 32, 16, 8, 4, 2, 1.

8191 = 2^13 – 1.
8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1.

131071 = 2^17 – 1.
131072, 65536, 32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1.

524287 = 2^19 – 1.
524288, 262144, 131072, 65536, 32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1.

2147483647 = 2^31 – 1.
2147483648, 1073741824, 536870912, 268435456, 134217728, 67108864, 33554432, 16777216, 8388608, 4194304, 2097152, 1048576, 524288, 262144, 131072, 65536, 32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1.

Are Mersenne primes infinite? If they are, then there will be just as many Mersenne primes as powers of 2, even though very few powers of 2 create a Mersenne prime. That’s one of the paradoxes of infinity: an infinite part is equal to an infinite whole.

But are they infinite? No-one knows, though some of the greatest mathematicians in history have tried to find a proof or disproof of the conjecture. A simpler question about powers of 2 is this: Does every integer appear as part of a power of 2? I can’t find one that doesn’t:

0 is in 1024 = 2^10.
1 is in 16 = 2^4.
2 is in 32 = 2^5.
3 is in 32 = 2^5.
4 = 2^2.
5 is in 256 = 2^8.
6 is in 16 = 2^4.
7 is in 32768 = 2^15.
8 = 2^3.
9 is in 4096 = 2^12.
10 is in 1024 = 2^10.
11 is in 1099511627776 = 2^40.
12 is in 128 = 2^7.
13 is in 131072 = 2^17.
14 is in 262144 = 2^18.
15 is in 2097152 = 2^21.
16 = 2^4.
17 is in 134217728 = 2^27.
18 is in 1073741824 = 2^30.
19 is in 8192 = 2^13.
20 is in 2048 = 2^11.

666 is in 182687704666362864775460604089535377456991567872 = 2^157.
1066 is in 43556142965880123323311949751266331066368 = 2^135.
1492 is in 356811923176489970264571492362373784095686656 = 2^148.
2014 is in 3705346855594118253554271520278013051304639509300498049262642688253220148477952 = 2^261.

I’ve tested much higher than that, but testing is no good: where’s a proof? I don’t have one, though I conjecture that all integers do appear as part or whole of a power of 2. Nor do I have a proof for another conjecture: that all integers appear infinitely often as part or whole of powers of 2. Or indeed, of powers of 3, 4, 5 or any other number except powers of 10.

I conjecture that this would apply in all bases too: In any base b all n appear infinitely often as part or whole of powers of any number except those equal to a power of b.

1 is in 11 = 2^2 in base 3.
2 is in 22 = 2^3 in base 3.
10 is in 1012 = 2^5 in base 3.
11 = 2^2 in base 3.
12 is in 121 = 2^4 in base 3.
20 is in 11202 = 2^7 in base 3.
21 is in 121 = 2^4 in base 3.
22 = 2^3 in base 3.
100 is in 100111 = 2^8 in base 3.
101 is in 1012 = 2^5 in base 3.
102 is in 2210212 = 2^11 in base 3.
110 is in 1101221 = 2^10 in base 3.
111 is in 100111 = 2^8 in base 3.
112 is in 11202 = 2^7 in base 3.
120 is in 11202 = 2^7 in base 3.
121 = 2^4 in base 3.
122 is in 1101221 = 2^10 in base 3.
200 is in 200222 = 2^9 in base 3.
201 is in 12121201 = 2^12 in base 3.
202 is in 11202 = 2^7 in base 3.

1 is in 13 = 2^3 in base 5.
2 is in 112 = 2^5 in base 5.
3 is in 13 = 2^3 in base 5.
4 = 2^2 in base 5.
10 is in 1003 = 2^7 in base 5.
11 is in 112 = 2^5 in base 5.
12 is in 112 = 2^5 in base 5.
13 = 2^3 in base 5.
14 is in 31143 = 2^11 in base 5.
20 is in 2011 = 2^8 in base 5.
21 is in 4044121 = 2^16 in base 5.
22 is in 224 = 2^6 in base 5.
23 is in 112341 = 2^12 in base 5.
24 is in 224 = 2^6 in base 5.
30 is in 13044 = 2^10 in base 5.
31 = 2^4 in base 5.
32 is in 230232 = 2^13 in base 5.
33 is in 2022033 = 2^15 in base 5.
34 is in 112341 = 2^12 in base 5.
40 is in 4022 = 2^9 in base 5.

1 is in 12 = 2^3 in base 6.
2 is in 12 = 2^3 in base 6.
3 is in 332 = 2^7 in base 6.
4 = 2^2 in base 6.
5 is in 52 = 2^5 in base 6.
10 is in 1104 = 2^8 in base 6.
11 is in 1104 = 2^8 in base 6.
12 = 2^3 in base 6.
13 is in 13252 = 2^11 in base 6.
14 is in 144 = 2^6 in base 6.
15 is in 101532 = 2^13 in base 6.
20 is in 203504 = 2^14 in base 6.
21 is in 2212 = 2^9 in base 6.
22 is in 2212 = 2^9 in base 6.
23 is in 1223224 = 2^16 in base 6.
24 = 2^4 in base 6.
25 is in 13252 = 2^11 in base 6.
30 is in 30544 = 2^12 in base 6.
31 is in 15123132 = 2^19 in base 6.
32 is in 332 = 2^7 in base 6.

1 is in 11 = 2^3 in base 7.
2 is in 22 = 2^4 in base 7.
3 is in 1331 = 2^9 in base 7.
4 = 2^2 in base 7.
5 is in 514 = 2^8 in base 7.
6 is in 2662 = 2^10 in base 7.
10 is in 1054064 = 2^17 in base 7.
11 = 2^3 in base 7.
12 is in 121 = 2^6 in base 7.
13 is in 1331 = 2^9 in base 7.
14 is in 514 = 2^8 in base 7.
15 is in 35415440431 = 2^30 in base 7.
16 is in 164351 = 2^15 in base 7.
20 is in 362032 = 2^16 in base 7.
21 is in 121 = 2^6 in base 7.
22 = 2^4 in base 7.
23 is in 4312352 = 2^19 in base 7.
24 is in 242 = 2^7 in base 7.
25 is in 11625034 = 2^20 in base 7.
26 is in 2662 = 2^10 in base 7.

1 is in 17 = 2^4 in base 9.
2 is in 152 = 2^7 in base 9.
3 is in 35 = 2^5 in base 9.
4 = 2^2 in base 9.
5 is in 35 = 2^5 in base 9.
6 is in 628 = 2^9 in base 9.
7 is in 17 = 2^4 in base 9.
8 = 2^3 in base 9.
10 is in 108807 = 2^16 in base 9.
11 is in 34511011 = 2^24 in base 9.
12 is in 12212 = 2^13 in base 9.
13 is in 1357 = 2^10 in base 9.
14 is in 314 = 2^8 in base 9.
15 is in 152 = 2^7 in base 9.
16 is in 878162 = 2^19 in base 9.
17 = 2^4 in base 9.
18 is in 218715 = 2^17 in base 9.
20 is in 70122022 = 2^25 in base 9.
21 is in 12212 = 2^13 in base 9.
22 is in 12212 = 2^13 in base 9.