Решето Сундарама

 В математике решето Сундарама — детерминированный алгоритм нахождения всех простых чисел до некоторого целого числа n. Разработан индийским студентом С. П. Сундарамом в 1934 году.

Описание


 Из ряда натуральных чисел от 1 до N исключаются все числа вида

i+j+2ij,
  где индексы ij пробегают все натуральные значения, для которых i+j+2ijN, а именно значения i=1,2,,2N+112 и j=i,i+1,,Ni2i+1. Затем каждое из оставшихся чисел умножается на 2 и увеличивается на 1. Полученная в результате последовательность представляет собой все нечётные простые числа в отрезке [1,2N+1].

Обоснование


 Алгоритм работает с нечётными натуральными числами большими единицы, представленными в виде 2m+1, где m является натуральным числом.
 Если число 2m+1 является составным, то оно представляется в виде произведения двух нечётных чисел больших единицы, то есть:

2m+1=(2i+1)(2j+1),
  где i и j — натуральные числа, что также равносильно соотношению:

m=2ij+i+j.
  Таким образом, если из ряда натуральных чисел исключить все числа вида 2ij+i+j, 1ij, то для каждого из оставшихся чисел m число 2m+1 обязано быть простым. И, наоборот, если число 2m+1 является простым, то число m невозможно представить в виде 2ij+i+j и, таким образом, m не будет исключено в процессе работы алгоритма.