Message boards :
Cafe :
К штурму 19-ки
Message board moderation
Previous · 1 · 2 · 3 · 4 · 5 . . . 55 · Next
Author | Message |
---|---|
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Пока остановлю генерацию. Пойду закушу для восстановления сил организма :) Затем проверю сгенерированные паттерны с диаметрами 336 и 348. А потом дальше буду генерировать. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Готово! Паттерны с диаметром 348 проверила на допустимость программой господина Петухова. Программа ошибок не выдала. Сейчас точно так же проверю паттерны с диаметром 336, их побольше - 116 штук. Готово! Показываю начало и окончание проверки из выходного файла logfile = "pat19.txt" n=19: [0, 6, 18, 36, 48, 60, 66, 78, 120, 168, 216, 258, 270, 276, 288, 300, 318, 330, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 6, 18, 36, 48, 60, 66, 78, 120, 168, 216, 258, 270, 276, 288, 300, 318, 330, 336] n=19: [0, 6, 18, 36, 48, 60, 66, 78, 126, 168, 210, 258, 270, 276, 288, 300, 318, 330, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 6, 18, 36, 48, 60, 66, 78, 126, 168, 210, 258, 270, 276, 288, 300, 318, 330, 336] n=19: [0, 6, 18, 36, 48, 60, 66, 90, 120, 168, 216, 246, 270, 276, 288, 300, 318, 330, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 6, 18, 36, 48, 60, 66, 90, 120, 168, 216, 246, 270, 276, 288, 300, 318, 330, 336] n=19: [0, 6, 18, 36, 48, 60, 66, 90, 126, 168, 210, 246, 270, 276, 288, 300, 318, 330, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 6, 18, 36, 48, 60, 66, 90, 126, 168, 210, 246, 270, 276, 288, 300, 318, 330, 336] n=19: [0, 6, 18, 36, 48, 60, 66, 120, 126, 168, 210, 216, 270, 276, 288, 300, 318, 330, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 6, 18, 36, 48, 60, 66, 120, 126, 168, 210, 216, 270, 276, 288, 300, 318, 330, 336] . . . . . . . . n=19: [0, 36, 48, 60, 66, 78, 90, 126, 150, 168, 186, 210, 246, 258, 270, 276, 288, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 48, 60, 66, 78, 90, 126, 150, 168, 186, 210, 246, 258, 270, 276, 288, 300, 336] n=19: [0, 36, 48, 60, 66, 78, 120, 126, 150, 168, 186, 210, 216, 258, 270, 276, 288, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 48, 60, 66, 78, 120, 126, 150, 168, 186, 210, 216, 258, 270, 276, 288, 300, 336] n=19: [0, 36, 48, 60, 66, 90, 120, 126, 150, 168, 186, 210, 216, 246, 270, 276, 288, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 48, 60, 66, 90, 120, 126, 150, 168, 186, 210, 216, 246, 270, 276, 288, 300, 336] n=19: [0, 36, 48, 66, 78, 90, 120, 126, 150, 168, 186, 210, 216, 246, 258, 270, 288, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 48, 66, 78, 90, 120, 126, 150, 168, 186, 210, 216, 246, 258, 270, 288, 300, 336] n=19: [0, 36, 48, 78, 90, 96, 126, 138, 156, 168, 180, 198, 210, 240, 246, 258, 288, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 48, 78, 90, 96, 126, 138, 156, 168, 180, 198, 210, 240, 246, 258, 288, 300, 336] n=19: [0, 36, 60, 66, 78, 108, 120, 126, 150, 168, 186, 210, 216, 228, 258, 270, 276, 300, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 36, 60, 66, 78, 108, 120, 126, 150, 168, 186, 210, 216, 228, 258, 270, 276, 300, 336] n=19: [0, 48, 60, 66, 78, 90, 120, 126, 150, 168, 186, 210, 216, 246, 258, 270, 276, 288, 336] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 [0, 48, 60, 66, 78, 90, 120, 126, 150, 168, 186, 210, 216, 246, 258, 270, 276, 288, 336] Ошибок программа не выдала. Следовательно, все паттерны допустимые и согласно программе господина Петухова. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
В настоящее время у меня в поиске 19-ки по паттерну задействовано всего 65 паттернов. Кроме тех паттернов, которые найдены мной давным-давно, я нашла ещё насколько паттернов, продолжая 17-ки, найденные Ярославом Врублевским в конкурсе по кортежам. Ярослав много 17-ок нашёл, но не все они продолжаются до допустимого паттерна для 19-ки. И ещё пару паттернов получила, продолжая 17-ки, найденные в BOINC-проекте TBEG. Паттерны распределены по количеству формул (о количестве формул расскажу далее). Смотрите распределение паттернов в сообщениях https://boinc.progger.info/odlk/forum_thread.php?id=224&postid=10319 https://boinc.progger.info/odlk/forum_thread.php?id=224&postid=10539 Вот такой пока хилый штурм 19-ки у меня. Очень давно собиралась начать генерацию новых паттернов. Наконец-то случай подтолкнул. Генерация начата, благодаря помощи gris. gris спрашивает: что я собираюсь дальше делать с этими паттернами? Буду их варить и получать очень вкусное рагу из паттернов :) Я писала ему, что генерация теоретических паттернов - это только первый этап алгоритма. Алгоритм большой, он был разработан давно на форуме dxdy.ru. Разрабатывали и я, и Бегемот, который выложил все 384 формулы для минимального паттерна с диаметром 252. [Ну. и господин Петухов, конечно же, причастен. Выше я его цитировала.] Уже гораздо позже я разработала алгоритм поиска вписанных 19-ок, который базируется на алгоритме, разработанном ранее. Сейчас занимаюсь поиском вписанных 19-ок. Но пространство поиска о-ч-е-н-ь маленькое! Надо добавить новые паттерны, их огромное количество. Новые паттерны увеличат шансы нахождения 19-ки. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
В задействованных сейчас паттернах есть, например, такие паттерны: 384: 0 30 48 84 90 108 114 150 168 174 180 198 234 240 258 264 300 318 348 512: 0 18 48 90 114 168 174 198 228 234 240 270 294 300 354 378 420 450 468 2560: 0 30 138 204 258 294 324 348 414 504 594 660 684 714 750 804 870 978 1008 Перед паттерном указано количество формул. Последний паттерн с самым большим на данный момент диаметром 1008. Самым трудным для поиска является паттерн с минимальным диаметром 252. Сначала - некоторое время - я искала 19-ки только с минимальным диаметром (у меня формулы были только для этого паттерна). Потом поняла, что это почти голый номер и решила задействовать другие паттерны - с бОльшими диаметрами. А вот интересно: много ли паттернов с диаметром 1008? Сейчас попробую программой gris сгенерировать. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Кстати, о Ярославе Врублевском. Он был единственным участником конкурса по кортежам, в котором получил превосходные результаты. К сожалению, для него кортежи закончились вместе с конкурсом. Я много раз ему писала и пыталась привлечь к дальнейшему поиску 19-ки. Увы! Он отказался. Да, а 19-ку он так и не нашёл в конкурсе, хотя упорно искал. У него был такой алгоритм. Он искал 17-ки по паттернам и пытался их продолжить до 19-ки. Ничего не получилось. Зато он нашёл много 17-ок, в том числе и с минимальным диаметром 240. Однако минимальную 17-ку он не нашёл (то есть 17-ку. состоящую из самых маленьких последовательных простых чисел); она была найдена в BOINC-проекте Stop@home. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Цитата А вот интересно: много ли паттернов с диаметром 1008? Вчера сразу же и запустила генерацию паттернов с диаметром 1008 на Ахиллесе. Результатов нет на экране до сих пор. Очень интересно! Как сказано выше, у меня сейчас в работе есть такой паттерн с диаметром 1008 0, 30, 138, 204, 258, 294, 324, 348, 414, 504, 594, 660, 684, 714, 750, 804, 870, 978, 1008 Конечно, все паттерны, которые были получены продолжением 17-ок, я проверила программой господина Петухова. Сейчас ещё раз проверила показанный паттерн n=19: [0, 30, 138, 204, 258, 294, 324, 348, 414, 504, 594, 660, 684, 714, 750, 8 04, 870, 978, 1008] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 Программа говорит, что паттерн допустимый. Почему программа генерации паттернов до сих пор ничего не выдаёт? Очень много паттернов формируется и их проверка длится очень долго? |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Итак, поговорим о формулах для заданного паттерна. Это очень длинная история! Начало было 28 сентября 2015 года. Смотрите моё сообщение https://dxdy.ru/post1057355.html#p1057355 и следующее за ним сообщение Begemot82 https://dxdy.ru/post1057373.html#p1057373 В этих сообщениях дана разработка алгоритма для 19-ки с паттерном 0 6 12 30 42 72 90 96 120 126 132 156 162 180 210 222 240 246 252 Это паттерн с минимальным диаметром. Бегемот фактически переписал мои выкладки в эквивалентной форме. Но - очень важно: он привёл те самые 384 формулы для данного паттерна. Когда - после очень большого перерыва - я вернулась к поиску 19-ки по указанному паттерну с минимальным диаметром, почти всё напрочь забыла. Пришлось разбираться почти с нуля. Открыла две темы на форуме Math Help Planet Быстрая проверка набора чисел на простоту https://mathhelpplanet.com/viewtopic.php?f=48&t=76851 Напишите мне программку (китайская теорема об остатках) https://mathhelpplanet.com/viewtopic.php?f=59&t=77621 [Название второй темы не моё, переименовала Верховная Самодура, и с какого-то перепугу перенесла тему в раздел "Объявления участников форума". Какое она увидела тут объявление - одному Богу известно, да и то вряд ли.] Даже программу на PARI/GP вспомнила не сразу (об этом и писалось в теме Быстрая проверка набора чисел на простоту). Хорошо, что в архиве сохранилась одна из программ, хотя и для другого алгоритма. А алгоритм получения формул для паттерна был забыт напрочь. Тоже помог рабочий файл, сохранившийся в архиве с тех времён. Всё начиналось вот с такой таблички (она есть в рабочем файле, но как получается, не написано) 2: (1) 3: (2,1) 5: (3,2) 7: (3,2) 11: (10,3) 13: (11,9) 17: (9,8,7,6) Это к паттерну для 17-ки. Вот по этой табличке и получаются формулы для паттерна. А табличка, естественно, получается по паттерну. Смотрите мой вопрос здесь https://mathhelpplanet.com/viewtopic.php?p=445546#p445546 Показанная табличка для паттерна 0 6 24 36 66 84 90 114 120 126 150 156 174 204 216 234 240 |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Ответ на мой вопрос, как формируется табличка по паттерну, дан в сообщении https://mathhelpplanet.com/viewtopic.php?p=445580#p445580 Цитирую Тут все просто Для показанного паттерна сформирована такая табличка 2 (1) 3 (1, 2) 5 (2, 3) 7 (3, 6) 11 (8, 10) 13 (5, 10) Итак, алгоритм формирования таблички есть. Надо написать программку, конечно, на PARI/GP. Я такую программку написала, но... она очень примитивная и даёт не окончательный результат, то есть сформированную табличку. Табличку я потом по результатам программки формирую глазками и ручками. Пока не показываю свою программку. А ничего лучше придумать не смогла, потому что мои познания в PARI/GP очень мизерные. Господа! Задачка для всех, кто знает PARI/GP. Напишите, пожалуйста, программку по изложенному выше алгоритму. На входе паттерн, на выходе готовая табличка. gris для вас тоже задачка :) Вы устали от дискуссии по генерации паттернов и ушли отдыхать. Нет, отдыхать рано :) До приготовления рагу из ваших паттернов очень и очень далеко. Кстати, у меня ваша программа генерации паттернов с диаметром 1008 что-то в глубокой спячке. Маркер мигает, на экране ничего не появляется - ни одного паттерна! Не подскажете, как вывести программу из спячки? :) Я предлагаю сказать ей, чтобы она сгенерировала только паттерны, начинающиеся с 0 30 - для начала. Такой паттерн у меня есть - для примера 0, 30, 138, 204, 258, 294, 324, 348, 414, 504, 594, 660, 684, 714, 750, 804, 870, 978, 1008 Это допустимый паттерн, согласно программе господина Петухова. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Своей программкой я сформировала таблички для всех имеющихся у меня паттернов для 19-ки. Пример паттерн для 19-ки 0 6 42 90 102 120 126 132 156 186 216 240 246 252 270 282 330 366 372 табличка 2: 1 3: 1, 2 5: 1, 2 7: 2, 4 11: 3, 10 13: 6, 12 17: 6, 13 19: 2, 6, 9, 10, 11, 16, 17, 18 Это очень долгая работа - по моей примитивной программке формировать таблички. Я выполнила её всего для 65 паттернов. Для 1000 паттернов по моей программе это сделать нереально. Нужна более совершенная программа, которая по введённому в неё паттерну сразу выдаст готовую табличку. А ещё лучше: для введённого в неё пакета паттернов выдаст готовые таблички для всех паттернов пакета. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Получив табличку, мы уже можем получить формулы для данного паттерна. Об этом расскажу чуть позже. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
gris прислал письмо, цитирую для диаметра 1008 количество предварительных паттернов 39 443 226 966. допустимых полмиллиона Спасибо! Странно. Значит, у меня программа зависла. Может, какой-то сбой. Сейчас попробую заново запустить. Прервала, перезаписала в файл программу и запустила снова. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Присланные gris паттерны с диаметром 1008 проверила программой господина Петухова. Вот окончание проверки . . . . . . . . . n=19: [0, 30, 168, 378, 384, 414, 420, 450, 498, 504, 510, 558, 588, 594, 624, 630, 840, 978, 1008] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 [0, 30, 168, 378, 384, 414, 420, 450, 498, 504, 510, 558, 588, 594, 624, 630, 840, 978, 1008] n=19: [0, 30, 168, 378, 384, 414, 450, 468, 474, 504, 534, 540, 558, 594, 624, 630, 840, 978, 1008] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 [0, 30, 168, 378, 384, 414, 450, 468, 474, 504, 534, 540, 558, 594, 624, 630, 840, 978, 1008] n=19: [0, 30, 168, 378, 384, 414, 450, 468, 498, 504, 510, 540, 558, 594, 624, 630, 840, 978, 1008] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 [0, 30, 168, 378, 384, 414, 450, 468, 498, 504, 510, 540, 558, 594, 624, 630, 840, 978, 1008] n=19: [0, 30, 168, 378, 384, 414, 450, 474, 498, 504, 510, 534, 558, 594, 624, 630, 840, 978, 1008] 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 [0, 30, 168, 378, 384, 414, 450, 474, 498, 504, 510, 534, 558, 594, 624, 630, 840, 978, 1008] Ошибок программа проверки не выдала. Следовательно, все паттерны допустимые. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
А, новая программка приехала от gris. Как понимаю, это частичная генерация паттернов с диаметром 1008. Вот что программка нарисовала в консоли (06:16) gp > \r pat19_1008.txt [0, 30, 138, 204, 210, 258, 264, 288, 294, 504, 714, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 324, 504, 684, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 330, 504, 678, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 348, 504, 660, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 384, 504, 624, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 390, 504, 618, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 408, 504, 600, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 414, 504, 594, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 420, 504, 588, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 450, 504, 558, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 468, 504, 540, 720, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 324, 504, 684, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 330, 504, 678, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 348, 504, 660, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 384, 504, 624, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 390, 504, 618, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 408, 504, 600, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 414, 504, 594, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 420, 504, 588, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 450, 504, 558, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 468, 504, 540, 714, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 330, 504, 678, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 348, 504, 660, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 384, 504, 624, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 390, 504, 618, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 408, 504, 600, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 414, 504, 594, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 420, 504, 588, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 450, 504, 558, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 468, 504, 540, 684, 744, 750, 798, 804, 87 0, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 330, 348, 504, 660, 678, 744, 750, 798, 804, 87 0, 978, 1008] for tuple diameter=1008 number of pretuples=93648 after (%5,7,11) good:31 Замечательно! Это программа очень быстро нарисовала - за несколько секунд. Ну вот, уже 31 паттерн :) gris пишет, что у меня не сбой. Тогда просто слишком много паттернов и программа захлебнулась. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Цитата для диаметра 1008 количество предварительных паттернов 39 443 226 966. допустимых полмиллиона Конечно, полмиллиона паттернов с диаметром 1008 пока не будем генерировать :) Надо поработать с диаметрами поменьше. Вот господин Петухов Супермен, у него программа работала "для любого паттерна". |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Вставила в программку вывод в выходной файл. Вот немного посимпатичней паттерны [0, 30, 138, 204, 210, 258, 264, 288, 294, 504, 714, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 324, 504, 684, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 330, 504, 678, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 348, 504, 660, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 384, 504, 624, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 390, 504, 618, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 408, 504, 600, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 414, 504, 594, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 420, 504, 588, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 450, 504, 558, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 288, 468, 504, 540, 720, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 324, 504, 684, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 330, 504, 678, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 348, 504, 660, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 384, 504, 624, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 390, 504, 618, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 408, 504, 600, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 414, 504, 594, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 420, 504, 588, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 450, 504, 558, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 294, 468, 504, 540, 714, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 330, 504, 678, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 348, 504, 660, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 384, 504, 624, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 390, 504, 618, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 408, 504, 600, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 414, 504, 594, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 420, 504, 588, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 450, 504, 558, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 324, 468, 504, 540, 684, 744, 750, 798, 804, 870, 978, 1008] [0, 30, 138, 204, 210, 258, 264, 330, 348, 504, 660, 678, 744, 750, 798, 804, 870, 978, 1008] for tuple diameter=1008 number of pretuples=93648 after (%5,7,11) good:31 Сейчас я их проверю программой господина Петухова. Готово! Проверила. Программа ошибок не выдала. Все паттерны допустимые. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Генерирую паттерны с диаметром 360. Тут всё прекрасно. Программа за пару минут сгенерировала все 226 допустимых паттернов. Показываю начало и конец списка 0 6 24 54 60 66 96 126 174 180 186 234 264 294 300 306 336 354 360 0 6 24 54 66 84 90 144 150 180 210 216 270 276 294 306 336 354 360 0 6 24 54 66 84 96 144 150 180 210 216 264 276 294 306 336 354 360 0 6 24 54 66 84 96 144 174 180 186 216 264 276 294 306 336 354 360 0 6 24 54 66 84 96 150 174 180 186 210 264 276 294 306 336 354 360 0 6 24 54 66 84 144 150 174 180 186 210 216 276 294 306 336 354 360 0 6 24 54 66 96 144 150 174 180 186 210 216 264 294 306 336 354 360 0 6 24 54 84 90 96 150 174 180 186 210 264 270 276 306 336 354 360 0 6 24 54 84 96 144 150 174 180 186 210 216 264 276 306 336 354 360 0 6 24 60 66 84 90 96 126 180 234 264 270 276 294 300 336 354 360 0 6 24 60 66 84 90 96 144 180 216 264 270 276 294 300 336 354 360 0 6 24 60 66 84 90 126 144 180 216 234 270 276 294 300 336 354 360 0 6 24 60 66 84 90 126 150 180 210 234 270 276 294 300 336 354 360 0 6 24 60 66 84 90 144 150 180 210 216 270 276 294 300 336 354 360 0 6 24 60 66 84 96 126 144 180 216 234 264 276 294 300 336 354 360 0 6 24 60 66 84 96 126 150 180 210 234 264 276 294 300 336 354 360 0 6 24 60 66 84 96 144 150 180 210 216 264 276 294 300 336 354 360 0 6 24 60 66 84 126 144 150 180 210 216 234 276 294 300 336 354 360 0 6 24 60 66 90 96 126 144 180 216 234 264 270 294 300 336 354 360 0 6 24 60 66 90 96 126 174 180 186 234 264 270 294 300 336 354 360 . . . . . . . . . . 0 36 54 66 84 114 120 126 150 180 210 234 240 246 276 294 306 324 360 0 36 54 84 96 114 120 126 150 180 210 234 240 246 264 276 306 324 360 0 42 48 60 90 102 108 138 168 180 192 222 252 258 270 300 312 318 360 0 42 48 60 90 102 132 138 168 180 192 222 228 258 270 300 312 318 360 0 42 72 78 108 120 138 150 162 180 198 210 222 240 252 282 288 318 360 0 48 60 90 102 108 132 138 168 180 192 222 228 252 258 270 300 312 360 0 48 60 90 102 132 138 150 168 180 192 210 222 228 258 270 300 312 360 0 54 60 66 84 96 126 144 150 180 210 216 234 264 276 294 300 306 360 0 54 60 66 84 96 126 144 174 180 186 216 234 264 276 294 300 306 360 0 54 60 66 84 96 126 150 174 180 186 210 234 264 276 294 300 306 360 0 54 60 66 84 96 144 150 174 180 186 210 216 264 276 294 300 306 360 0 54 60 66 84 126 144 150 174 180 186 210 216 234 276 294 300 306 360 0 54 60 66 96 126 144 150 174 180 186 210 216 234 264 294 300 306 360 0 54 60 84 96 126 144 150 174 180 186 210 216 234 264 276 300 306 360 0 54 66 84 96 126 144 150 174 180 186 210 216 234 264 276 294 306 360 0 60 66 84 96 126 144 150 174 180 186 210 216 234 264 276 294 300 360 for tuple diameter=360 number of pretuples=4292145 good:226 Замечательно! Вот из этих паттернов тоже надо рагу приготовить :) Сформировать все таблички, найти все формулы и записать это всё в программу поиска вписанных 19-ок. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Итак, что же такое формулы для заданного паттерна и как их найти? Смотрим сообщение Бегемота https://dxdy.ru/post1057373.html#p1057373 Цитирую Для поиска симметричного кортежа из 19 последовательных простых чисел с минимальным диаметром 252 То есть для данного паттерна формул будет 384. Одна из них уже показана. Ещё могут быть такие формулы Qk=3297661+9699690k Qk=6530891+9699690k Qk=7177537+9699690k Qk=711077+9699690k Qk=1911991+9699690k Qk=5145221+9699690k и т. д. Все слагаемые для 384 формул приведены в указанном сообщении (см. оффтоп). Осталось рассказать, как же найти эти 384 слагаемых в формулах. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Надо сформировать для заданного паттерна 0 6 12 30 42 72 90 96 120 126 132 156 162 180 210 222 240 246 252 табличку, аналогичную этой 2: 1 3: 1, 2 5: 1, 2 7: 2, 4 11: 3, 10 13: 6, 12 17: 6, 13 19: 2, 6, 9, 10, 11, 16, 17, 18 (эта табличка сформирована для другого паттерна, вот для этого 0 6 42 90 102 120 126 132 156 186 216 240 246 252 270 282 330 366 372). Господа! Вы уже написали программку для формировании таблички? :) Я сейчас сформирую табличку для заданного паттерна своей программкой. [Уже формировала её, конечно, потому что этот паттерн у меня в работе, но таблички не сохраняла для всех паттернов.] А вы сформируйте по своей программке и сверьте с моими результатами. Готово! У меня получилась такая табличка 2: 1 3: 1, 2 5: 1, 2 7: 3, 4 11: 4, 8 13: 3, 5 17: 1, 2 19: 2, 3, 11, 12, 16, 17 А далее комбинируются цифирки из каждой строчки таблички. Например, (1, 1, 1, 3, 4, 3, 1, 2) (1, 1, 1, 3, 4, 3, 1, 3) (1, 1, 1, 3, 4, 3, 1, 11) . . . . . . . . . . Каждая такая комбинация даёт как раз одно слагаемое для формулы. Комбинаций для этой таблички будет ровно 384. Вот оно - количество формул. Наконец, последний шаг: по показанным комбинациям найти эти самые слагаемые. Раньше (в том самом 2015 году) я пользовалась Вольфрам Альфа для вычисления слагаемых. А недавно нашла аналогичную функцию в PARI/GP. Сейчас покажу всё это. Смотрим сообщение на форуме Math Help Planet https://mathhelpplanet.com/viewtopic.php?p=445566#p445566 Цитирую Нашла в PARI/GP соответствующую функцию. Всё замечательно! Однако... вычислять слагаемое для 384 комбинаций по одной - это весьма нудное занятие. А если формул 512... или 1152... Вот я на форуме MHP и просила написать для этого программу. Программу форумчанин написал. Но исполняемая программа у меня работать не захотела. Пришлось пользоваться онлайн-компилятором Питона и там вычислять. Далее дам ссылку на онлайн-компилятор и приведу программу. |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Online compiler https://www.programiz.com/python-programming/online-compiler/ Программа (написана форумчанином форума Math Help Planet) from itertools import product from math import prod def chinese_remainder(primes, a): sum, mod = 0, prod(primes) for p_i, a_i in zip(primes, a): n = mod // p_i sum += a_i * mul_inv(n, p_i) * n return sum % mod def mul_inv(a, b): # extended Euclid algo. Return x such ax = 1 (mod b) b0 = b x0, x1 = 0, 1 if b == 1: return 1 while a > 1: q = a // b a, b = b, a % b x0, x1 = x1 - q * x0, x0 if x1 < 0: x1 += b0 return x1 primes = list(map(int, input("Введите через пробел массив модулей: ").split())) m = [] for i in primes: m.append(list(map(int, input(f"Введите через пробел набор остатков по модулю {i}: ").split()))) print('\n'.join(map(str, sorted([chinese_remainder(primes, x) for x in product(*m)])))) Идём в онлайн-компилятор, вводим программу, далее делаем ввод данных (на запрос программы) и - все 384 слагаемых выдаются программой на блюдечке с голубой каёмочкой. Можете попробовать. Я сейчас тоже выполню программу для указанного паттерна по полученной табличке 0 6 12 30 42 72 90 96 120 126 132 156 162 180 210 222 240 246 252 2: 1 3: 1, 2 5: 1, 2 7: 3, 4 11: 4, 8 13: 3, 5 17: 1, 2 19: 2, 3, 11, 12, 16, 17 |
Send message Joined: 6 Apr 17 Posts: 14351 Credit: 0 RAC: 0 |
Показываю протокол работы программы, конечно, выведенные слагаемые (384 штуки) показываю частично Введите через пробел массив модулей: 2 3 5 7 11 13 17 19 Введите через пробел набор остатков по модулю 2: 1 Введите через пробел набор остатков по модулю 3: 1 2 Введите через пробел набор остатков по модулю 5: 1 2 Введите через пробел набор остатков по модулю 7: 3 4 Введите через пробел набор остатков по модулю 11: 4 8 Введите через пробел набор остатков по модулю 13: 3 5 Введите через пробел набор остатков по модулю 17: 1 2 Введите через пробел набор остатков по модулю 19: 2 3 11 12 16 17 19687 21557 30397 40121 55591 116197 140507 165701 200567 225761 . . . . . . 9339257 9354881 9373291 9397601 9473677 9498871 9533737 9558931 9583241 9643847 9659317 9669041 9677881 9679751 > Здесь вы видите, что программа запрашивает и как это вводить. Наборы остатков берутся из таблички. Программа вывела те самые 384 слагаемых, которые показал в своём сообщении Бегемот. С этими слагаемыми и запишутся 384 формулы для паттерна с диаметром 252 для 19-ки. Уф! Теперь всё. Господа! Как поняли? Приём! :) Алгоритм не самый простенький. Да, а ещё надо показать, как же ищутся вписанные 19-ки :) Ну, это попозже. |
©2024 (C) Progger