File:Digits in largest prime found as a function of time.svg

Original file(SVG file, nominally 614 × 461 pixels, file size: 52 KB)

Commons-logo.svg This is a file from the Wikimedia Commons. The description on its description page there is shown below.
Commons is a freely licensed media file repository. You can help.
Any autoconfirmed user can overwrite this file from the same source. Please ensure that overwrites comply with the guideline.

Summary

Description
English: Plot of the number of digits in largest known prime by year, since the electronic computer. Note that the vertical scale is logarithmic. The green line is the exponential curve of best fit that was followed roughly until 1999; the red curve is a linear fit, more accurate after 1999. Run the source code below to get actual
Русский: График зависимости числа цифр в наибольшем известном простом числе по годам с момента появления первого компьютера. Вертикальная шкала логарифмическая. Зеленая линия - экспоненциальная кривая наилучшего приближения, которой примерно следовал рост числа цифр до 1999 года; красная кривая - это линейная аппроксимация, более точное приближение после 1999 г.
Date
Source Own work
Author Nicoguaro
Other versions
SVG development
InfoField
 
The SVG code is valid.
 
This plot was created with Matplotlib.
Source code
InfoField

Python code

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
from matplotlib import rcParams

rcParams['font.size'] = 14

# Data
data = np.array([[
            1952,     1952,     1957,     1961,     1961,     1963,
            1963,     1971,     1978,     1979,     1979,     1982,
            1983,     1985,     1989,     1992,     1994,     1996,
            1996,     1997,     1998,     1999,     2001,     2003,
            2004,     2005,     2005,     2006,     2008,     2013,
            2016,     2017,     2018,     2024],
       [     157,      687,      969,     1281,     1332,     2917,
            3376,     6002,     6533,     6987,    13395,    25962,
           39751,    65050,    65087,   227832,   258716,   378632,
          420921,   895932,   909526,  2098960,  4053946,  6320430,
         7235733,  7816230,  9152052,  9808358, 12978189, 17425170,
        22338618, 23249425, 24862048, 41024320]])
year = data[0, :]
primes = data[1, :]

year_of_lin_growth = 1999

plt.plot(year, primes, color="#377eb8", marker=".", drawstyle='steps-post')
plt.yscale('log')
# Fit function
def lin_fun(x, a, b):
    return a*x + b

def exp_fun(x, a, b):
    return np.exp(a*x + b)
    
## Plot the older part which follows exponential growth of digits with time
popt, pcov = curve_fit(lin_fun, year[year <= year_of_lin_growth], np.log(primes[year <= year_of_lin_growth]))
x_vals = np.linspace(np.min(year), year_of_lin_growth, 20)
y_vals = exp_fun(x_vals, *popt)
plt.plot(x_vals, y_vals, color="#1ae41c", linestyle="dashed", label='digit number doubling every {:.1f} y'.format(np.log(2)/popt[0]))
print('Exponential fit (green curve): y = exp({:.4f} * t  +  {:.4f})'.format(*popt))



year_of_lin_growth = 1998
## Plot the newer part which follows linear growth of digits with time
popt, pcov = curve_fit(lin_fun, year[year >= year_of_lin_growth], primes[year >= year_of_lin_growth])
x_vals = np.linspace(year_of_lin_growth, np.max(year), 100)
y_vals = lin_fun(x_vals, *popt)
plt.plot(x_vals, y_vals, color="#e41a1c", linestyle="dashed", label='digit number growing by $10^6$ every {:.2f} y'.format(1e6/popt[0]))
print('Linear fit (red curve): y = {:.4g} * t  +  {:.4g}'.format(*popt))

# Plot details
plt.legend(prop={'size':10})
plt.xlabel("Year")
plt.ylabel("Number of digits in largest known prime")
plt.savefig("Digits_in_largest_found_prime_as_a_function_of_time.svg", bbox_inches="tight")
plt.show()

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution
This file is licensed under the Creative Commons Attribution 4.0 International license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeDimensionsUserComment
current19:01, 26 October 2024614 × 461 (52 KB)JrandWPUpdate M136279841, discovered in 2024

The following 2 pages use this file:

Metadata