Как видно в последних двух приведенных строчках, в позицию с
![$5$ $5$](https://dxdy-02.korotkov.co.uk/f/9/6/1/9612eecfec9dadf1a81d296bd247377782.png)
подставляются квадраты больших простых. И эти большие простые будут ограничены
![$10^9$ $10^9$](https://dxdy-01.korotkov.co.uk/f/0/6/5/065159456ed4c790e33155c119a0726f82.png)
.
Но мы же в предрасчете не проверяли для
![$qr = 5r$ $qr = 5r$](https://dxdy-02.korotkov.co.uk/f/9/9/b/99b5995ddaf1e30e9878062d229a4ce082.png)
...
Проверяли:
![$r$ $r$](https://dxdy-01.korotkov.co.uk/f/8/9/f/89f2e0d2d24bcf44db73aab8fc03252c82.png)
в цикле идёт от
![$2$ $2$](https://dxdy-04.korotkov.co.uk/f/7/6/c/76c5792347bb90ef71cfbace628572cf82.png)
, а
![$q$ $q$](https://dxdy-02.korotkov.co.uk/f/d/5/c/d5c18a8ca1894fd3a7d25f242cbe889082.png)
от
![$qrmin/r$ $qrmin/r$](https://dxdy-02.korotkov.co.uk/f/1/d/5/1d50d74fe0c6be598753c7127db6832582.png)
(но не меньше чем
![$r+1$ $r+1$](https://dxdy-03.korotkov.co.uk/f/2/7/d/27ddbf8fed3fa697b24eafe49e7ddad282.png)
) до
![$qrmax/r$ $qrmax/r$](https://dxdy-03.korotkov.co.uk/f/a/c/5/ac5e35f4cd0709b8851d91306837863982.png)
для каждого
![$r$ $r$](https://dxdy-01.korotkov.co.uk/f/8/9/f/89f2e0d2d24bcf44db73aab8fc03252c82.png)
, так что все варианты
![$5x$ $5x$](https://dxdy-03.korotkov.co.uk/f/6/3/0/630909907e51c78a8925e725f1d572ae82.png)
были проверены при
![$r=5$ $r=5$](https://dxdy-01.korotkov.co.uk/f/c/4/3/c4375faa868833f80a54a7668f208f4982.png)
. И у меня принято что
![$q>r, q\ge13$ $q>r, q\ge13$](https://dxdy-03.korotkov.co.uk/f/6/2/6/6267449d9e4d31bc9e6101792c7cb42082.png)
, я об этом прямо сказал, возможно из-за этого у Вас некоторая путаница.
завязано на том, что в паттерне обязательно есть "пустое" место, куда буде расставляться
![$p^2qr$ $p^2qr$](https://dxdy-03.korotkov.co.uk/f/2/b/4/2b46f04e6fe5f56c2c3396cd1fb406c482.png)
, а
![$r > q \ge 13$ $r > q \ge 13$](https://dxdy-02.korotkov.co.uk/f/1/5/a/15ae9c5ba5bc67b1e07de50b86a54a0e82.png)
Нет, это завязано на том что в любой непустой позиции есть простое не меньше
![$2$ $2$](https://dxdy-04.korotkov.co.uk/f/7/6/c/76c5792347bb90ef71cfbace628572cf82.png)
, а после подстановки
![$p^2$ $p^2$](https://dxdy-04.korotkov.co.uk/f/3/6/7/367612346bbcbb202f19d739190c1a9982.png)
останется неизвестное простое не меньше
![$13$ $13$](https://dxdy-01.korotkov.co.uk/f/0/5/8/058144136c51a2587e0014f0855b972a82.png)
.
В пустую позицию подставляться будет
![$p^2$ $p^2$](https://dxdy-04.korotkov.co.uk/f/3/6/7/367612346bbcbb202f19d739190c1a9982.png)
, а
![$qr$ $qr$](https://dxdy-02.korotkov.co.uk/f/5/2/3/523e4ddd77f0a12cc9d42f967001497b82.png)
там может быть не менее чем
![$13\times17=221$ $13\times17=221$](https://dxdy-01.korotkov.co.uk/f/c/f/c/cfcb2be476d460183f3b52fec9d23b9282.png)
(все меньшие простые уже расставлены).
Запустил расчет ранее посчитанного паттерна b2155 теперь с ключом -p1^1000000001
Ускорение в разы наблюдается, но не в 40-50 раз. На первых записях в лог ускорение было в 7-8 раз. Сейчас колеблется в районе 3-5 раз.
Во первых там вроде бы двоеточие должно быть. Во вторых не от 1 (впрочем это неважно). В третьих я запускал с ключом -g3, он оказался быстрее -g9 и -g16. В четвёртых возможно дальше ускорение будет выше, я же сравнивал только конечный результат. В пятых я не обещал ускорения 40-50 раз на всех паттернах, на паттернах с одним перебором оно будет меньше 6х (ускорится только конец первого перебора и всё). В шестых имеет смысл поиграться с -g, теперь ведь второй-третий перебор можно запускать чаще прежнего, они же быстрее выполняются (т.е. можно посмотреть на первые 10-20 минут в логе и сравнить сколько времени занял линейный поиск и сколько квадратичный и не стоит ли уменьшить/увеличить -g).
-- 19.11.2022, 23:24 --В пятых я не обещал ускорения 40-50 раз на всех паттернах, на паттернах с одним перебором оно будет меньше 6х (ускорится только конец первого перебора и всё).
Но возможно будет выгодно запустить второй перебор (указанием соответствующего -g) и тогда выигрыш может станет и больше. А может и не стать, если линейный перебор для каждого простого и так был быстрее квадратичного с ограничением
![$p$ $p$](https://dxdy-03.korotkov.co.uk/f/2/e/c/2ec6e630f199f589a2402fdf3e0289d582.png)
.
Да, про то что выигрыш будет 45 раз на
любых паттернах я погорячился. Где-то меньше, где-то больше. Я же не проверял их все.
-- 19.11.2022, 23:29 --EUgeneUSВ начале много линейных переборов, а они не ускоряются. Вот когда линейных переборов станет меньше, останутся лишь квадратичные, вот они то и ускорятся. И так на каждом уровне перебора.
-- 19.11.2022, 23:34 --Вообще этот ключик -g очень мутный и непонятно как его выбирать кроме как опытным путём.
![Sad :-(](./images/smilies/icon_sad.gif)
Когда я буду делать такой универсальный перебор, то склоняюсь всё же к автоматическому выбору на лету, прямо по реальному счёту или тестовому измерению.
-- 19.11.2022, 23:43 --Ну и да,
![$qr \le N=10^4$ $qr \le N=10^4$](https://dxdy-02.korotkov.co.uk/f/d/3/0/d300350121da098a1230e94003fe7e0982.png)
я проверил, можно пользоваться ключом -p1e9.
-- 19.11.2022, 23:49 --А может я вообще ошибся в своих тестах и ускорение меньше.
![:mrgreen: :mrgreen:](./images/smilies/icon_mrgreen.gif)