Алгебра и пакет Mathematica 5



Число простых чисел, не превосходящих х (функция PrimePi[x])



Согласитесь, изучив все тонкости искусства составления таблиц простых чисел, было бы нелогично пренебречь искусством составления таблиц на основе уже созданных. Почему бы, имея полную (значит, бесконечную!) таблицу простых чисел, не поинтересоваться, сколько чисел в этой таблице не превосходят данного числа х. Иными словами, определить число простых чисел, не превосходящих х. Это число в учебниках теории чисел обозначается л(х). Функция п(х) привлекала внимание уже античных математиков. Евклид, например, установил, что она неограниченно возрастает с ростом аргумента. Изучением этой функции занимались почти все великие математики Прошлого, ее исследовали Лежандр, Чебышев, Риман, Адамар, Валле-Пуссен, Чудаков, Виноградов, Коробов, Литлвуд, Сельберг, Эрдеш, Ингам, Прахар, Пан Чен-тонг, Чен-ин-рун, Титчмарш, Мейссель, Рогель, Чипола, Мертенс, Гаусс, Бертран, Вейль, Линник, Бомбьери...

В системе Mathematica эта функция называется PrimePi. Система Mathematica может вычислить ее значения практически в мгновение ока... Правда, не все.

В документации, правда, верхний предел указан примерно равным 260, а на самом деле...

Тем не менее не следует воспринимать ситуацию уж очень пессимистически. Давайте, например, построим графики функций и на промежутке (0, 100).

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

Теперь даже в нуле неприятностей нет. Но вот вопрос: будет ли заметна ступенчатость на больших интервалах? На самом деле ступенчатость незаметна уже на интервале (0, 10000).

Но какая же функция приближает лучше: или Li(x)? Конечно, Li(x).

Если же построить график на интервале (0, 10000), то графики и Li(x) практически сольются.

Раз уж речь зашла о приближении k(х), давайте построим графики разности функции и известных ее аппроксимаций. В качестве первой (самой простой) аппроксимирующей функции выберем (приближение Чебышева и Лежандра), в качестве второй — 1л(х) (приближение Гаусса), а в качестве третьей — R(x) (приближение Римана). Сначала определим функцию R(x).

Riemann[x_]:= 
Last[Block[{R=LogIntegral[x],y=LogIntegral[Sqrt[x]]/2,n=2},
{While[y>0.000000001,{R=R-y; n=n+l;y=LogIntegral[х^(1/n)]/n}
],R} ]]

Теперь можем построить нужные нам графики.

Как видим, из трех наилучшим является приближение Римана. И еще одно замечание. Как мы видели, график функции π(х) выглядит вполне гладко, хотя на самом деле он является ступенчатым. Более того, существуют сколь угодно длинные интервалы, на которых он горизонтален. Однако длина таких интервалов незначительна по сравнению с их расстоянием до начала координат. Это интервалы, на которых функция π(x) не изменяется. Иными словами, это интервалы, на которых нет простых чисел. Кстати, а как сосчитать количество простых чисел на интервале (а, b] ?