2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1 ... 39, 40, 41, 42, 43, 44, 45, 46  След.
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 12:34 
Заслуженный участник


20/08/14
11760
Россия, Москва
Yadryara в сообщении #1661069 писал(а):
то надо придумать такое разбиение, чтобы выделить участок в 10-20% от всего диапазона $0-71\#$, на котором было бы как можно меньше чужих чисел.
А придумайте. Я уже бошку сломал.
Чтобы не сильно переписывать программу (ибо время и глюки) оно должно удовлетворять таким ограничениям: из всего множества простых $2\ldots71$ надо выделить подмножество $a_i$ так чтобы выполнялись одновременно все условия:
1. $71\#/2^{64} < \prod_i a_i < 2^{32}$, тут важно левое ограничение, правое поправить кажется намного легче, да и оно обычно автоматически удовлетворяется из-за следующего пункта;
2. $3000 < \prod_i g(a_i) < 2^{18}/11$, где $g()$ - количество разрешённых остатков, левое число лучше как можно больше (для уменьшения накладных расходов), правое обеспечивает влезание главной таблицы в кэш L2, его лучше даже $2^{15}\cdot7/11$, оно не жёсткое, можно и немногим больше, но не в разы, иначе скорость падает (при количестве потоков больше 4 затыкается по скорости кэщ L3, про размеры больше него и скорость памяти вообще молчу).

Это вот множество $a_i$ будет перебираться внутри программы самым внутренним циклом и соответственно снаружи эти простые нельзя использовать для деления на группы.
Из ограничений первого пункта быстро следует что в $a_i$ может быть от 5 до 9 простых.
Я даже программку написал по перебору всех вариантов такого разбиения, ничего удобного нет. Лучшее что нашёл - $a_i=\{13,17,19,23,29,31\}$, т.е. эти числа в разбиение на группы не входят, как сейчас не входило $17$ (для $67\#$ используется подобранное по быстрому вручную $a_i=\{17,31,37,41\}$ с произведением количества остатков $11520$).

Потом надо оставшиеся простые разбить ещё на два подмножества, из одного сделать разбиение на группы, другое отдать программе для перебора, при этом время перебора должно оставаться удобным для всех наших компов (скажем от 10с до пары часов, это минимум 2e11 вариантов к перебору). Но это уже легче, первое разбиение важнее.
Ну и разумеется все разбиения должны легко вычисляться, отсортировать все 1.5e19 вариантов для $71\#$ в желаемом порядке нереально.


Кстати я сделал проверку больших чисел (до $2^{128}\approx3.4\cdot10^{38}$) на простоту тестом Ферма (хватает одного основания), давно хотел, пока правда довольно медленно, но это решаемо. Зато теперь можно отдавать на допроверку в PARI лишь почти точно подходящие варианты (например с valids не меньше 15 или даже 17), логи будут сильно меньше, вероятность ошибки теста менее 1 на триллион (можно вообще от проверки в PARI отказаться, ну кроме valids=19).

Yadryara в сообщении #1661069 писал(а):
Напомню, что их ожидается почти 11 штук на весь диапазон.
Не совсем так, это мат.ожидание, реальное количество может быть как заметно больше, так и заметно меньше: если верить vicvolf, то оно $10.97\pm3.31\sigma$, т.е. с вероятностью 68% лежит в диапазоне $7.66<n<14.3$ и с вероятностью 95% в диапазоне $4.35<n<17.6$ и с вероятностью 99.7% в диапазоне $1.04<n<20.9$. Вполне может быть что и вообще лишь одно ... Хотя больше 4шт тоже достаточно вероятно. Вероятность что оно лежит в диапазоне $9.32<n<12.6$ всего 38%, что маловато.
Для $67\#$ ожидаемое количество $0.511\pm0.715\sigma$, вероятность что оно не меньше 1шт всего 25%.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 16:52 
Аватара пользователя


29/04/13
8108
Богородский
Только что прочитал, пишу по горячим следам. Сразу понятно, что кандидатов будет в 52 раза больше и нам надо выбрать самые кандидатистые из них.

Dmitriy40, если действительно решили уже начать думать, тогда готов попробовать. Прежде всего, мне нужно поточнее знать как сейчас работает прога на $0-67\#$. Прям детально именно по математике. Можно в личку. При этом, просьба тоже начать издалека, чтобы не запутаться. Тем более, что Вы порой любите очевидные вещи проговаривать, как например здесь:

Dmitriy40 в сообщении #1661086 писал(а):
Yadryara в сообщении #1661069 писал(а):
Напомню, что их ожидается почти 11 штук на весь диапазон.
Не совсем так, это мат.ожидание, реальное количество может быть как заметно больше, так и заметно меньше

Вот здесь почти точно совпадает:

Yadryara в сообщении #1658936 писал(а):
для диапазона $0-71\#$ такая:
$$P = 1 - \frac1{e^{10.97}}\approx0.99998$$

Dmitriy40 в сообщении #1661086 писал(а):
с вероятностью 99.7% в диапазоне $1.04<n<20.9$

Если $n$ — количество искомых 19-к, то у меня $1\leqslant n $

А вот здесь немаленькая разница:

Dmitriy40 в сообщении #1661086 писал(а):
Для $67\#$ ожидаемое количество $0.511\pm0.715\sigma$, вероятность что оно не меньше 1шт всего 25%.

Но у меня-то 40%, а не 25% :

Yadryara в сообщении #1658936 писал(а):
Тогда для диапазона $0-67\#$, видимо, верна такая формула:
$$P = 1 - \frac1{e^{0.51}}\approx0.400$$

Причём этой формуле я верю гораздо больше.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 18:08 
Заслуженный участник


20/08/14
11760
Россия, Москва
Yadryara в сообщении #1661107 писал(а):
Причём этой формуле я верю гораздо больше.
Я взял цифры из понятия стандартное отклонение. Там сказано что для нормального распределения (а vicvolf утверждает что оно таково) вероятность отклонения значения от его мат.ожидания более чем на 1сигму в любую сторону составляет 31.731%. На 0.68сигмы соответственно 49.65%. Нас устраивает только в одну сторону, в плюс, значит, пополам, 25%.
Почему это не согласуется с вероятностью для точного количества попыток - я не знаю, в чём-то определения вероятности разные для этих случаев.

Yadryara в сообщении #1661107 писал(а):
Прежде всего, мне нужно поточнее знать как сейчас работает прога на $0-67\#$. Прям детально именно по математике.
Что именно? Я же уже трижды если не больше рассказывал как она работает.
А уж с математикой тем более всё просто.
Если совсем коротко, то выполняется вычисление for(k=1,3e17, forprime(p=2,2^17, if(setsearch(no[p], x[k]%p), next(2)); ); print(x[k]); );. Т.е. проверяются все 3e17 вариантов и отбрасываются все что имеют недопустимый остаток (список в no[p] длиной максимум 19 каждый) по малым простым. Писать формулой влом. Разумеется x[] вовсе не хранится, а вычисляется через КТО.
Если же чуть подробнее.
Исходная задача: 19 чисел с заданными смещениями друг от друга должны быть последовательными простыми.
Упрощаем задачу, снимаем требование последовательности, пусть будут любыми (в пределах исходного диапазона 0-252), я ищу и грязные цепочки тоже, чистая будет среди них, её увидим отдельной проверкой.
Далее перебор всех начальных (простых) чисел заменяем на перебор только допустимых вариантов (3e17 для 67# и 1.5e19 для 71#).
Далее условие простоты заменяем на условие не делимости на малые простые. И простые становятся псевдопростыми. Кандидатов становится больше, их допроверкой на простоту займётся PARI.
Далее проверку делимости 19-ти чисел заменяем на проверку остатка от деления начального числа по списку допустимых остатков (18 делений заменяем на один поиск среди допустимых остатков).
Далее список допустимых остатков заменяем на список недопустимых, их в разы меньше (не более 19 независимо от величины простого числа).
Далее КТО(x,y,z) заменяем на f(x)+g(КТО(y,z)). Чтобы пореже считать медленную КТО. Как считать КТО в виде суммы слагаемых я подробно рассказывал в январе (самое начало 26-й страницы данной темы). Именно здесь нужно то подмножество $a_i$, чтобы сделать из него f(x). Ограничения же на него диктуются не математикой, а конкретной реализацией в коде.
Далее переходим в арифметику остатков и во внутренних циклах работаем не с самими числами, а лишь с их остатками по малым простым. Просто потому что остатки не зависят от величины исходных чисел и сильно меньше размером (а значит их можно вычислить больше штук почти тем же количеством команд, т.е. выше скорость).
Далее деления для получения остатков заменяем на сложение по модулю.
Далее вычисления заменяем на предвычисленные таблицы, причём сразу так чтобы сложение по модулю работало быстро.
Собственно всё, математика кончилась.
И да, всё это - просто. Пока оно на уровне математики.
Только почти ничего из этого в коде нет - оно произошло в голове и на бумаге (и наверняка в другом порядке), в код же попал лишь конечный результат всех этих операций и преобразований.
Что нужно подробнее пояснить? Что было в голове или что оказалось в коде? Как-то Вы слишком уж общо спросили, конкретизируйте что непонятно и что нужно. По моему двух указанных в прошлом сообщении ограничений достаточно, дальше всё относительно просто.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 18:40 
Аватара пользователя


29/04/13
8108
Богородский
Dmitriy40 в сообщении #1661112 писал(а):
По моему двух указанных в прошлом сообщении ограничений достаточно, дальше всё относительно просто.

И Вы все-все эти ограничения проверили и каков вердикт?

Давайте я буду рассказывать постепенно, сознательно упрощая, а Вы меня поправите. Пока именно по математике. Понятно, что в программе может быть не так.

1. У нас есть 293 квадриллиона кандидатов, то есть 293е15 начальных чисел потенциальных 19-к. Как они получаются — понятно.

2. Мы берём одного кандидата и пытаемся узнать делятся ли все 253 числа идущие вплотную к нему (и включая его самого) нацело на $2, 3, 5,7,11,13,19,23,29$ .

3. Все 19 родных чисел (предписанных паттерном) конечно не делятся, иначе кандидат не вошёл бы в число этих 293 квадриллионов. Ведь все 19 проверяются по всем простым модулям до 67 включительно.

4. Кроме них некоторые чужие числа тоже не делятся нацело ни на одно из перечисленных чисел. Мы считаем их количество и как раз по количеству чужих относим к той или иной группе.

Мы пока не вправе считать эти числа простыми. Но часть проверки на простоту они прошли, поэтому я называю их малопростыми, а Вы — псевдопростыми.

5. Проводятся дальнейшие проверки этих малопростых уже по другим простым модулям.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 18:42 
Заслуженный участник
Аватара пользователя


15/10/08
12496
Это вы пытаетесь друг с другом договориться, что же вы всё-таки считаете?

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 18:56 
Аватара пользователя


29/04/13
8108
Богородский
Утундрий

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

Желаете вникнуть?

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 19:14 
Заслуженный участник
Аватара пользователя


15/10/08
12496
Yadryara в сообщении #1661116 писал(а):
Желаете вникнуть?
Не сейчас. К понедельнику мне велели склеить и покрасить кубиков. Да и чупакабра пока не кормлена.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение10.11.2024, 21:16 
Заслуженный участник


20/08/14
11760
Россия, Москва
Утундрий в сообщении #1661114 писал(а):
Это вы пытаетесь друг с другом договориться, что же вы всё-таки считаете?
Нет, мы упорно пытаемся оценить сколько же нам ещё считать. Наиболее вероятно. И какой вообще смысл имеет эта вероятность(-и).
Если окажется что годы - тогда ну его в пень (или надо думать про другие технологии типа боинк).
Утундрий в сообщении #1661119 писал(а):
Не сейчас. К понедельнику мне велели склеить и покрасить кубиков. Да и чупакабра пока не кормлена.
Вообще-то мы не торопимся, считать ещё месяцы, успеете всех склеить, покормить и спать уложить.

Yadryara в сообщении #1661113 писал(а):
И Вы все-все эти ограничения проверили и каков вердикт?
Проверил, программкой на PARI. Она выдала что 5 чисел не подходят, только 6-9. Всего 1720 вариантов. Все кривые. Самый красивый я показал, $a_i=\{13,17,19,23,29,31\}$. Он же и с наибольшим левым числом (наименьшим использованным), остальные варианты используют и меньшие простые, что ещё сильнее губит деление на группы по признаку чистоты.
Вообще вся эта идея с перебором в (приблизительном) порядке увеличения загрязнённости сильно портит жизнь. А какой даёт выигрыш я так и не понял, стоит ли вообще игра свеч. Может проще разбить весь 71# на куски скажем по 1e24 и считать их по очереди (в произвольном порядке внутри куска), заодно есть вероятность найти именно наименьшую 19-252. Разумеется считать только 1.5e19 допустимых вариантов, это не возврат к линейному перебору, скорость снизится типа на десяток процентов.

Yadryara в сообщении #1661116 писал(а):
чтобы лучше понять как она работает, порой приходится проговаривать некоторые вроде очевидные вещи.
Я как "программист и железячник" думаю больше в терминах кода и алгоритма, чем в терминах математики, потому как работает прога понятно, а вот записать формулами трудновато.
Например, огромная матрица 293e15х3491 элементов для проверки 293e15 вариантов по 3491 простым 71-32717 (простые до 71 проверены при составлении списка 293e15) разумеется не хранится, а заменена на матрицу 11520х3491, которая иерархически делится на 4 уровня, которые обходятся каждый в своём направлении и с разной гранулярностью (шагом), причём обходится далеко не вся матрица. Как это выразить формулой я без понятия, ну если только 4-мерным обгрызенным кубом с переменным размером по одной из осей. А ведь потом весь этот расчёт повторяется ещё 293e15/11520=25.4e12 раз с тремя уровнями иерархии (25.4e12 чисел не хранятся, а вычисляются по КТО из трёх векторов размерами 22848, 80640, 13824 - знакомые числа, фактически это можно представлять как трёхмерный куб с осями такой длины). Представить весь процесс как 7-мерный куб (с одной осью переменного размера в зависимости от 6-ти других) мне не удаётся. Повторю, написать 7-8 вложенных циклов не проблема, а вот представить весь этот бардак математически ...

Yadryara в сообщении #1661113 писал(а):
Давайте я буду рассказывать постепенно, сознательно упрощая, а Вы меня поправите. Пока именно по математике.
Да, математику можно сформулировать и так как Вы далее.
Только кажется всё это делается при разбивке на группы, это подготовительные действия, ещё до старта счёта. За исключением получения 293e15 кандидатов, это делается в самой программе (тремя КТО из векторов длиной 11520, 22848, 80640, 13824). И вопрос в каком порядке потом перебирать все эти 293e15 вариантов.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 02:54 
Аватара пользователя


29/04/13
8108
Богородский
Dmitriy40 в сообщении #1661130 писал(а):
Вообще вся эта идея с перебором в (приблизительном) порядке увеличения загрязнённости сильно портит жизнь.

Вот я не могу понять, а чем она портит жизнь?

Dmitriy40 в сообщении #1661130 писал(а):
А какой даёт выигрыш я так и не понял, стоит ли вообще игра свеч.

Ну вот для оценки этого выигрыша, я и предлагал проверить тысячи других паттернов, про которые известно, что найдено около 11 кортежей в соотв. диапазонах. Вроде эта проверка была частична проведена — поняли, что да, лучше идти от более чистых. А дальнейшая проверка была отложена. Теперь у меня комп намного быстрее, вот думаю снова заняться.

Dmitriy40 в сообщении #1661130 писал(а):
Да, математику можно сформулировать и так как Вы далее.
Только кажется всё это делается при разбивке на группы, это подготовительные действия, ещё до старта счёта.

Ну вот я и подготовительные действия тоже решил расписать подробнее. Попозже ещё напишу.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 04:16 
Аватара пользователя


29/04/13
8108
Богородский
Насчёт того, что именно мы ищем. Это понятно давным-давно.
___________________________________________________________
Мы ищем кусок натурального ряда состоящий из 253-х идущих подряд чисел. Перенумеруем эти числа по возрастанию номерами от 0 до 252. Числа имеющие номера

0, 6, 12, 30, 42, 72, 90, 96, 120, 126, 132, 156, 162, 180, 210, 222, 240, 246, 252

должны быть простыми.

Остальные 234 числа должны быть составными.
____________________________________________
Эти два свойства такого куска или отрезка натурального ряда Дмитрий обозначает так: len=19, valids=19.

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

Более коротко: все 19 простых чисел — родные.

И, в последнее время, я кратко обозначаю такой отрезок (или цепочку или кортеж) просто 19\19.

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

По этой причине первое число у меня это именно valids, а второе — len.

Насколько знаю, человечеству пока известны только 3 цепочки с valids=19 и все они найдены программой Dmitriy40.

За время многолетних поисков все три находки были в этом году:

в апреле Дмитрием была найдена 19\22,
в августе тоже Дмитрием — 19\21,
и в октябре Демисом — 19\21.

То есть все 19 родных чисел удавалось найти на отрезке из 253-х подряд идущих натуральных чисел. Но общее количество простых чисел на отрезке, то есть длина (len) была то 21, то 22. Иначе говоря, из оставшихся 234 чисел, то два, то три были простыми. 19 простых чисел — родные и 2-3 — чужие.

Цепочки, где есть хотя бы одно чужие простое число мы называем грязными и я обозначаю их 19\20+. То есть valids = 19, len $\geqslant$ 20:

Yadryara в сообщении #1660866 писал(а):
Одна штука 19\19 на 13-14 штук 19\20+

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 06:18 
Аватара пользователя


29/04/13
8108
Богородский
Yadryara в сообщении #1661140 писал(а):
Ну вот для оценки этого выигрыша, я и предлагал проверить тысячи других паттернов, про которые известно, что найдено около 11 кортежей в соотв. диапазонах.

Это кстати совершенно необязательно. Можно брать и другие количества кратные 11-ти. Например взять диапазон, где найдено 110 кортежей и искать не до первого найденного, а пока не найдётся $\frac1{11}$ от общего количества, то есть 10 штук.

Да, собственно можно все подряд паттерны проверять, где не меньше сотни кортежей найдено. Количество находок перевалило через $\frac1{11}$ — стоп, следующий паттерн.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 12:26 
Заслуженный участник


20/08/14
11760
Россия, Москва
Yadryara в сообщении #1661140 писал(а):
Вот я не могу понять, а чем она портит жизнь?
1. Усложняет выбор $a_i$.
2. Файлы с соседними номерами никак друг с другом не связаны (нельзя их приписать например одинаковым остаткам по какому-то простому чтобы объединить в один, уже 3000-4000 файлов меня стали напрягать, слишком много в папке).
3. Как следствие непонятно как по номеру получать число из n19d252.nums кроме как вычислить заранее и хранить (как сейчас), но хранить больше миллионов номеров неудобно (сотни мегабайт файл). Т.е. понятно что можно вместо числа хранить остатки по простым группы и число получать из них по КТО, но это проблему локальности нумерации не решает.
4. Желание считать как можно точнее от чистых к грязным вынуждает сильнее дробить гранулярность запуска и соответственно количество групп и юнитов. А это количество логов. Так бы я сделал к примеру 2304 лога на весь 71# и всё, сейчас же вынужден делать 5-6млн логов - и думать как сжимать в меньшее количество файлов, с учётом перезапусков от глюков (пропал свет), возможных ошибок записи на диск (на это видимо снова забью), насколько вычерпается ресурс SSD от таких частых записей (даже малых объёмов) и прочего.
Может и ещё какое неудобство забыл.

Dmitriy40 в сообщении #1661112 писал(а):
Почему это не согласуется с вероятностью для точного количества попыток - я не знаю, в чём-то определения вероятности разные для этих случаев.
Мучает меня этот вопрос, пока такие мысли.
Формула $P=1-1/e^t$ 1-в-1 как заряд конденсатора через резистор от стабильного напряжения, по моему это решение какого-то простого диф.уравнения (скорость процесса обратно пропорциональна текущему значению). Кондёр тоже за постоянную RC не заряжается до 100% как по идее должен был если бы всё было линейно, а лишь до $1-1/e^1=0.632$. И за двойное время не достигает 100%, лишь $1-1/e^2=0.865$, и за тройное лишь до 0.950. Так и с объёмом перебора, достижение частотности (вероятности) даёт 63% обнаружения, вдвое больше даёт 86%, втрое больше 95% и т.д.
Плюс формула с экспонентой базируется на фиксированной вероятности (частотности) решения, а для простых чисел и кортежей из них это не так. Хотя для небольших диапазонов (по сравнению с величиной самих чисел) она и почти постоянна.
Но тогда формула $P=1-1/e^{0.51}=0.40$ некорректна, мат.ожидание становится равным 1 не при объёме $1/0.5112=1.956$ от 67#, а при объёме $2.6\cdot67\#$, т.е. правильная формула должна быть $P=1-1/e^{1/2.6}=0.32$, хотя это тоже не 25%, но хоть уже ближе. А до двойки мат.ожидание доходит не при объёме $5.2$, а лишь при $6.7$ от 67#. Выходит эту формулу с экспонентой вообще бессмысленно применять, вероятность (частотность) появления решений на таких больших интервалах весьма далека от постоянной. Видимо вот и ответ почему 40% вместо более разумных 25%.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 13:05 
Аватара пользователя


29/04/13
8108
Богородский
Yadryara в сообщении #1661142 писал(а):
Да, собственно можно все подряд паттерны проверять, где не меньше сотни кортежей найдено. Количество находок перевалило через $\frac1{11}$ — стоп, следующий паттерн.

По новой заморочился, раскопал старые программы, переделал. Две 7-ки проверил, разбивая по $13\#$ и $17\#$.

Код:
  Pattern   Naideno  Diapazon    1/11  Razb.   Uskor.   Razb.   Uskor.

   7-60    301 kor.    0-29#   28kor.    13#    1.055     17#    1.345
   7-72-1  228 kor.    0-29#   21kor.    13#              17#    1.456


Считал, как просили: именно по количеству проверяемых кандидатов, а не по времени.

То есть для 2-го паттерна кандидатов проверяется меньше в 1.45 раза, чем $\frac1{11}$ часть от общего количества, но 21 чистый кортеж находится.

-- 11.11.2024, 14:04 --

Ситуация ещё улучшилась. Я вычисляю два кэфа ускорения и записываю худший в таблицу:

Код:
  Pattern  Diapazon  Naideno    Razb.   Uskor.

   7-60       0-29#      301      17#    1.345
   7-72-1     0-29#      228      17#    1.456
   7-72-2     0-29#      187      17#    2.059
   7-84-1     0-29#      107      17#    1.691
   7-84-2     0-29#      146      17#    2.351
   7-84-3     0-29#       91      17#    2.015


Пока делал по отдельности: сначала запускал одну прогу, она проходила весь диапазон, находила все кортежи, считала количество кандидатов, в том числе отдельно после сетсёч.

Потом я эти данные вводил во вторую прогу и искал кортежи по новой среди самых числых групп (в примере количество чужих чисел не более 8) и считал два кэфа ускорения.

(PARI)

Код:
{print();

t0=getwalltime();

v=[0, 24, 30, 42, 54, 60, 84]; okk = 91; neok = floor(okk/11+1);

d=v[#v];

a=setminus(vector(d/2,i,i*2),v);

vdel   = [3,5,7,11,13,17];
vdelob = [3,5,7,11,13,17,19,23,29];pro=1; w=2*vecprod(vdel);

kgr=vector(14);schuzh=0;kkor=0;

print(w);
print();

m=vector(29,i,[]);

for(j=1, #vdelob, p=vdelob[j];

m[p]=setminus(vector(p,i,i-1),Set(-v%p));pro*=#m[p];

printf("%d:x%d:%d:   %d\n",p,#m[p],m[p],pro););

mm=vector(200,i,[]); forprime(p=30,#mm, mm[p]=Set(-v%p));

x0=Mod(1,2);

foreach(m[17],m17,
foreach(m[13],m13,
foreach(m[11],m11,
foreach(m[7],m7,
foreach(m[5],m5,
foreach(m[3],m3,

y=chinese([x0,Mod(m3,3),Mod(m5,5),Mod(m7,7),Mod(m11,11),Mod(m13,13),Mod(m17,17)]);

x=lift(y);

kvar++;

chuzh=0;

for(i=1, #a,

for(j=1, #vdel, p=vdel[j];

if((x+a[i])%p==0, next(2)));

chuzh++);
kgr[chuzh]++;

if(chuzh<=8,

\\print();print1(chuzh);

foreach(m[29],m29,
foreach(m[23],m23,
foreach(m[19],m19,
kan=lift(chinese([y,Mod(m29,29),Mod(m23,23),Mod(m19,19)]));
kkan++;

forprime(p=30,#mm, if(setsearch(mm[p], kan%p), next(2)));
kkanss++;

if(ispseudoprime(kan)
&& nextprime(kan+1)-kan==v[2]
&& nextprime(kan+v[2]+1)-kan==v[3]
&& nextprime(kan+v[3]+1)-kan==v[4]
&& nextprime(kan+v[4]+1)-kan==v[5]
&& nextprime(kan+v[5]+1)-kan==v[6]
&& nextprime(kan+v[6]+1)-kan==v[7],

kkor++;
print();
print(kkor,"   ",kan);
if(kkor==neok,

print();
print(pro,"   ",floor(pro/11));
print(kkan,"            ",floor(pro/11/kkan*1000));
print(" ",kkanss,"            ",floor(370753/11/kkanss*1000));

print();print(kvar, "   ",kgr[1..#kgr], "   ",vecsum(kgr));print();

print();
print(strtime(getwalltime()-t0));
print();

next(10));

);

))));

);

)))));

}

Вроде примерно ясна ситуация с 7-ками. Видимо, пока перейду к 5-кам, а не к 9-кам.

Dmitriy40 в сообщении #1661165 писал(а):
Плюс формула с экспонентой базируется на фиксированной вероятности (частотности) решения, а для простых чисел и кортежей из них это не так.

А откуда знаете что это не так?

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 14:17 
Заслуженный участник


20/08/14
11760
Россия, Москва
Yadryara в сообщении #1661170 писал(а):
А откуда знаете что это не так?
Разве это не очевидно?! Плотность простых чисел падает, значит падает и плотность любых кортежей из них (кортежи банально не могут встречаться чаще входящих в них простых). Падает плотность - следовательно падает вероятность (частотность).
К тому же я прямо это проверил, по HL1, написал же, где мат.ожидание достигает 1 и где 2, при постоянной плотности (вероятности, частотности) второе должно быть ровно вдвое дальше первого, а это явно не так. Да даже мат.ожидания 11 и 0.51 для 71# и 67# соответственно тоже не в 71 раз (и даже не в 52 раза) отличаются как должно быть для постоянной вероятности.

 Профиль  
                  
 
 Re: Симметричные кортежи из последовательных простых чисел
Сообщение11.11.2024, 15:00 
Аватара пользователя


29/04/13
8108
Богородский
Погодите, мы о разных вещах говорим. Конечно, для $0-67\#$ частотность своя, а для $0-71\#$ своя и она гораздо меньше. Просто потому, что кислорода в горах меньше.

Но мне пока непонятно, почему формулу нельзя применять.

Для $0-67\#$ бросили сильно многогранный кубик 293 квадриллиона раз, посмотрели, выпал он нужной стороной или нет.

Для $0-71\#$ бросили уже другой ещё более многогранный кубик 15 тысяч квадриллионов раз, посмотрели, выпал он нужной стороной или нет.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 682 ]  На страницу Пред.  1 ... 39, 40, 41, 42, 43, 44, 45, 46  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group