Continuing the porting of stuff from betaveros.stash, and adding more stuff.
Mnemonic
Here’s my mnemonic table for digits, inspired by an old Martin Gardner column. I wrote from memory the first 132 digits of 2012! correctly at IMO 2012 with this table. I had remembered more, but unfortunately, if I recall correctly, I confused myself over whether I had encoded a 5 or a 2 by the S of “nose”, because this is supposed to be more of a phonetic code than a spelling one — otherwise double letters would be confusing and lots of randomly appearing digraphs would be wasted, because English is weird.
I assigned two kind of different consonants to 1 because it’s fairly important; I added W pretty late. The other two unused consonants are H and Y.
digit | consonant(s) | mnemonic |
---|---|---|
1 | L, W | l33t; 1 is pronounced Won |
2 | Z(, J, CH, TH) | l33t |
3 | M | tilt head sideways |
4 | F(, V) | Four |
5 | S(, SH) | l33t |
6 | G(, K) | l33t |
7 | T(, D) | l33t |
8 | B(, P) | l33t |
9 | N | Nine |
0 | R | zeRo, or it’s a Round circle |
Bits & Primes
2095133040 has 1600 factors, the most of any positive integer under 231 − 1. Ref: A002182: highly composite numbers, def. 1
There are 105097565 (1.05e8) primes under 231 − 1.
Miller-Rabin primality testing does not miss any composites:
- below 231 if the first 3 primes (2, 3, 5) are used as witnesses.
- below 232 if the first 4 primes (2, 3, 5, 7) are used as witnesses.
- below 264 if the first 12 primes (2 to 37 inclusive) are used as witnesses.
See A014233.
To verify implementations: there are 82025 primes beneath (1 << 20)
and 37871 primes between (1 << 40)
and (1 << 40) + (1 << 20)
.
Primes in Decimal
-
1881881
- n − 1 factorization: 23 × 5 × 7 × 11 × 13 × 47
- smallest primitive root: 6
-
99990001
- n − 1 factorization: 24 × 32 × 54 × 11 × 101
- smallest primitive root: 13
-
140000041
- n − 1 factorization: 23 × 32 × 5 × 157 × 2477
- smallest primitive root: 28
-
987654323
- n − 1 factorization: 2 × 701 × 704461
- smallest primitive root: 2
-
999299999
- n − 1 factorization: 2 × 23 × 21723913
- smallest primitive root: 11
-
999992999
- n − 1 factorization: 2 × 499996499
- smallest primitive root: 11
-
999999001
- n − 1 factorization: 23 × 33 × 53 × 7 × 11 × 13 × 37
- smallest primitive root: 17
-
999999929
- n − 1 factorization: 23 × 124999991
- smallest primitive root: 3
-
1000000007
- n − 1 factorization: 2 × 500000003
- smallest primitive root: 5
-
1000000009
- n − 1 factorization: 23 × 32 × 7 × 1092 × 167
- smallest primitive root: 13
-
1000000021
- n − 1 factorization: 22 × 3 × 5 × 19 × 739 × 1187
- smallest primitive root: 2
-
1234567891
- n − 1 factorization: 2 × 32 × 5 × 3607 × 3803
- smallest primitive root: 3
-
2000000011
- n − 1 factorization: 2 × 3 × 5 × 66666667
- smallest primitive root: 2
Primes in Hexadecimal
-
0xdefaced
- n − 1 factorization: 22 × 32 × 5 × 1298951
- smallest primitive root: 6
-
0xfacade5
- n − 1 factorization: 22 × 3 × 21914579
- smallest primitive root: 6
-
0x37beefed
- n − 1 factorization: 22 × 3 × 5 × 1373 × 11353
- smallest primitive root: 6
-
0x3c0ffee1
- n − 1 factorization: 25 × 7 × 2113 × 2129
- smallest primitive root: 3
-
0x3de1f1ed
- n − 1 factorization: 22 × 11 × 23595857
- smallest primitive root: 3
-
0x3efface5
- n − 1 factorization: 22 × 32 × 37 × 47 × 16883
- smallest primitive root: 2
-
0x5eedbed5
- n − 1 factorization: 22 × 7 × 53 × 199 × 5393
- smallest primitive root: 10
Floating Point
- Single-precision: sign 1b, exponent 8b, fraction 23+1b implied (= 6 ~ 9 decimal sigfigs)
- Double-precision: sign 1b, exponent 11b, fraction 52+1b implied (= 15 ~ 17 decimal sigfigs)
Special cases:
- Exponent = 0
- fraction = 0: (±) zero
- fraction ≠ 0: “subnormal” number with implied bit set to 0 instead
- Exponent = (FF or 3FF, maximum value in allocated bits)
- fraction = 0: (±) infinity
- fraction ≠ 0: NaN (sign ignored)
- top explicit fraction bit = 1: “quiet NaN”
- top explicit fraction bit = 0 (and rest ≠ 0): “signaling NaN”