FAQ по форумуНовые сообщения на Форуме
  • Страница 1 из 1
  • 1
Гипотеза p ± N и примориалы как фильтры простых.
Dytr01Дата: Вс, 05.10.25, 20:54 | Сообщение # 1
Ученик
Сообщений: 9
Награды: 4
Совы: 0
Немного скопипастю сама себя :) ... с другого форума.

Наткнулась на любопытное исследование: https://p-plus-minus-n-research.netlify.app - автор изучает, как примориалы могут влиять на вероятность появления простых чисел в выражениях вида:

p +/- N

где p - простое число, а N - примориал (т.е. произведение всех простых чисел до некоторого предела: 2# = 2, 3# = 6, 5# = 30, 7# = 210, и т.д.).

Суть гипотезы: Идея в том, что может существовать "оптимальный" примориал (N0), при котором вероятность, что (p + N0) или (p - N0) окажется простым, максимальна. То есть примориал здесь выступает как своеобразный "фильтр" составных чисел, устраняя кандидатов, делящихся на малые простые.

Что показывает эксперимент:

Автор прогнал тесты для p до примерно 30 000 000 и разных примориалов N:

* Максимальная плотность простых-кандидатов достигается при N = 29# - примерно в 6.28 раза выше, чем ожидаемая стандартная плотность простых;
* Но максимальная эффективность (то есть доля тех p, для которых p +/- N реально простые) наблюдается при N = 19#;
* Дальше рост N дает рост плотности, но при этом эффективность начинает снижаться - что выглядит как некий компромисс.

Почему это может работать:

Если N = q#, то для всех малых простых r <= q выполняется:

p +/- N ≡ p (mod r)

То есть сдвиг на примориал не меняет остатки по малым модулям - и, следовательно, отсекает множество составных кандидатов. Это как "модульный фильтр", который дает больше шансов попасть на простые.

Инструмент:

На сайте есть интерактивный инструмент на JS, где можно задать диапазон, выбрать примориал и посмотреть, сколько из p +/- N оказываются простыми. Работает в браузере, можно сразу поиграться... НО! Я бы этому особо не доверяла, так как JS и большие числа - вещи малосовместимые ;)

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

Хорошая тема для проверки на больших данных или для поиска строгого объяснения (если оно вообще есть).

Что думаете? Может, кто-то уже встречал похожие конструкции или имеет опыт с подобными "фильтрами простых"? Буду рада вашим мнениям, проверкам и контрпримерам.


Сообщение отредактировал Dytr01 - Вс, 05.10.25, 21:01
 
БраусовДата: Вс, 12.10.25, 23:47 | Сообщение # 2
Знаток
Сообщений: 33
Награды: 12
Совы: 0
Цитата Dytr01 ()
Может, кто-то уже встречал похожие конструкции или имеет опыт с подобными "фильтрами простых"?
Идея использовать примориалы для построения допустимых кортежей лежит, например,  в основе:
1) Работы Яна Чжана (2013)  о ограниченных промежутках между простыми.
2) Метода Мэйнарда–Тао, где строятся кортежи вида {n + h1, ..., n + hk}, где  hi выбираются как сдвиги  внутри одного класса вычетов по модулю q#.

То есть примориалы — стандартный инструмент в современной аналитической теории чисел.Что-то конкретное по работе(на которую дана ссылка) вас интересует?

Добавлено (19.10.25, 11:05)
---------------------------------------------
Если вопросов нет, то тогда к сути статьи.

Пусть:

P(k) — вероятность того что для простого p число p+N тоже простое, где N=k#

Тогда из F гипотезы Харди-Литлвуда  мы получим:


Где C(N) —постоянная Харди-Литлвуда для пары (0, N):


C2 –постоянная простых близнецов:


γ – постоянная Эйлера-Маскерони.

Можно показать что при фиксированном p, функция f(k) равная


является унимодальной, а следовательно есть такое N0, до которого P(k) растёт, и после которого убывает.

Вот код для расчета P(k) и поиска оптимального k.p выбирается нестрого, просто как масштаб.:

Добавлено (19.10.25, 11:08)
---------------------------------------------
import math

def primes_up_to(n):
sieve = [True]* (n + 1)
sieve[0] = sieve[1] = False
for i in range(2, int(n**0.5) + 1):
if sieve:
for j in range(i * i, n + 1, i):
sieve
= False
return [i for i, is_prime in enumerate(sieve) if is_prime]

def find_optimal_k(p, K_max=100):
C_2 = 1.320323631693739
primes = primes_up_to(K_max)
primorial = 1
C_current = C_2
best_k = 2
best_P = C_2 / math.log(p + 2)

for q in primes:
primorial *= q
if q > 2:
C_current *= (q - 1) / (q - 2)
log_val = math.log(p + primorial)
P_val = C_current / log_val
print(f"k={q}, k#={primorial}, C={C_current:.5f}, ln(p+N)={log_val:.5f}, P={P_val:.5f}")
if P_val > best_P:
best_P = P_val
best_k = q
return best_k, best_P

p = 97
optimal_k, optimal_P = find_optimal_k(p)
print(f"Оптимальное k: {optimal_k} с вероятностью {optimal_P:.5f}")

Добавлено (19.10.25, 11:14)
---------------------------------------------
Пример расчёта для p=97

k=2, k#=2, C=1.32032, ln(p+N)=4.59512, P=0.28733k=3, k#=6, C=2.64065, ln(p+N)=4.63473, P=0.56975
k=5, k#=30, C=3.52086, ln(p+N)=4.84419, P=0.72682
k=7, k#=210, C=4.22504, ln(p+N)=5.72685, P=0.73776
k=11, k#=2310, C=4.69448, ln(p+N)=7.78614, P=0.60293
k=13, k#=30030, C=5.12126, ln(p+N)=10.31318, P=0.49657
k=17, k#=510510, C=5.46267, ln(p+N)=13.14336, P=0.41562
k=19, k#=9699690, C=5.78401, ln(p+N)=16.08761, P=0.35953
k=23, k#=223092870, C=6.05943, ln(p+N)=19.22310, P=0.31522
k=29, k#=6469693230, C=6.28386, ln(p+N)=22.59039, P=0.27817
k=31, k#=200560490130, C=6.50054, ln(p+N)=26.02438, P=0.24979
k=37, k#=7420738134810, C=6.68627, ln(p+N)=29.63530, P=0.22562
k=41, k#=304250263527210, C=6.85772, ln(p+N)=33.34887, P=0.20564
k=43, k#=13082761331670030, C=7.02498, ln(p+N)=37.11007, P=0.18930
k=47, k#=614889782588491410, C=7.18109, ln(p+N)=40.96022, P=0.17532
k=53, k#=32589158477190044730, C=7.32189, ln(p+N)=44.93051, P=0.16296
k=59, k#=1922760350154212639070, C=7.45035, ln(p+N)=49.00805, P=0.15202
k=61, k#=117288381359406970983270, C=7.57662, ln(p+N)=53.11892, P=0.14264
k=67, k#=7858321551080267055879090, C=7.69319, ln(p+N)=57.32362, P=0.13421
k=71, k#=557940830126698960967415390, C=7.80468, ln(p+N)=61.58630, P=0.12673
k=73, k#=40729680599249024150621323470, C=7.91461, ln(p+N)=65.87675, P=0.12014
k=79, k#=3217644767340672907899084554130, C=8.01740, ln(p+N)=70.24620, P=0.11413
k=83, k#=267064515689275851355624017992790, C=8.11638, ln(p+N)=74.66504, P=0.10870
k=89, k#=23768741896345550770650537601358310, C=8.20967, ln(p+N)=79.15368, P=0.10372
k=97, k#=2305567963945518424753102147331756070, C=8.29609, ln(p+N)=83.72839, P=0.09908
Оптимальное k: 7 с вероятностью 0.73776


Сообщение отредактировал Браусов - Вс, 19.10.25, 11:14
 
Dytr01Дата: Вс, 19.10.25, 11:57 | Сообщение # 3
Ученик
Сообщений: 9
Награды: 4
Совы: 0
Собственно, огромная благодарность, за такое теоретическое решение. Случайно зашла на другой форум и там только что разместили ссылку на данный комментарий!
 
БраусовДата: Вс, 19.10.25, 12:10 | Сообщение # 4
Знаток
Сообщений: 33
Награды: 12
Совы: 0
Dytr01, не за что. Если есть вопросы или нужны разъяснения (например. как доказать унимодальность  рассмотренной функции, или как получилось данное выражение из гипотезы Харди-Литлвуда) обращайтесь.

Сообщение отредактировал Браусов - Вс, 19.10.25, 12:10
 
Dytr01Дата: Вс, 19.10.25, 12:43 | Сообщение # 5
Ученик
Сообщений: 9
Награды: 4
Совы: 0
Тут на одном форуме (кстати уже второй раз - еще на другом задавали) вопрос: 
Цитата
я правильно понял что по сути чем больше мы делаем выборку тем оптимельнее (в смысле методики автора) будет наибольший примориал. То есть он промерил для 30М и нашел что более оптимальный примориал #29 а если сделать выборку до 300М то оптимальный будет какой-то больший примориал? И так всегда?

Простите, орфография автора вопроса  :)   Я до вашего комментария как-то уже развернуто попробовала ответить чисто в парадигме автора статьи так (ну тут немного подредактировала свой ответ): 

Цитата
Рост первого фактора (C(N)) ограничен и очень медленный (логарифмический от логарифма), в то время как рост второго фактора в знаменателе (ln(N)) неограничен и, хотя тоже медленный, все же быстрее. Это означает, что наступит момент, когда C(N) практически перестанет расти, а ln(N) будет продолжать увеличиваться. С этого момента общая вероятность P ~ C(N) / ln(N) будет монотонно убывать с ростом N.

Тенденция "чем больше выборка, тем больше оптимальный примориал" — это явление, наблюдаемое в начальной и промежуточной фазах. Оно работает, пока мы находимся "слева" от глобального максимума на кривой P(k). Однако с чисто теоретической точки зрения, при p -> ∞ существует некий глобально оптимальный примориал N_global (или небольшой набор таковых), который максимизирует вероятность для бесконечно больших простых. Для всех примориалов, больших этого N_global, эффективность будет только снижаться. Бесконечное увеличение примориала невыгодно.

На практике мы, скорее всего, никогда не достигнем этого теоретического N_global из-за астрономической величины требуемых чисел, но математически он существует, и это означает, что эта тенденция не может сохраняться всегда.

Я ведь правильно понимаю суть идеи?
 
БраусовДата: Вс, 19.10.25, 20:38 | Сообщение # 6
Знаток
Сообщений: 33
Награды: 12
Совы: 0
Цитата Dytr01 ()
Я ведь правильно понимаю суть идеи?
Не совсем так. Суть в том, что для каждого  простого p есть своё оптимальное k, при котором вероятность того, что число p+k#  тоже простое, максимальна.
В этом и состояла гипотеза автора статьи, и была теоретически обоснована и подтверждена в сообщении 2 данной темы.
Касаемо глобального оптимума, то такового не существует. Да, каждое следующее k является оптимальным для все более и более большого количества p, но нет, «глобального оптимума » не существует.
Это напоминает парадокс Гильбертова отеля: как бы велико ни было k, всегда найдутся такие большие p, что потребуется еще большее k.

Добавлено (19.10.25, 20:55)
---------------------------------------------

Цитата Dytr01 ()
Случайно зашла на другой форум и там только что разместили ссылку на данный комментарий!
Что же пишут? Есть ли какие-нибудь дополнения, улучшения к предложенному решению?
Что за форум?


Сообщение отредактировал Браусов - Вс, 19.10.25, 20:42
 
Dytr01Дата: Вс, 26.10.25, 12:04 | Сообщение # 7
Ученик
Сообщений: 9
Награды: 4
Совы: 0
Цитата Браусов ()
Что же пишут? Есть ли какие-нибудь дополнения, улучшения к предложенному решению?Что за форум?
Если тут допустимо дать ссылку, то вот: ссылка на форум.
В целом, тема заинтересовала местную аудиторию...


Сообщение отредактировал Dytr01 - Вс, 26.10.25, 12:05
 
БраусовДата: Вс, 26.10.25, 22:32 | Сообщение # 8
Знаток
Сообщений: 33
Награды: 12
Совы: 0
Цитата Dytr01 ()
Если тут допустимо дать ссылку, то вот: ссылка на форум.В целом, тема заинтересовала местную аудиторию.
Спасибо за ссылку. Конкретики там мало, если не сказать что вообще нет.
В конце есть обоснованные  вопросы и Креативщик и Гость правы, это не вероятность в строгом её смысле.
Это просто плотность пар взятая из гипотезы Харди-Литлвуда, и плотность распределения простых в её традиционном смысле. Делим  это друг на друга и получаем по сути не вероятность а относительную плотность, но этого достаточно для нахождения оптимального k, т.к. отношения Pn/Pn-1  сохраняются.
 
  • Страница 1 из 1
  • 1
Поиск:

Интересная информация
Последние задачи Сообщество эрудитов ВКонтакте Рейтинг сообщений Совиный рейтинг
1.Твоя теория48
2.Арнольд, да не тот80
3.Брэндон.3
4.Задача с матрицами3
5.Простенький вопросик10
6.Гидродинамика15
7.Быстрая река.24
8.А попробуйте ещё это опро...6
9.Задача по логике7
10.Головоломка без ключа2
1.Rostislav5379
2.Lexx4728
3.nebo3639
4.Иван3061
5.никник2770
6.Kreativshik2472
7.Гретхен1807
8.Vita1583
9.erudite-man1378
10.Valet937
1.nebo123
2.Kreativshik113
3.sovetnik49
4.MrCredo38
5.IQFun30
6.Pro100_Artyom27
7.marutand20
8.хан20
9.никник15
10.Фигаро15

ГлавнаяГостевая книгаFAQОбратная связьКоллегиФорум Эрудитов