Jumping Champion
[Primes Home][Home]
The Jumping Champion was observed by Odlyzko [1] and is the most popular difference between a sequence of prime numbers for all the prime numbers up to \(x\). For example, for a prime number of 11, the prime numbers are 2, 3, 5, 7 and 11, and the differences will be +1, +2, +2 and +4. The most popular value is thus 2:
|
The Jumping Champion was observed by Odlyzko [1] and is the most popular difference between a sequence of prime numbers for all the prime numbers up to \(x\). For example, for a prime number of 13, the prime numbers are 2, 3, 5, 7, 11, and 13 and the differences will be +1, +2, +2, +4 and +2. The most popular value is thus 2:
Value: 13 Primes: [2, 3, 5, 7, 11, 13] Occurances: [0 1 3 0 1 0 0 0 0 0] Jumping champions: [2]
If we select 101, we can define that the jumping champions are 2 and 4:
Value: 101 Primes: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101] Occurances: [0 1 8 0 8 0 7 0 1 0] Jumping champions: [2 4]
A value of 467 gives champions of 2, 4 and 6:
Value: 467 Primes: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467] Occurances: [ 0 1 24 0 24 0 24 0 5 0] Jumping champions: [2 4 6]
Odlyzko et al defined that 6 (\(2 \times 3\)) is the sole jumping champion from 947 up to \(1.7427 \times 10^{35}\), after which the sole jumping champion is 30 (\(2 \times 3 \times 5\)). Then around \(10^{425}\), 210 (\(2 \times 3 \times 5 \times 7\)) becomes the jumping champion.
The following outlines some sample code:
from sympy import sieve import numpy import sys import math x=421 if (len(sys.argv)>1): x=int(sys.argv[1]) if (x>1000): sys.Exit(1) primes = list(sieve.primerange(1, x+1)) difference = numpy.array([0] * math.ceil(math.sqrt(x))) for i in range(len(primes)-1): diff = primes[i+1]-primes[i] difference[diff] = difference[diff]+1 print ("Value: ",x) print ("\nPrimes:") print (primes) print ("\nOccurances:") print (difference[:10]) res = numpy.where(difference == numpy.amax(difference)) print ("\nJumping champions:") for x in res: print (x)
The distributions are:
integers x | champions for x |
integers x |
champions
for x |
3 - 4 [try] | 1 | 379 - 388 [try] | 2, 6 |
5 - 6 [try] | 1, 2 | 389 - 420 [try] | 6 |
7 - 100 [try] | 2 | 421 - 432 [try] | 2, 6 |
101 - 102 [try] | 2, 4 | 433 - 438 [try] | 2 |
103 - 106 [try] | 2 | 439 - 448 [try] | 2, 6 |
107 - 108 [try] | 2, 4 | 449 - 462 [try] | 6 |
109 - 112 [try] | 2 | 463 - 466 [try] | 2, 6 |
113 - 130 [try] | 2, 4 | 467 - 490 [try] | 2, 4, 6 |
131 - 138 [try] | 4 | 491 - 546 [try] | 4 |
139 - 150 [try] | 2, 4 | 547 - 562 [try] | 4, 6 |
151 - 166 [try] | 2 | 563 - 940 [try] | 6 |
167 - 178 [try] | 2, 4 | 941 - 946 [try] | 4, 6 |
179 - 180 [try] | 2, 4, 6 | 947 - (at least 1012) [try] | 6 |
181 - 378 [try] | 2 |
[1] Odlyzko, A.; Rubinstein, M.; and Wolf, M. "Jumping Champions." Experiment. Math. 8, 107-118, 1999 [paper].