Goldbach conjecture verification


Introduction News Results Top 50 Contributors References Links Contact [Up]

Introduction

The Goldbach conjecture is one of the oldest unsolved problems in number theory [1, problem C1]. In its modern form, it states that every even number larger than two can be expressed as a sum of two prime numbers.

Let n be an even number larger than two, and let n=p+q, with p and q prime numbers, p<=q, be a Goldbach partition of n. Let r(n) be the number of Goldbach partitions of n. The number of ways of writing n as a sum of two prime numbers, when the order of the two primes is important, is thus R(n)=2r(n) when n/2 is not a prime and is R(n)=2r(n)-1 when n/2 is a prime. The Goldbach conjecture states that r(n)>0, or, equivalently, that R(n)>0, for every even n larger than two.

In their famous memoir [2, conjecture A], Hardy and Littlewood conjectured that when n tends to infinity, R(n) tends asymptotically to (i.e., the ratio of the two functions tends to one)

                         n                         p-1
N2(n) = 2 C       ----------------     PRODUCT     --- ,
           twin   (log n)(log n-2)   p odd prime   p-2
                                     divisor of n

where

                       p(p-2)
C     =    PRODUCT     -------  = 0.66016181584686957392...
 twin    p odd prime   (p-1)^2

is the twin primes constant. In [3], Crandall and Pomerance suggest replacing the factor

       n
----------------
(log n)(log n-2)

appearing in the formula of N2(n) by the asymptotically equivalent factor

        n-2         dx
INTEGRAL      --------------- .
        2     log(x) log(n-x)

The numerical evidence supporting this conjectured asymptotic formula is very strong. Up to 10^10, the Crandall-Pomerance formula does not deviate from R(n) by more than 40150, and up to 2^40 it does not deviate from R(n) by more than 401900.

Let us order the r(n) Goldbach partitions of n by increasing order of the smallest prime of the partition. More precisely, let us denote the two primes of the i-th Goldbach partition of n by p(n;i) and q(n;i), with p(n;i) <= q(n;i) and p(n;i) < p(n;i+1). In order to verify the Goldbach conjecture for a given n, it is sufficient to find one of its Goldbach partitions. Our strategy will be to find the minimal Goldbach partition n=p(n;1)+q(n;1), i.e., the one that uses the smallest possible prime number p(n)=p(n;1). As in [4], for every prime q we will denote by S(q) the least even number n such that p(n)=q.

News

February 1, 2005: 2·10^17 reached.
March 20, 2005: 10^17 double checked.
December 26, 2005: 3·10^17 reached.
June 5, 2006: 4·10^17 reached.
September 28, 2006: interval between 7·10^17 and 10^18 checked.
February 19, 2007: 5·10^17 reached.
February 23, 2007: interval between 6·10^17 and 7·10^17 checked.
April 25, 2007: 10^18 reached.
February 16, 2008: 11·10^17 reached.
July 14, 2008: 12·10^17 reached.
July 24, 2009: 15·10^17 reached.
December 23, 2009: 16·10^17 reached.
January 5, 2010: interval between 19·10^17 and 20·10^17 checked.
March 24, 2010: interval between 18·10^17 and 19·10^17 checked.
August 24, 2010: interval between 17·10^17 and 18·10^17 checked.
November 6, 2010: 2·10^18 reached.
May 24, 2011: 22·10^17 reached.
July 31, 2011: 25·10^17 reached.
September 13, 2011: 26·10^17 reached.
November 30, 2011: discovery of the minimal Goldbach partition 2795935116574469638=9629+P19.
January 16, 2012: discovery of the minimal Goldbach partition 3325581707333960528=9781+P19.

Computational results

We have implemented a program that finds the minimal Goldbach partition of every even integer larger than four. In order to do this efficiently, the computation intensive parts of the program were written in assembly language (for the IA32 instruction set). A very efficient cache friendly implementation of the segmented sieve of Eratosthenes was used to generate the prime numbers (see our speed comparison chart [22k, PDF] between several Intel and AMD CPUs). For each interval of 10^12 integers, we record the number of times each (small) prime is used in a minimal Goldbach partition, as well as the even integer where it was first needed. Because it takes very little extra time, we also record information about the gaps between consecutive primes, viz., how many times each gap occurs, and its first occurrence. On a 2.2GHz Athlon64 3500+ processor, testing an interval of 10^12 integers near 10^18 takes close to 75 minutes. The execution time of the program grows very slowly, like log(N), where N is the last integer of the interval being tested, and it uses an amount of memory that is roughly given by 13 sqrt(N) / log(N). The program is now running on the spare time of some computers, either under GNU/Linux or under Windows XP. We have reached 2·10^18 in November 2010, and are now extending our computations to 4·10^18.

The following table presents an overview of the current status of this massive computation. Each cell represents an interval of 10^15; its background color indicates its computational status (green for double-checked, yellow for single-checked, and red for not yet done or not yet fully checked), and its brightness indicates if counts of the primes in each of the 32 residue classes modulo 120 are available (bright) or not (not so bright) to perform an initial check of the correctness of the computation on each interval of 10^15 (prime counts for each interval of 10^12 are also available to perform correctness checks).

0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019
... (same state) ...
0080 0081 0082 0083 0084 0085 0086 0087 0088 0089 0090 0091 0092 0093 0094 0095 0096 0097 0098 0099
0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112 0113 0114 0115 0116 0117 0118 0119
0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138 0139
0140 0141 0142 0143 0144 0145 0146 0147 0148 0149 0150 0151 0152 0153 0154 0155 0156 0157 0158 0159
0160 0161 0162 0163 0164 0165 0166 0167 0168 0169 0170 0171 0172 0173 0174 0175 0176 0177 0178 0179
... (same state) ...
0320 0321 0322 0323 0324 0325 0326 0327 0328 0329 0330 0331 0332 0333 0334 0335 0336 0337 0338 0339
0340 0341 0342 0343 0344 0345 0346 0347 0348 0349 0350 0351 0352 0353 0354 0355 0356 0357 0358 0359
0360 0361 0362 0363 0364 0365 0366 0367 0368 0369 0370 0371 0372 0373 0374 0375 0376 0377 0378 0379
... (same state) ...
0960 0961 0962 0963 0964 0965 0966 0967 0968 0969 0970 0971 0972 0973 0974 0975 0976 0977 0978 0979
0980 0981 0982 0983 0984 0985 0986 0987 0988 0989 0990 0991 0992 0993 0994 0995 0996 0997 0998 0999
1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019
... (same state) ...
1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399
1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419
1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439
1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459
1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479
... (same state) ...
1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759
1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779
1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799
... (same state) ...
2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239
2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259
2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279
... (same state) ...
2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679
2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699
2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719
... (same state) ...
3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099
3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119
... (same state) ...
3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199
3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219
... (same state) ...
3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399
3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419
... (same state) ...
3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839
3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859
3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879
3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899
... (same state) ...
3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999

So far, we have tested all consecutive even numbers up to 269·10^16, and double-checked our results up to 10^17. Some (737) extra intervals of 10^15 were also tested. About 663.8 single-core CPU years were used to do all this. At least 85.67% of the work necessary to reach 4·10^18 is already done.

As far as we are aware, the previous record of computation was 4·10^14 [5]. As expected, no counter-example of the conjecture was found. In this table [24k, compressed with gzip] we present all values of S(p) we were able to compute, as well as counts of the number of times each (small) prime was used in a minimal Goldbach partition. The record-holders, i.e., numbers larger than all previous ones of the same kind, are clearly marked in the table, which extends the tables 1 and 2 of [4] and table 1 of [5]. The following figure presents a graph with the available values of S(p); the cyan dots represent data which is not known for certain to be a first occurrence.

Graph of S(p)

The values of S(p) are bounded, for our empirical data, by the functions

                         0.4                                     0.4
                  0.4   p                                 0.4   p
S_min(p) = 0.06  p     e        and    S_max(p) = 11.05  p     e     .

The two kinds of record-holders marked in the table mentioned above correspond to the values of S(p) closer to one of the two bounds. For large p the values of S(p) appear to be slowly approaching the upper bound; hence, the asymptotic growth rate of S(p) probably has a different functional form. In [6] it was stated, based on probabilistic considerations, that p should not grow faster than log^2 S(p) log log S(p). This appears to be false (for this to be true the data points should be above the black line of the figure, which is clearly not the case). Indeed, it appears that the growth rate of the black curve is too large. Thus, the estimate log^2 S(p) log log S(p) appears to be too small. It was found that for all our data p can be reasonably well approximated by 0.33(log S(p) log log S(p))^2.

Let D(x;p) be the relative frequency of occurrence of the prime p in the minimal Goldbach partition of the even numbers not larger than x. The following figure presents a graph of this function, computed for our current verification limit of the Goldbach conjecture.

Graph of D(x;p)

Besides the expected near exponential decay of D(x;p), it is interesting to observe that there exists a distinct difference of behavior in the values of this function when p is a multiple of three plus one (white dots) and when it is not (yellow dots). Cyan dots represent primes of minimal Goldbach partitions known to occur before 4·10^18, but which are outside of the interval used to make this graph.

Top 50

The following table presents the 50 largest p (least primes of a Goldbach partition) found so far, with S(p)<4·10^18, either by contributors to this project or by other discoverers (those have an * before the discoverer name). Repeated values of p were excluded from this list. A question mark indicates a first known occurrence; the true value of S(p) may be smaller than the one given.

  Rank     p     S(p)     Discoverer  
  1     9781     ? 3325 58170 73339 60528     Silvio Pardi  
  2     9629     ? 2795 93511 65744 69638     Silvio Pardi  
  3     9341     906 03057 95622 79642     John Fettig & Nahil Sobh  
  4     9203     1348 11357 94295 47486     Siegfried "Zig" Herzog  
  5     9161     887 12380 30778 37868     Siegfried "Zig" Herzog  
  6     9001     ? 3893 00922 74334 20582     Tomás Oliveira e Silva  
  7     8971     2588 35699 18831 39892     Tomás Oliveira e Silva  
  8     8951     914 47723 42519 16254     John Fettig & Nahil Sobh  
  9     8941     555 27435 15567 50822     Siegfried "Zig" Herzog  
  10     8933     258 54942 69161 49682     Siegfried "Zig" Herzog  
  11     8831     2408 33984 92355 52478     Tomás Oliveira e Silva  
  12     8821     1670 95614 81435 30128     Tomás Oliveira e Silva  
  13     8819     ? 2717 57304 70073 92768     Silvio Pardi  
  14     8779     2314 72006 67403 14852     Tomás Oliveira e Silva  
  15     8761     ? 3239 05756 38344 11028     Silvio Pardi  
  16     8737     764 63115 78502 42766     Siegfried "Zig" Herzog  
  17     8731     2390 68041 75101 89328     Tomás Oliveira e Silva  
  18     8719     1570 80604 90039 48202     Tomás Oliveira e Silva  
  19     8707     2171 73319 79842 32734     Siegfried "Zig" Herzog  
  20     8699     ? 2994 28857 66127 17268     Tomás Oliveira e Silva  
  21     8693     2046 38924 98824 24466     Tomás Oliveira e Silva  
  22     8689     1302 37600 11943 70768     Siegfried "Zig" Herzog  
  23     8681     771 06523 23704 26528     Siegfried "Zig" Herzog  
  24     8677     1928 32489 01056 96568     Tomás Oliveira e Silva  
  25     8663     1262 36426 84331 28726     Siegfried "Zig" Herzog  
  26     8647     ? 2725 05867 19612 97876     Silvio Pardi  
  27     8641     517 71184 25980 37624     Tomás Oliveira e Silva  
  28     8629     1238 28931 11321 16112     Siegfried "Zig" Herzog  
  29     8623     1211 65003 16991 77606     Tomás Oliveira e Silva  
  30     8609     1872 49629 32659 49398     Siegfried "Zig" Herzog  
  31     8597     2218 70802 03257 72974     Siegfried "Zig" Herzog  
  32     8573     1134 05983 29344 00206     Siegfried "Zig" Herzog  
  33     8563     280 46026 69116 44252     Tomás Oliveira e Silva  
  34     8543     2297 37834 24924 06154     Tomás Oliveira e Silva  
  35     8539     941 90839 15563 21548     Siegfried "Zig" Herzog  
  36     8527     1295 15748 05397 26954     Siegfried "Zig" Herzog  
  37     8521     1176 80059 43587 37918     Siegfried "Zig" Herzog  
  38     8501     255 32912 66885 55994     Siegfried "Zig" Herzog  
  39     8467     2576 43841 05051 31868     Tomás Oliveira e Silva  
  40     8461     2565 58105 68187 05782     Tomás Oliveira e Silva  
  41     8447     ? 2764 13588 98014 80338     Silvio Pardi  
  42     8443     121 00502 23040 07026     Tomás Oliveira e Silva  
  43     8431     2290 65390 58512 00938     Tomás Oliveira e Silva  
  44     8419     1730 12004 22605 42848     Tomás Oliveira e Silva  
  45     8389     935 18588 11050 28832     Siegfried "Zig" Herzog  
  46     8387     ? 3878 29701 74376 46306     Tomás Oliveira e Silva  
  47     8377     1687 29645 86686 51778     Tomás Oliveira e Silva  
  48     8363     1836 18409 81332 94216     Siegfried "Zig" Herzog  
  49     8353     ? 2885 84243 72149 51574     Silvio Pardi  
  50     8329     2224 80748 55277 68942     Siegfried "Zig" Herzog  

Contributors

The following table presents some details about the contribution of all (past and present) individuals or organizations which donated computing power to this project.

  Name     Location     Number of  
  tasks  
  Number of first (known) occurrences  
  Minimal Goldbach partitions     Prime gaps  
  Tomás Oliveira e Silva     All     1700951     320 (3)     62 (7)  
  DETUA     1227484     186 (3)     44 (5)  
  Home     339029     11 (0)     11 (2)  
  Kraken     109000     4 (0)     1 (0)  
  IEETA     25438     119 (0)     6 (0)  
  Siegfried "Zig" Herzog     PSU     1333398     80 (0)     52 (0)  
  Silvio Pardi     INFN     469735     0 (9)     0 (5)  
  Christian Kern     Germany     48999     3 (0)     2 (0)  
  John Fettig & Nahil Sobh     NCSA     33641     2 (0)     1 (0)  
  João Manuel Rodrigues     DETUA     16072     9 (0)     2 (0)  
  António Teixeira     IEETA     14995     0 (0)     0 (1)  
  Carlos Bastos     DETUA     8646     11 (0)     1 (0)  
  SIAS Group     IEETA     7752     2 (0)     0 (0)  
  Rui Arnaldo Costa     IEETA     3847     4 (0)     0 (0)  
  Armando Pinho     IEETA     3285     2 (0)     1 (0)  
  Miguel Oliveira e Silva     DETUA     2659     7 (0)     0 (0)  
  Laurent Desnoguès     France     200     0 (0)     0 (0)  
  All     All     3644180     440 (12)     121 (13)  

This work was partially supported by the National Center for Supercomputing Applications and utilized the NCSA Xeon cluster.

This research was partially supported by an allocation of advanced computing resources supported by the National Science Foundation. Part of the computations were performed on Kraken (a Cray XT5) at the National Institute for Computational Sciences (http://www.nics.tennessee.edu/).

References

[1] Richard K. Guy, Unsolved problems in number theory, third edition, Springer-Verlag, 2004.
[2] G. H. Hardy and J. E. Littlewood, Some problems of `partitio numerorum'; III: on the expression of a number as a sum of primes, Acta Mathematica, vol. 44, pp. 1-70, 1922.
[3] Richard Crandall and Carl Pomerance, Prime numbers: a computational perspective, Springer-Verlag, 2001.
[4] Matti K. Sinisalo, Checking the Goldbach conjecture up to 4·10^11, Mathematics of Computation, vol. 61, no. 204, pp. 931-934, October 1993.
[5] Jörg Richstein, Verifying the Goldbach conjecture up to 4·10^14, Mathematics of Computation, vol. 70, no. 236, pp. 1745-1749, July 2000.
[6] A. Granville, J. van de Lune, and H. J. J. te Riele, Checking the Goldbach conjecture on a vector computer, in Number Theory and Applications, R. A. Mollin (ed.), pp. 423-433, Kluwer Academic Press, 1989.

Additional links