Алгоритм нахождения всех простых чисел

Бесплатный доступ

В статье уточняется классификация чисел натурального ряда, доказывается теорема о полном множестве простых чисел и дается описание линейного алгоритма нахождения всех простых чисел.

Теорема, алгоритм, простые числа

Короткий адрес: https://sciup.org/148160121

IDR: 148160121

Текст научной статьи Алгоритм нахождения всех простых чисел

В работе производится уточнение классификации чисел натурального ряда, доказательство теоремы о полном множестве простых чисел и детальное описание алгоритма нахождения всех простых чисел.

Согласно основной теореме арифметики [1], впервые точно сформулированной и доказанной в книге К.Ф. Гаусса в 1801 году, каждое натуральное число n > 1 единственным образом представимо в виде: к n =П РТ, (1)

1 = 1

где p 1 p 2 < ... рк - простые числа, а а 1 , ... , а к -некоторые натуральные числа. Представление числа n в виде (1) называется его каноническим разложением.

Несмотря на особую роль соотношения (1) в теории чисел, его практическое применение, например для решения задач информационной безопасности, подчас затруднительно из-за вычислительной сложности оперирования с мультипликативным представлением натуральных чисел.

Вместе с тем, аддитивное представление любого составного числа через простые числа дает, с одной стороны, возможность существенного ускорения вычислительных процедур (в частности, при решении задач факторизации чисел), а с другой - позволяет эффективно подойти к решению многих математических проблем, включая проблему формального и однозначного описания полного множества простых чисел.

Аддитивное представление составных чисел вида {6к ± 1}, к = 1, 2, 3, ... впервые использовано в 2005 году при реализации программы «Линейный генератор простых чисел подряд», на которое получено свидетельство о регистра- ции [3]. В 2008 году опубликована работа, в которой приводится математическое описание формирования множеств как составных, так и простых чисел [4].

Уточнение классификации чисел натурального ряда

Для доказательства теоремы о полном множестве простых чисел уточним классификацию чисел натурального ряда.

С учетом того, что в современной математике натуральные числа определены неоднозначно (на самом деле, например 2 - одновременно простое и четное, 9 - одновременно нечетное и составное, 5 - одновременно нечетное и простое), для удобства дальнейшего изложения уточним их классификацию.

Для этого весь ряд натуральных чисел разобьем на следующие последовательные циклы подмножеств:

{ пкД } = 6 к + l ,                 (2)

где к = 0, 1, 2, 3, .„; l = 1, 2, 3, 4, 5, 6.

Очевидно, что при к = 0

{ n 0,1 } = {1, 2, 3, 4, 5, 6}, далее при к = 1

{ n 1, i } = {7, 8, 9,10, 11, 12}, при к = 2

{ n2l } = {13, 14, 15, 16, 17, 18} и т.д.

Таким образом, бесконечное множество чисел натурального ряда N состоит из сложения подмножеств {nkl}, где к = 0,1, 2, 3,...; l = 1, 2, 3, 4, 5, 6.       ’ l = 6 ГО

{ N } = UU { n M}.           (3)

l = 1 к = 0

Среди l простыми числами являются 2, 3 и 5, а 4 и 6 - составными. В каждом из подмножеств { nkl } находятся и простые числа, и составные.

Определим l , при котором число в подмножестве { nkl } может быть простым.

Очевидно, что при любом к и l , равном 2,4, 6, формируется подмножество четных (двукратных) чисел натурального ряда:

{C 2 } = {2, 4, 6, 8, ...}, члены которого образуются по формуле:

c m = 2 + 2 m ,                (4)

где m = 0, 1, 2, 3, 4 ... .

Напомним, что четных чисел в натуральном ряду - половина (50%), и их определение в данной работе - классическое.

Таким образом, первый член арифметической прогрессии (4) и ее разность равны первому простому числу 2.

Далее, для любого к при l , равном 3, формируется подмножество троекратных чисел натурального ряда:

{ C 3 } = {3, 9, 15, ...}, члены которого образуются с помощью соотношения:

c m = 3 + 6 m ,               (5)

где m = 0, 1, 2, 3, 4 ... .

То есть троекратные числа образуются арифметической прогрессией с первым членом, равным простому числу 3, и разностью, равной шести. Таких чисел в составе натурального ряда -одна шестая - 16,666...%.

Очевидно, что троекратные числа входят в подмножество нечетных чисел в их классическом определении (2 n + 1), n = 0, 1, 2, 3, 4. При этом четные числа, кратные шести, согласно нашему определению (5), не являются троекратными, а относятся к четным.

Итак, по определению - подмножества четных и троекратных чисел не содержат простых чисел, кроме 2 и 3 - первых членов арифметических прогрессий (4) и (5).

Осталось рассмотреть варианты l = 1,5.

С учетом того, что 6 к + 5 = 6( к + 1) - 1, очевидно, что подмножества:

{ - S } = {6( к + 1) - 1}, к = 0, 1, 2, 3, 4, ...

{ + S } = {6 к + 1}, к = 1, 2, 3, 4, ...       (6)

содержат все простые числа, кроме 2 и 3.

В работах [4, 5, 8] числа 2 и 3 названы фундаментальными простыми числами . И для такого определения есть все основания. Именно эти два числа напрямую в (4) и (5) либо с использованием их произведения в (6) с добавлением, либо вычитанием единицы формируют все до одного числа натурального ряда, начиная с 2.

Соотношения (6), содержа все простые числа, кроме 2 и 3, также включают и составные числа вида { 6 n ± 1 } , n = 1, 2, 3, ... .

Для многих математиков, занимавшихся теорией чисел, задача - отделить друг от друга с помощью каких-либо формул, формальных процедур простые числа от составных, находящихся в множествах:

{ - S } = {6 n - 1}               (7)

{+S} = {6n +1}, n = 1, 2, 3, 4, ... , выступала на протяжении веков в качестве приоритетной задачи.

В таблице 1 для наглядности приведена бесконечная матрица последовательных циклов подмножеств { nk , l } = 6 к + 1 ; к = 0, 1, 2, 3, ...; l = 1, 2, 3, 4, 5, 6. В столбцах 1 и 5 жирным цветом выделены простые числа, большие или равные 5. В столбцах 2 и 3 в нулевой строке выделены фундаментальные простые числа 2 и 3.

Анализ таблицы 1 показывает, что в первом столбце, начиная со второй строки, располагаются простые и составные числа с избыточной единицей для деления нацело на шесть. Назовем их, в соответствии с работой [5], где впервые дано их определение, плюс простые числа (ППЧ) и плюс составные числа (ПСЧ).

Таблица 1

Последовательные циклы подмножеств

{ nk , l } = 6 к + 1

к / 1

1

2

3

4

5

6

0

1

2

3

4

5

6

1

7

8

9

10

11

12

2

13

14

15

16

17

18

3

19

20

21

22

23

24

4

25

26

27

28

29

30

5

31

32

33

34

35

36

6

37

38

39

40

41

42

7

43

44

45

46

47

48

n

6 n + 1

6 n + 2

6 n + 4

6 n + 5

6 n + 5

6 n + 6

В пятом столбце, начиная с первой строки, расположены простые и составные числа с недостающей единицей для деления нацело на шесть. Их, соответственно, определим как минус простые числа (МПЧ) и минус составные числа (МСЧ) [5].

Нетрудно видеть, что последовательность чисел в первом столбце, начиная с 7, описывается арифметической прогрессией:

  • 7,7    + 6,7 + 2 6,...,7 + ( n - 1 ) - 6; n = 1, 2, 3, ... , (8) где первый член прогрессии равен 7, а ее разность - 6.

Поскольку первый член и разность прогрессии - натуральные взаимно простые числа, то она содержит, согласно теореме Дирихле о простых числах в арифметической прогрессии [6], бесконечное количество простых.

Аналогично последовательность чисел в пятом столбце, начиная с первой строки, описывается арифметической прогрессией:

  • 5,5    + 6,5 + 2 - 6,...,5 + ( n - 1 ) - 6;n = 1, 2, 3, , (9) где первый член прогрессии равен 7, а ее разность - 6. Очевидно, что и эта прогрессия в соответствии с теоремой Дирихле содержит бесконечное количество простых, так как первый член - 5 и разность прогрессии 6 - натуральные взаимно простые числа.

Таким образом, арифметические прогрессии (8) и (9) формируют все до одного простые числа, кроме фундаментальных простых - 2 и 3.

Исходя из приведенных рассуждений, множество простых чисел есть объединение:

  • •    двухэлементного множества { 2; 3 } ;

  • •    вычитания из множества { + S } = { 6 к + 1 } ; к = 1, 2, 3, ... подмножества ПСЧ;

  • •    вычитания из множества { - S } = { 6 к - 1 } ; к = 1, 2, 3, ... подмножества МСЧ.

Итогом выступает необходимая для дальнейших рассуждений классификация чисел натурального ряда на семь групп: четные числа; трехкратные числа; фундаментальные простые числа; минус простые числа; плюс простые числа; минус составные числа; плюс составные числа. Единица при этом выступает своеобразным «геномом» натурального ряда чисел.

Для нахождения полного множества простых чисел вида { 6 к ± 1 } , к = 1, 2, 3, ... формально опишем механизм образования ПСЧ и МСЧ.

Чтобы более наглядно представить этот механизм, а затем доказать теорему о полном множестве простых чисел вида { 6 к ± 1 } , к = 1, 2, 3, ... и реализовать алгоритм нахождения полного множества простых чисел (за исключением фундаментальных), расположим числа во множествах { - S } и { + S } друг против друга последовательно, начиная с 5 и 7 (таблица 2, жирным цветом выделены простые числа).

В таблице 2 введены следующие обозначения:

p i , i = 1, 2, 3, ... - простое число из множества { 6 к - 1 } ; к = 1, 2, 3, ... с недостающей единицей для деления нацело на 6 (МПЧ);

p i , i = 1, 2, 3, ... - простое число из множества { 6 к + 1 } ; к = 1, 2, 3, ... с избыточной единицей для деления нацело на 6 (ППЧ).

Таблица 2

Последовательности чисел из множеств { - S } и { + S }

Индекс числа, i

p - ; c -

p i ; c +

1

5

7

2

11

13

3

17

19

4

23

25

5

29

31

6

35

37

7

41

43

8

47

49

9

53

55

10

59

61

11

65

67

n

6 n - 1

6 n + 1

Соответственно, ci- составное число из множества { 6 к - 1 } ; к = 1, 2, 3, ... с недостающей единицей для деления нацело на 6 (МСЧ), а с + - составное число из множества { 6 к + 1 } ; к = 1, 2, 3, ... с избыточной единицей для деления нацело на 6 (ПСЧ).

Покажем, что все МСЧ и ПСЧ (таблица 2) образуются с помощью арифметических прогрессий, где основную роль играют только простые числа и число 6 - как произведение фундаментальных простых чисел. А именно, первые члены арифметических прогрессий образуются в виде произведений простых чисел самих на себя или на простое, стоящее напротив в таблице 2. Разность же в таких прогрессиях равна произведению простого числа на 6.

Но, прежде всего, рассмотрим, к какому типу (МСЧ и ПСЧ), в зависимости от типа простых чисел (МПЧ и ППЧ), относится их произведение.

Первый случай :

p i - p i = ( 6 i - 1 ) - ( 6 i - 1 ) = 36 i 2 - 12 i + 1 =

= 6 i ( 6 i - 2 ) + 1 = 6 к + 1;           (10)

i = 1, 2, 3,     , где к = 2i(3i -1).

То есть результат произведения - плюс составное число (ПСЧ).

Второй случай :

pi- p+=( 6 i + 1)-( 6 i + 1) =

36 i 2 + 12 i + 1 = 6 к + 1;            (11)

i = 1, 2, 3, ... , где к = 2i(3i +1).

И в этом случае результат произведения -ПСЧ.

Третий случай :

pi. p + =( 6 i - 1 ) . ( 6 i + 1 ) =

= 36 i 2 - 1 = 6 k - 1;             (12)

i = 1, 2, 3, … , где k = 6i2.

В данном случае – результат произведения простых чисел – минус составное число (МСЧ).

Нетрудно показать, что при несовпадении индексов сомножителей в произведениях (10) – (12) результаты будут такими же, а также легко проверить, что произведение простого числа на составное из множеств { 6 k ± 1 } ; k = 1, 2, 3, ... , а также произведение составных из тех же множеств подчиняется указанному правилу.

Из рассмотрения представленных случаев вытекает правило знаков результат произведения любого количества простых чисел представляет собой ПСЧ, если в операции умножения участвует четное количество МПЧ, и МСЧ – в случае нечетного количества МПЧ.

А теперь рассмотрим алгоритм нахождения всех простых чисел подряд.

Алгоритм нахождения всех простых чисел

Первый шаг

Минимальное составное число (ПСЧ) в таблице 2 равно 25. Оно формируется в результате умножения МПЧ 5 на само себя. Далее прибавлением к 25 6 ∙ 5 = 30 формируется ПСЧ 55, затем к 55 прибавляется 30, получаем 85 и т.д. Таким образом, членами бесконечной арифметиче- ской прогрессии

25,25 + 5 6,25 + 5 6 2,25 + + 5 6 3,...,25 + 5 6 n ,...,

где n = 0, 1, 2, 3, ..., выступает множество ПСЧ, первый член которого равен 5 ∙ 5 = 25, а разность равна 5 ∙ 6 = 30.

Важно отметить, что для получения всего множества ПСЧ как результата последовательного умножения 5 на нижестоящие числа второго столбца – 11, 17, 23 и т.д. нет никакой необходимости производить саму операцию умножения. Это связано с тем, что из-за цикличности чисел первого столбца в таблице 2, обусловленной последовательным получением следую- щего числа путем сложения предыдущего с числом 6, все соответствующие ПСЧ образуются во втором столбце как члены арифметической прогрессии (13).

Итак, необходимость перемножения первого простого числа 5 на все остальные числа во втором столбце заменяется аддитивной арифмети- ческой прогрессией:

I C + ) = ^ C + U 5 5 + 5 6 n ;

5              p 1

n = 0, 1, 2, 3, ... .

Второй шаг

Вычитаем из третьего столбца все ПСЧ, образованные арифметической прогрессией (14), и производим переиндексацию чисел, оставшихся в третьем столбце (таблица 3).

Третий шаг

Аналогично первому шагу находим следующее минимальное составное число. Оно равно произведению 5 ∙ 7 = 35 и является по определению минус составным числом (МСЧ). Следующее МСЧ для простого числа 5 можно было бы найти путем умножения 5 ∙ 13 = 65, затем следующее 5 ∙ 19 = 95, но мы не будем этого делать, помня о свойстве аддитивной арифметической прогрессии:

(C "1 = ( C - U 5 7 + 5 6 n ;

5             p 1

n = 0, 1, 2, 3, ... .

Таблица 3

Последовательности чисел из множеств { - S } и { + S } после первой переиндексации

Индекс числа, i

p " ; c i

+. + p i ; c i

1

5

7

2

11

13

3

17

19

4

23

31

5

29

37

6

35

43

7

41

49

8

47

61

9

53

67

10

59

73

11

65

79

n

6 n – 1

6 n + 1

Четвертый шаг

Вычитаем из второго столбца все МСЧ, образованные арифметической прогрессией (15), и производим вторую переиндексацию чисел (таблица 4).

Пятый шаг

Следующее минимальное составное число

(МСЧ) 7 ∙ 5 совпадает с 5 ∙ 7. Однако, выступая первым членом прогрессии, формирует ее с дру- гой разностью 7 ∙ 6 = 42:

{ C " } = ( C -J = 7 5 + 7 6 n ;

i 7 >  I P 1 J

n = 0, 1, 2, 3, ... .

Таблица 4

Последовательности чисел из множеств { - S } и {+ S } после второй переиндексации

Индекс числа, i

p ; c i

p + ; c i

1

5

7

2

11

13

3

17

19

4

23

31

5

29

37

6

41

43

7

47

49

8

53

61

9

59

67

10

71

73

11

77

79

12

83

91

13

89

97

n

6 n - 1

6 n + 1

Учет эффекта «пересечения» различных арифметических прогрессий, формирующих составные числа из множеств {6 n ± 1}, n = 1, 2, 3, ... , играет важную роль при решении задач интервальной оценки распределения простых чисел. Описание этого эффекта дано в работе [9, 10].

Шестой шаг

Вычитаем из второго столбца все МСЧ, образованные арифметической прогрессией (16), и производим третью переиндексацию чисел (таблица 5).

Таблица 5

Последовательности чисел из множеств { - S } и { + S } после третьей переиндексации

Индекс числа, i

— .    —

Pi ; c

pt ; c i

1

5

7

2

11

13

3

17

19

4

23

31

5

29

37

6

41

43

7

47

49

8

53

61

9

59

67

10

71

73

11

83

79

12

89

91

n

6 n - 1

6 n + 1

Седьмой шаг

Наконец, для первой строки и третьего столб- ца простых чисел находим следующее составное число (ПСЧ), равное 7 • 7 = 49 и соответствующую арифметическую прогрессию:

= С + = 7 7 + 7 6 n ; n = 0, 1, 2, 3, ... .

Восьмой шаг

Вычитаем из третьего столбца ПСЧ, образованные арифметической прогрессией (17), и производим четвертую переиндексацию чисел (таблица 6).

Важно отметить, что описанное последовательное нахождение составных чисел (МСЧ и ПСЧ) начинается с минимального ПСЧ, равного 25, а затем их «размножение» с помощью арифметических прогрессий, формирующих { c p _}, < С - ], < С + ] и ] С + ], дает возможность нахож-I Pi ) I Pi ! I Pi ) дения всех составных чисел подряд вида {6 к ± 1}; к = 1, 2, 3, ... без каких-либо пропусков. Также без пропусков находятся все простые числа вида {6 к ± 1}; к = 1, 2, 3, ... .

Таблица 6 Последовательности чисел из множеств

{ S } и { + S } после четвертой переиндексации

Индекс числа, i

—   —

p; c i

p + ; c +

1

5

7

2

11

13

3

17

19

4

23

31

5

29

37

6

41

43

7

47

61

8

53

67

9

59

73

10

71

79

11

83

97

12

89

103

n

6 n - 1

6 n + 1

Итак, в результате восьми шагов в таблице 6 до индекса i = 12 остались только простые числа. Повторяя последовательно восьмишаговую процедуру «фильтрации» простых чисел для других строк таблицы 6 путем удаления из множеств { S } и { + S } составных чисел (МСЧ и ПСЧ), образуемых соответствующими арифметическими прогрессиями, можно найти все до одного простые числа в любом интервале от 1 до n . При этом однозначно определяется индекс любого ППЧ и МПЧ в указанном интервале.

Столь детальное описание алгоритма нахождения простых чисел сделано и для того, чтобы показать, что он в корне отличается от известных алгоритмов - решета Эратосфена и его модификаций (решета Сундарма и т.п.), а также решета Аткина и других современных алгоритмов.

В отличие от предыдущих, в данном алгоритме используются уравнения, описывающие механизм формирования составных чисел вида {6 к ± 1}, к = 1, 2, 3, ... и дающие возможность однозначно выделить все простые числа из множеств {6 к ± 1}, к = 1, 2, 3, ... [4, 8].

Покажем, что с помощью приведенного алгоритма находится полное множество простых чисел, за исключением фундаментальных простых чисел. Для этого докажем специальную теорему

Теорема о полном множестве простых чисел вида { 6 к ± 1 } , к = 1, 2, 3, ... .

Полное множество простых чисел вида { 6 к + 1 } , к = 1, 2, 3, ... формируется путем вычитания из множества {+ S } подмножества чисел, определяемых с помощью уравнений:

cp-- = P- • P- + P- •6 m cp+ = pp • pp + pp • 6m;          (18)

Pi i i it m = 0, 1, 2, 3, ... ; i = 1, 2, 3, ... , а полное множество простых чисел вида {6к -1}, к = 1, 2, 3, ... - путем вычитания из множества {-S} подмножества чисел, вычисляемых из соотношений:

c -- = Pi • Pt + Pi •6 m pi c-+ = pp • p- + pp • 6m;           (19)

Pi i I i I i m = 0, 1, 2, 3,    ; i = 1, 2, 3,    .

Для доказательства рассмотрим таблицу 2, в которой числа из множеств { - S } и { p S } расположены друг против друга с периодом 6 в виде двух бесконечных столбцов, начиная с минимальных - 5 и 7. Обозначим числа в указанных множествах, соответственно, как q ~ и qp , i = 1, 2, 3, ... .

Очевидно, применительно к обозначениям в виде множеств, имеем:

{ q i } = { p? } и { c- } ;

{ q+H р-} и { c - 4          (20)

Минимальное составное число вида {6 к p 1}; к = 1, 2, 3, ... (т.е. минимальное ПСЧ) равно произведению минимального простого числа q - = 5 само на себя, т.е. q - - q - = c q . q = 25. Перемножая q - последовательно на все нижестоящие числа (таблица 2) во множестве { - S } , получаем последовательно без пропусков бесконечный ряд ПСЧ в виде:

{C-<}={q- • q-; q- • q -; q- • q 3;-.; q- • ql;-.}; (21) q1 ql при l ^ да.

Так как множество {-S} включает все простые и составные числа вида {6к -1}, i = 1, 2, 3, ... , очевидно, что путем последова- тельных умножений, отраженных в (21), в итоге получаем все до одного ПСЧ (см. правило зна- ков), куда входит в качестве сомножителя q1- .

Вычитая из множества { p S } подмножество { C - qq - } , при l > да , получаем бесконечное подмножество + S :

I q 1)

p S { ' S } \ C:     , при l ^да ,    (22)

q1 J i ) I q • qi ;       1                  ’ состоящее из всех ППЧ и ПСЧ, за исключени- ем тех, куда в качестве сомножителя входит q1- .

На следующем шаге доказательства сформируем подмножество p S :

( q 2 )

pS - г = ) S - r \) Cp (, при /—>да,(23)

q 2 J            q1 J        q2 • qi ) р               ’ где

{Cp? q-} = { q - • q -; q -• q 3";...; q -• ql;..};

при l ^ да .

Очевидно, что подмножество { S q -} также состоит из бесконечного количества ППЧ и ПСЧ, куда в виде сомножителей не входят q 1 - и q 2 - .

Продолжая до бесконечности операции вычитания типа (22) и (23), получим подмножество:

fp S - U{p S } \f+ C - 3\f c p 3\...\f c +- - }..., (25) ( q да; q да) I J ) q 1 q l J ) q 2 q l ,             ) qk■ q l J

(где l ^ да , к ^ да ), состоящее из всех ППЧ и ПСЧ, за исключением тех, куда в виде сомножителей входят числа из подмножества { - S } .

В общем случае:

{p S - } = {p s. - } \ { q i- q - ; q^q^.;q ^- q - ;4; (26)

( Чк )      ( Чк -1 7

l ^ да.

Как нетрудно заметить, члены бесконечных подмножеств ПСЧ {C+_ - } в соотношениях (21), (24), (25) находятся иЗ уравнений арифметических прогрессий:

c - - = q - q ," + q - 6 m ; m = 0,1, 2,3. (27) q i

Таким образом, мультипликативные соотношения в (21), (24), (26) замещаются на аддитивные в (27).

Нужно также указать, что при использовании в (27) не только простых pi-, i = 1, 2, 3, ... , но и составных, формируемых от простых, образуются «дубли» ПСЧ, однако это никак не сказывается на итоговом соотношении (25), предполагающем исключение на каждом шаге всех состав- ных, включая «дубли», образуемых соответствующими qk, к = 1, 2, 3, ... .

Чтобы получить полное множество всех плюс простых чисел (ППЧ), необходимо далее из множества (25) - {+ S„—} исключить все ПСЧ, q ГО образуемые числами из бесконечного множества {+ S} вида {6к +1}; к = 1, 2, 3, .... Минимальное составное число вида {6к +1}; к = 1, 2, 3, ..., образуемое числами из множества {+ S} вида {6к +1}; к = 1, 2, 3, ... равно минимальному простому q1 = 7, умноженному само на себя, q1 " q1 = cq+.qt = 49-

Перемножая q+ последовательно на все нижестоящие числа (см. таблицу 2) из множества {+ S}, так же как и в (21), последовательно, без пропусков получим бесконечный ряд ПСЧ в виде:

{ C + + »+ } = { q+ q + ; q + q + ; q + q 3 + ;•••; q + q l ;••• } ; (28)

\ q1 ql ) X                                                                           / при l ^ ro.

Поскольку множество { + S } включает по определению все простые и составные числа вида{6 к + 1}; к = 1, 2, 3, ... , получаем в (28) множество всех до одного ПСЧ, куда в виде сомножителя входит q + .

Вычитая из множества

подмноже-

/               X                                                  х q ro / ство {C ++ +}, при l ^ ro, получим бесконечное подмноясесТво ( + S —}, состоящее из всех ППЧ и ПСЧ, за исключением тех, куда в виде сомножителей входят все числа из {S} и q+ :

(+ S _ Д = Р S Д ( с + Д, при l ^ro. (29) I q ,; q 1 ) I q «J I q qi ) r                          v '

Продолжая далее логику доказательства, реализованную в (21) - (26) применительно к системе последовательных вычитаний из множества { + S } подмножеств { C q^q _}; к = 1, 2, 3, ... ; l = 1, 2, 3, ..., в конечном итоге получим:

(+ S _ Д = [{ + S l\{+ S _}\(+ S _}\...\(+ S _)... \

( q го ; q „ j   L'    ' I   Ml    q 2) I qt) _

{ + S + } \ { + S + } \...\ { + S + } ...;        (30)

(     91)    (     q 2 J            (     9r )

при к м ro .

Поскольку из множества р S } вычтены все до одного ПСЧ вида {6к +1}; к = 1, 2, 3, ... , то есть все числа, образованные всеми возможны- ми произведениями, очевидно, что

{ + S } = { p + } ; i = 1, 2, 3, ... ,       (31)

q ГО ; q ГО ) V )

где в правой части { p i +} ; i = 1, 2, 3, ... есть полное множество плюс простых чисел (ППЧ) вида {6 к + 1}; к = 1, 2, 3,    .

Нетрудно видеть, что ПСЧ, входящие в бесконечные подмножества J C+ I в соотношени-( qr ql j ях (28) - (29), находятся из уравнений арифметических прогрессий:

c + + = q l q l + q i 6 m ; m - 0,1,2,3,.... (32)

И также соответствующие «дубли» составных чисел (ПСЧ), появляющиеся из-за использования в (32) не только простых, но и составных чисел, очевидно, не влияют на конечный результат в виде (31).

По аналогии с процедурой доказательства полноты множества ППЧ { p f } ; i = 1, 2, 3, ... , использующей соотношения (21) - (32), для нахождения полного множества МПЧ { S q ГО - q ГО } = { p i } ; i = 1, 2, 3, ... сформируем минимальное составное число вида {6 к 1}; к - 1, 2, 3, ... .

Очевидно, используя правило знаков, минимальное МСЧ равно произведению минимального простого числа q = 5 на число, стоящее напротив в таблице 2, т.е. на q + = 7, при этом q ? q + = c - - . q + = 35.

Перемножая q 1 последовательно на все нижестоящие числа (см. таблицу 2) из множества { S } , получаем последовательно без пропусков бесконечный ряд МСЧ в виде:

— — + — + — + — + о —о+ I = { q1 ■ q1 ; q1 ■ q2; q1 ■ q3 ;...; q1 ■ ql ;...}; (33) q1 ql J X / при l ^ ro.

Так как множество {+ S} включает все простые и составные числа вида {6к +1}, к - 1, 2, 3, . , то путем последовательных умножений, отраженных в (33), получаем все до одного МСЧ (см. правило знаков), куда в виде сомно- жителя входит q1 .

Вычитая из множества { S } подмножество { C ,--^l } , при l ^ro , получаем бесконечное подмножество S :

{ Sq r } = { S } \ { C q ^ г } , при l ^ ГО ,     (34)

состоящее из всех МПЧ и МСЧ, за исключени- ем тех, куда в качестве сомножителя входит q—.

Продолжая до бесконечности операции вычитания типа (34), получим подмножество:

(- S S }\( с" 3\( с +Ь-\( С" Л-, (35)

( q „"] I ) l^qrq/ +J l q2-- qi+)        V^itiiJ где l ^ro, к ^ro, состоящее из всех МПЧ и МСЧ, за исключением тех, куда в виде сомножителей входят числа из подмножества {— S}.

Члены бесконечных подмножеств ПСЧ { C + } в соотношениях (33) - (35) находятся из уравнений арифметических прогрессий (19):

c - = q, • q + + q, •6m; m - 0, 1,2,3,., (36) qi при этом мультипликативные соотношения замещаются на аддитивные.

Чтобы получить множество всех минус простых чисел (МПЧ), необходимо далее из множества (35) - { - S q - } исключить все МСЧ, образуемые числами из бесконечного множества { ' S } вида {6 к + 1}; к = 1, 2, 3, .

Минимальное МСЧ вида {6 к - 1}; к = 1, 2, 3, ... , образуемое числами из множества { + S } вида {6 к + 1}; к = 1, 2, 3, ... , равно, как и в предыдущем случае, q + q - = c . _ q = 35.

Перемножая , 1 последовательно на все нижестоящие числа (см. таблицу 2) из множества {- S } , также без пропусков получим бесконечный ряд МСЧ в виде:

{ +    - . +    - . +    —

9 1 9 1 ; 9 1 9 2 ; 9 1 9 3

9 r 9 l ;...};     (37)

при l ^ да .

Так как { + S } включает по определению все простые и составные числа вида {6 к + 1};

к = 1, 2, 3, ... , получаем в (37) множество всех до одного МСЧ , куда входит 91+ .

Вычитая из множества {- S - } подмножество { С - 9 _ } , при l ^ - , получим бесконечное подмножество <- S + >, состоящее из всех МПЧ и

I 9 - ; 9 1 )

МСЧ, за исключением тех, куда в виде сомножителей входят все числа из { - S } и , + :

(- S- + +М- S - Д\( С - Л,    (38)

9-; 9 -; 91                 9-; 9 -            91 • 9i при l ^ -.

Продолжая далее последовательные вычитания из множества < - S + подмножества ) С - L 9 - ; 9                                          :^

к = 2, 3, ... , I = 2, 3, ... в конечном итоге полу- чим:

) = Г{- s }\(- s )\(- s )\...\Р s 1.1 \ ) L1 1 t 9 1 J t 9 2 J          l 9к ) J

P S +1\( S + |\...\f S + L- , при к ^-. (39) ( 9 1 ) ( 9 2 J ( 9к )

Очевидно, что

{ - S -J = { P - } , i = 1, 2, 3, .   (40)

9 - ; 9 - J      \ J

МСЧ, входящие в бесконечные подмножества { C ^. 9i - } в соотношениях (37) - (39), находятся из уравнений арифметических прогрессий:

c + = 9 + • 9= + 9 + • 6m, m = 0, 1, 2, 3, ... , (41) qi ii i и в этом случае «дубли» МСЧ, появляющиеся из-за использования в (41) не только простых, но и составных чисел, не влияют на конечный результат в виде (40).

Таким образом, теорема о полном множестве простых чисел вида { 6 к ± 1 } , к = 1, 2, 3, ... доказана.

Используя результаты доказательства теоремы, восьмишаговый циклический алгоритм на- хождения всех простых чисел подряд, который мы описали, можно существенно упростить, используя формальное представление механизма образования составных чисел вида {6к ± 1}, к = 1, 2, 3, ... в виде (18) - (19).

Основными особенностями предлагаемого ниже алгоритма являются:

  • •    простота реализации по сравнению с другими алгоритмами нахождения простых чисел;

  • •    линейная зависимость времени расчета от числа n натурального ряда;

  • •    возможность быстрого вычисления всех простых чисел подряд из множеств {6 к ± 1}, к = 1, 2, 3,    .

Суть алгоритма заключается в реализации следующих пяти этапов.

  • 1.    Определяется натуральное число n , применительно к которому необходимо вычислить все простые числа, его не превосходящие.

  • 2.    Вычисляются два ряда проиндексированных натуральных чисел q i и q + , i = 1, 2, 3, ... из множеств {6 к - 1} и {6 к + 1}, к = 1, 2, 3, ... , не превосходящих n .

  • 3.    Находятся все решения следующих уравнений, не превышающие n .

  • 4.    Из множества {6 к - 1}, к = 1, 2, 3, .„ вычитается объединение множеств { с ,-- } U { С - + } , i = 1, 2, 3, .„ , а из множества {6 к + 1}, к = 1, 2, 3, .„ - объединение множеств { С , ;} ^ { Cq + + } , i = = 1,2,3, _ .                         "       "

  • 5.    Полученные в результате операций вычи-

  • тания простые числа, не превышающие n, располагаются в порядке возрастания, и каждому простому присваивается соответствующий индекс j = 1, 2, 3, _ .

^ = 97- 979 97-6 m cq+ = q,+ - qiq qt-6 m c- = 97- qi9 97-6m cit = 97- 97 9 97-6m,           (42)

qi m = 0, 1, 2, 3, _ ; i = 1, 2, 3, _ .

Отметим, что использование 9i вместо pi в соотношениях (42) значительно:

  • •    ускоряет (и упрощает) процедуру нахождения простых чисел из-за отсутствия операций промежуточного вычитания и переиндексации чисел, использованных в описанном восьмиша-

  • говом циклическом алгоритме;
  • •    упрощает различные оценочные операции работы алгоритма в связи с тем, что разница между стоящими друг против друга q i и , 7 всегда равна 2.

При этом итоговые результаты работы по нахождению всех простых чисел вида {6 к ± 1}, к =

= 1, 2, 3, … в интервале (0, n ) остаются теми же, что и при применении детализированного восьмишагового алгоритма.

Безусловно, возникают дополнительные вычисления, связанные с нахождени-

При n >> 1

q

n

i 9 ( m 2 e

•h 2 1 • '-----2

2 n

-

3 (

m 2 E q ,

) . (47)

ем вторичных, третичных и т.д. «пересечений», формирующихся в уравнениях (24). Например, все ПСЧ, формируемые арифметической прогрессией { С 5 } = 5 5 + 5 6 m ; m = = 0, 1, 2, … , включают все ПСЧ от арифметических прогрессий { С 255 } = 25 25 + 25 6 m ; { С + 25 } = 625 625 + 625 6 m ; m = 0, 1, 2, и т.д.

Однако преимущества использования уравнений (42) вместо (18) и (19) при вычислении

Для q образуется только одно плюс составное число, равное:

Г = q 2 . max       max

Оно находится из уравнения (47) при m = 0:

q max

1 'E- 1

2 n

простых чисел в смысле скорости и простоты

расчетов существенно превышает те издержки, которые возникают в связи с необходимостью

учета дополнительных вторичных, третичных и т.д. «пересечений».

В таблице 7 приведен пример работы алгоритма нахождения простых чисел до 1000.

Индекс плюс и минус простых чисел указан курсивом в центральном столбце таблицы. Правый от центрального столбец содержит ППЧ (выделены жирным шрифтом) и ПСЧ. Левый от центрального столбец содержит МПЧ (выделены жирным шрифтом) и МСЧ. Все остальные столбцы справа содержат ПСЧ вида {6 к + 1}, k = 1, 2, 3, … , образуемые первыми двумя уравнениями (42) и не превышающие 1000.

Соответственно, остальные столбцы слева содержат МСЧ вида {6 к - 1}, к = 1, 2, 3, ... , образуемые последними двумя уравнениями (42) и не превышающие 1000. Нижние индексы составных чисел равны первым членам арифметических прогрессий (42).

Оценим зависимость qi  от n. Для начала рассмотрим первые два уравmнax ения (42).

Очевидна справедливость следующего ра-

венства:

q 2 + 6 q , m + 6 q , E q - n = 0;

i = 1, 2, 3, … ; m = 0, 1, 2, 3, … ,

где q , = q , - или q , в зависимости от выбора уравнения; E q - коэффициент, отражающий разность между n и последним членом арифметиче-

ских прогрессий, описываемых первыми двумя уравнениями (42).

По определению:

0 E 1.               (44)

Уравнение (43) имеет единственный положительный корень:

q , = - 3 ( m 2 E q ) 2 9( ( m 2 E q ) 2 n ,     (45)

или

- 3 ( m 2 E ) .

При больших n

q ~v- max

Из (50) и (44) следует:

Учитывая

отсюда

q max

max

n -

max

= 6I max

q max

- * 3 Eq-

(49)

3 E q .

(50)

< v n .

(51)

± 1,

(52)

+ 1

.

(53)

Применительно к рассмотренному примеру n = 1000:

т.е.

28,6 q 31,6, max

q, = 31;     = 5, max          max что соответствует правой части таблицы 7 для ПСЧ.

Для левой части, оценивая q , - , можно использовать и третье, и четвертое уmрaxавнения (42).

Из третьего уравнения (42) следует

q , ( q , 2 2 ) 2 6 q , m 2 6 q , e

qi

= 1, 2, 3, … ; m = 0, 1, 2, 3, … . Отсюда

- n = 0;

q

По аналогии с предыдущим рассмотрением, применительно к МСЧ

q,  =- 12 3e - max                  q

n

( 1 2 3 E ) 2

1 2 3----- q ^, (56)

n

также при n >>  1:

q - » V n - 1

max

Отсюда, используя (44),

Учитывая

имеем:

q

1, max

q,   = 6 i ax -1, max max

n max

.

Таблица 7

Минус составные числа до 1000

q i -

8

S

qi +

Плюс составные числа до 1000

-

31 29

-

29 31

-

25 23

-

23 25

- C 19 17

-

17 19

- C 13 11

-

11 13

C 7 - 5

C 5 - 7

+ 5 5

+

7 7

+

11 11

+

13 13

+

17 17

+

19 19

+

23 23

+ 25 25

+

29 29

+

31 31

899

899

575

575

323

323

143

143

35

35

5

1

7

25

49

121

169

289

361

529

625

841

961

725

713

437

425

221

209

77

65

11

2

13

55

91

187

247

391

475

667

775

875

851

551

527

299

275

119

95

17

3

19

85

133

253

325

493

589

805

925

989

665

629

377

341

161

125

23

4

25

115

175

319

403

595

703

943

779

731

455

407

203

155

29

5

31

145

217

385

481

697

817

893

833

533

473

245

185

35

6

37

175

259

451

559

799

931

935

611

539

287

215

41

7

43

205

301

517

637

901

689

605

329

245

47

8

49

235

343

583

715

767

671

371

275

53

9

55

265

385

649

793

845

737

413

305

59

10

61

295

427

715

871

923

803

455

335

65

11

67

325

469

781

949

869

497

365

71

12

73

355

511

847

935

539

395

77

13

79

385

553

913

581

425

83

14

85

415

595

623

455

89

15

91

445

637

665

485

95

16

97

475

679

707

515

101

17

103

505

721

749

545

107

18

109

535

763

791

575

113

19

115

565

805

833

605

119

20

121

595

847

875

635

125

21

127

625

889

917

665

131

22

133

655

931

959

695

137

23

139

685

973

725

143

24

145

715

755

149

25

151

745

785

155

26

157

775

815

161

27

163

805

845

167

28

169

835

875

173

29

175

865

905

179

30

181

895

935

185

31

187

925

965

191

32

193

955

995

197

33

199

985

203

34

205

209

35

211

215

36

217

221

37

223

227

38

229

233

39

235

239

40

241

971

162

973

977

163

979

983

164

985

989

165

991

995

166

997

Пример работы алгоритма нахождения простых чисел до 1000

Для нашего примера n = 1000:

31,6-4 < q- < 31,6 -1, imax т.е.

q- = 29, a q = 31, imax = 5. i max                  i max             max

И это соответствует левой части таблицы 7 для МСЧ.

Обобщая полученные результаты зависимости qi от n , имеем следующую простую оценку - "M x аксимальное число q + вида { 6 k + 1 } , k = 1, 2, 3, … , участвующее в алгоритме формирования составных чисел (МСЧ и ПСЧ), равно целой части n :

C*[ A ]'(60)

Соответственно, q,- = Г Tn I- 2.(61)

max

При этом индекс imax равен i "ax =[ ^ ] .(62)

В заключение отметим, что доказательство теоремы о полном множестве простых чисел вида {6 k ± 1}, k = 1, 2, 3, ... и формальное описание механизма формирования составных чисел в виде аддитивных прогрессий [4, 8] дало возможность предложить и реализовать простой и эффективный алгоритм нахождения всех простых чисел подряд, что выступает фундаментальным достижением в области математики. Представляется, что дальнейшее использование нового математического аппарата, описывающего формирование простых и составных чисел вида {6 k ± 1}, k = 1, 2, 3, ... , приведет в ближайшей перспективе к серьезным изменениям и открытиям в теории чисел и прикладных областях, связанных с применением простых чисел.

Список литературы Алгоритм нахождения всех простых чисел

  • Виноградов, И.М. Основы теории чисел. -М.: Наука, 1972.
  • Начала Евклида/перевод с греческого и комментарии Д.Д. Мордухай-Болтовского при редакционном участии И.Н. Веселовского и М.Я. Выгодского. -М.-Л.: ГТТИ, 1949-51.
  • Хренов, В.П. Свидетельство № 2005613012 от 22 сентября 2005 г. о регистрации программы «Линейный генератор простых чисел подряд».
  • Минаев, В.А., Хренов, В.П. Фундаментальная закономерность формирования простых чисел и информационная безопасность//Безопасность информационных технологий. -2008. -№ 3. -С. 20-32.
  • Каленикова, Н.А., Минаев, В.А., Хренов, В.П. Улучшение метода Ферма: новый алгоритм факторизации//Безопасность информационных технологий. -2010. -№ 2. -С. 76-79.
  • Дирихле (Лежен), П.Г. Лекции по теории чисел. -М.-Л.: ОНТИ, 1936.
  • Галочкин, А.И., Нестеренко, Ю.В., Шидловский, А.Б. Введение в теорию чисел. -М.: МГУ, 1984.
  • Minaev, V.A., Khrenov, V.P., Zernov, V.A. Discovery of Natural Number Laws and Some Applied Aspects of Discovery. Recent Advanced in Management and Information Security/1st International Conference on Management of Technologies & Information Security, 21st -24th January, 2010. -New Delhi, Shree Publishers & Distributors, 2010.
  • Minaev, V.A. Interval estimations of the prime numbers amount/The 8th Congress of the International Society for Analysis, its Applications, and Computation, 22-27 August 2011/Peoples Friendship University of Russia, Moscow.
  • Минаев, В.А. Интервальная оценка количества простых чисел/Тезисы докладов Международной конференции «Образование, наука и экономика в вузах. Интеграция в международное образовательное пространство». 26-30 сентября, 2011, Ереван.
Еще
Статья научная