Симметричный кортеж длины 19 с минимальным диаметром из последовательных простых чисел

Message boards : Cafe : Симметричный кортеж длины 19 с минимальным диаметром из последовательных простых чисел
Message board moderation

To post messages, you must log in.

Previous · 1 · 2 · 3 · 4 · Next

AuthorMessage
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13503 - Posted: 31 Jan 2024, 0:06:41 UTC
Last modified: 31 Jan 2024, 0:22:06 UTC

Цитата
Надо сделать выполнение сразу на 10 периодах.
Запущу программу на Ахиллесе-3.

gris,
ау!
Вам задание :)

Программа получена от gris и запущена на Ахиллесе-3.
Обрабатываться будет сразу 10 периодов, то есть
304250263527210*10 = 3042502635272100 = 3,0425026352721*10^15

Интересно время.
Посмотрим.

Цитата
Программа работает на одном периоде, но этот период большой - 304250263527210.
Время выполнения на черепашке
time = 1h, 26min, 39,357 ms.

На черепашке 10 периодов обрабатывались бы 14,33 час.
На Ахиллесе-3 будет больше, потому что производительность Ахиллеса-3 меньше, чем у черепашки.

Напомню: это программа поиска 19-ки с минимальным диаметром на периоде 41#.
Программа написана gris и модифицирована мной.
Программа ищет центральные тройки в ключевой 17-ке, сидящей в 19-ке с минимальным диаметром, а также центральные тройки в 19-ке с минимальным диаметром.
Ну, само собой, 19-ку с минимальным диаметром тоже ищет.
Ключевые 17-ки, увы, могут потеряться, как и приближения к ключевой 17-ке.

Программа только что испечена, поэтому она проходит тестирование.
Приближения к ключевой 17-ке с центральной тройкой и приближения к ключевой 19-ке с центральной тройкой как раз и нужны для проверки работы программы.
И не только для этого, конечно.

Вот уже два приближения к ключевой 17-ке с центральной тройкой найдены

3954328813706182630332287: [0, 6, 24, 50, 62, 84, 92, 114, 120, 126, 150, 156, 182, 186, 224, 234, 240]
3954328815892553480546537: [0, 6, 14, 50, 62, 84, 102, 114, 120, 126, 150, 162,164, 174, 176, 206, 240]

Это на черепашке найдено, когда программа работала на одном периоде.
Посмотрим. что даст Ахиллес-3 на 10 периодах.
ID: 13503 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13504 - Posted: 31 Jan 2024, 0:41:26 UTC
Last modified: 31 Jan 2024, 0:44:40 UTC

А черепашка тестирует эту же программу, но на периоде 43#

(04:29) gp > \r formulae_43_19_17_new.txt
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961000 from number
12996961000 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
13082761331670030 period
search in 170036138800023444778830000 (1.7 E26) - 170036138813106206110500030 (1
.7 E26)
central 3: [120,126,132]
prove by 43#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43]
3822059520 formulae expected

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

Обратите внимание на количество формул
3822059520 formulae expected

Потянет ли черепашка столько формул?
Понятно, что формулы хватаются на лету, то есть никуда не записываются.

Период стал в 43 раза больше.
Формул на периоде 41# было
159252480 formulae expected
а на периоде 43# стало
3822059520 formulae expected
то есть в 24 раза больше.

Если черепашка вырулит, посмотрим на время.
ID: 13504 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13505 - Posted: 31 Jan 2024, 0:50:55 UTC
Last modified: 31 Jan 2024, 0:55:28 UTC

ВНИМАНИЕ! ТЕСТ!

Опубликую программу. которая сейчас тестируется на черепашке, период 43#

\\r C:/GRIS/formulae_41_19_17.gp
default(parisizemax,10^8)
default(timer,1)

{
\\enter pattern
pt=[0, 6, 12, 30, 42,   72,   90, 96, 120, 126,
132, 156, 162, 180, 210, 222, 240, 246, 252];
pt17=[0, 6, 24, 36, 66, 84, 90, 114, 120, 126, 150, 156, 174, 204, 216, 234, 240];
w=43;
np1=12996961000; print(np1," from number");
np2=12996961000; print(np2," to   number");
central=3;
\\ end of data
\\periods
\\37 7420738134810
\\41 304250263527210
\\43 13082761331670030
\\47 614889782588491410

pl=#pt; 
nw=primepi(w);
printf("%d \n",pt);
print("patterns length ",pl);
prs=primes(nw);
period=vecprod(prs);
print(period," period");
vp=vector(np2-np1+1, i, period*(np1-1+i)); lvp=#vp;
printf("search in %d (%.1E) - %d (%.1E)\n",
        vp[1],vp[1],vp[lvp]+period,vp[lvp]+period);
cp=vector(central,i,pt[pl\2-central\2+i]);
printf("central %d: %d\n", central,cp);
printf("prove by %d#: ",prs[nw]);print(prs); 

vmy=vector(40); pat1=vector(17);

lpr=1;
wd=vector(nw);

for( ip=1,nw, 
  rip=[];
  for( r=1,prs[ip]-1,  
    for( i=1,pl, if( (r+pt[i])%prs[ip]==0,  next(2))); 
  rip =concat(rip,r)  );
  lpr=lpr*#rip;
  wd[ip]=rip;
); \\for ip
print(lpr," formulae expected");

k=0;
forvec(v=vector(#wd,i,[1,#wd[i]]), k++; 
  form=lift(chinese(  vector( #wd,j,Mod( wd[j][v[j]], prs[j]) )  ));

  \\ начало проверки кортежа
  
  foreach(vp,bpp, 
   
  bpt=form+bpp; 
if(ispseudoprime(bpt+6) && ispseudoprime(bpt+246),
l=0; 
forprime(p=bpt+6,bpt+246, l++; vmy[l]=p; );
if(l==17,
for(m=1,17, pat1[m]=vmy[m]-vmy[1]; );
if(pat1[8]==114 && pat1[9]==120 && pat1[10]==126, print(vmy[1],": ",pat1);
if(pat1==pt17, print(vmy[1],": ",pat1);
);););
    );\\ if
    
        if(ispseudoprime(bpt) && ispseudoprime(bpt+252),
l=0; 
forprime(p=bpt,bpt+252, l++; vmy[l]=p; );
if(l==19,
for(m=1,19, pat2[m]=vmy[m]-vmy[1]; );
if(pat2[9]==120 && pat2[10]==126 && pat2[11]==132, print(vmy[1],": ",pat2);
if(pat2==pt, print(vmy[1],": ",pat2);
);););
    );\\ if 
    
);\\ foreach

   \\ конец проверки кортежа
);\\ forvec
}


Имя программы: formulae_43_19_17_new.txt
(это я для себя, чтобы не забыть, у меня уже десятки различных программы, трудно помнить все имена).
Кстати, в начале программы вы видите имя программы gris, которая мной модифицировалась
formulae_41_19_17.gp
ID: 13505 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13506 - Posted: 31 Jan 2024, 0:52:31 UTC
Last modified: 31 Jan 2024, 1:12:31 UTC

Черепашка пыхтит :)
Очень интересно - вырулит ли?
Но ошибок пока не выдалось, уже хорошо.

Снова цитата
Программа работает на одном периоде, но этот период большой - 304250263527210.
Время выполнения на черепашке
time = 1h, 26min, 39,357 ms.

Если бы черепашка обрабатывала 43 таких периода, ей потребовалось бы 61,63 час.

Да-а-а...
Вряд ли черепашка вырулит на периоде 43# до отбоя.
Даже если предположить, что убыстрение будет примерно в 2 раза, это примерно 30 часов.
Ладно, не буду прерывать, пусть работает.

Кстати, диапазон проверки в этой программе
search in 170036138800023444778830000 (1.7 E26) - 170036138813106206110500030 (1.7 E26)

Залезли уже в область 27-значных чисел.
ID: 13506 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13507 - Posted: 31 Jan 2024, 3:28:44 UTC
Last modified: 31 Jan 2024, 3:37:40 UTC

Цитата
Программа только что испечена, поэтому она проходит тестирование.

Тестирование на 10 периодах на Ахиллесе-3 выскочило с ошибкой

? \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961026 from number
12996961035 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 3954328817213377660517460 (4.0 E24) - 3954328820255880295789560 (4.0 E24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
3954328819086333957597547: [0, 16, 60, 70, 72, 76, 102, 114, 120, 126, 150, 154, 160, 192, 196, 204, 240]
3954328819140084393516727: [0, 36, 42, 52, 64, 90, 102, 114, 120, 126, 130, 160, 174, 192, 202, 216, 240]
  ***   at top-level: ...;if(l==19,for(m=1,19,pat2[m]=vmy[m]-vmy[1];);i
  ***                                             ^---------------------
  ***   incorrect type in &_[_] OCcompo1ptr [not a vector] (t_POL).
  ***   Break loop: type 'break' to go back to GP prompt
break>

Досадная ошибка, забыла объявить вектор pat2.
И ведь когда на одном периоде тестировала, этот вектор был объявлен, а потом потерялся, потому что посылала gris исходный вариант программы для внесения изменений (чтобы проверялось сразу на 10 периодах).
Ну ничего, всё бывает.
Зато и на черепашке тест прервала на периоде 43#, потому что она всё равно этот тест не потянет за приемлемое время.
А там та же самая ошибка.

Кстати, программа уже нашла две центральные тройки в ключевой 17-ке.
А ошибка возникла в новом добавленном куске, когда программа начала проверять 19-ку.
Это значит. что нашлась 19-ка с правильными первым и последним элементами. Хорошо!

Сейчас ошибку исправлю и перезапущу программу на 10 периодов на Ахиллесе-3.
Тест на периоде 43# пока откладывается.
Его тоже надо на Ахиллесе-3 выполнять.

PS. Странно, однако, что PARI/GP проверяет все переменные не сразу, а только в процессе выполнения программы.
ID: 13507 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13508 - Posted: 31 Jan 2024, 3:47:26 UTC

Кстати о птичках...

Программа работает на одном периоде, но этот период большой - 304250263527210.
Время выполнения на черепашке
time = 1h, 26min, 39,357 ms.

Это время было ещё до вставки дополнительной проверки - центральной тройки в 19-ке.

Так что, сравнение времени с 10 периодами на Ахиллесе-3 будет некорректно.
К тому же, как уже говорила, производительность Ахиллеса-3 ниже, чем у черепашки.
Поэтому время на Ахиллесе-3 будет больше, чем 1h, 26min, 39,357 ms * 10, то есть больше 14,33 ч.

Ждём.
ID: 13508 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13509 - Posted: 31 Jan 2024, 4:00:30 UTC

Запустила на черепашке новый тест, на одном периоде (41#).
Это уже с добавленной проверкой 19-ки.

(07:54) gp > \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961026 from number
12996961026 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 3954328817213377660517460 (4.0 E24) - 3954328817517627924044670 (4.0 E
24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected

С этого же периода начинается проверка на Ахиллесе-3.
Только там 10 периодов.
ID: 13509 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13510 - Posted: 31 Jan 2024, 6:07:37 UTC
Last modified: 31 Jan 2024, 6:54:07 UTC

Напомню: первоначальная версия этой программы выводила результаты в таком виде
1277851283665846735667: [1,0,1,0,1,1,1,1,1,1,1,1,1,0,0,1,0,0,1]

Помните, как я тестировала эту версию и заворожённо смотрела на эти нули и единички?

А потом выяснилось, что
1) эти единички ничего не значат для нужных мне приближений;
2) программа теряет ключевые 17-ки.

Смотрите об этом в теме "К штурму 19-ки".

gris писал в то же время, когда я тестировала программу
я для контроля запустил по вашим следам. Формулы совпадают, но вывод по ним не так радует.

На мой вопрос: "Что его не радует?" последовал ответ

Не радует то, что наличие простых по краям ни о чём не говорит. Это спагеттина по паттерну. А в ней куча посторонних простых. Сейчас надо определиться с механизмами ввода и вывода информации. А отбор можно изменить по вашему алгоритму.
Я пока не уверен в нём

Да, всё правильно.
Именно: в спагеттине, полученной по паттерну 19-ки с минимальным диаметром, "куча посторонних простых", и даже не простых!

Хорошая мысль "А отбор можно изменить по вашему алгоритму" так и осталась не реализованной.
Поэтому мне пришлось самой модифицировать программу. как раз блок проверки кортежа.

PS. Вот оно - показанное выше приближение к 19-ке с минимальным диаметром
1277851283665846735667: [1,0,1,0,1,1,1,1,1,1,1,1,1,0,0,1,0,0,1]

1277851283665846735667, 1277851283665846735679, 1277851283665846735709, 1277851283665846735721, 1277851283665846735739, 1277851283665846735757, 1277851283665846735763, 1277851283665846735787, 1277851283665846735793, 1277851283665846735799,
1277851283665846735823, 1277851283665846735829, 1277851283665846735841, 1277851283665846735889, 1277851283665846735919, 
15

Здесь всего 15 последовательных простых чисел от первого до последнего элемента (включая и их), которые (элементы) являются простыми числами и дают правильный диаметр кортежа (252).
Всего 15, а надо, чтобы их было 19 !
Вот почему плохой компот.

Посмотрите ещё раз для сравнения моё приближение к 19-ке с минимальным диамтером

{145801749011460565237, *145801749011460565241, *145801749011460565267, *145801749011460565273,
*145801749011460565313, *145801749011460565319, *145801749011460565333, *145801749011460565337,
145801749011460565357, 145801749011460565363, 145801749011460565369, 145801749011460565393,
145801749011460565399
, *145801749011460565421, *145801749011460565427, *145801749011460565433,
*145801749011460565447, *145801749011460565453, 145801749011460565489}

Понимаете разницу?

Но gris написал
А отбор можно изменить по вашему алгоритму.
Я пока не уверен в нём

Это меня весьма озадачило.
Мой алгоритм проверки кортежей действует и в поиске ключевых 17-ок.
Пока ошибок не обнаружено, программа тестируется уже больше месяца.
Все найденные приближения к к ключевой 17-ке правильные.
Конечно, подводные камни в программе возможны, иногда они проявляются очень не сразу.
Посмотрим дальше на результаты.
Меня, к примеру, удивляет, что до сих пор не найдена ни одна центральная пятёрка в ключевых 17-ах.
Может, так оно и есть (нету пятёрок пока), а может как раз и подводный камень в программе.
Однако я тестировала программу и на известных ключевых 17-ах Врублевского, тесты успешно выполнились, ключевые 17-ки программа нашла.
ID: 13510 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13511 - Posted: 31 Jan 2024, 8:18:24 UTC
Last modified: 2 Feb 2024, 9:38:11 UTC

Тест на черепашке завершён

(09:32) gp > \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961026 from number
12996961026 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 3954328817213377660517460 (4.0 E24) - 3954328817517627924044670 (4.0 E
24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
3954328817477541208351733: [0, 6, 8, 54, 66, 104, 110, 114, 120, 126, 150, 164,
168, 174, 180, 204, 240]
time = 2h, 26min, 17,084 ms.

Теперь это правильное время обработки одного периода 41#.
Здесь проверяются центральные тройки и в ключевых 17-ах и в 19-ах с минимальным диаметром.

И нашлась в этом проходе центральная тройка в ключевой 17-ке
3954328817477541208351733: [0, 6, 8, 54, 66, 104, 110, 114, 120, 126, 150, 164,168, 174, 180, 204, 240]

Ждём завершения обработки на Ахиллесе-3 10 периодов (точно таких же 41#).
Время будет больше, чем
2h, 26min, 17,084 ms *10.
А проверено будет
304250263527210 *10 = 3042502635272100 = 3,0425026352721*10^15.
ID: 13511 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13512 - Posted: 31 Jan 2024, 8:24:28 UTC
Last modified: 31 Jan 2024, 8:29:51 UTC

Приближение к ключевой 17-ке с центральной тройкой найдено неплохое, 8 правильных элементов

(12:02) gp > \r spg_by_centre.gp
[6, 6, 8]
 3 3954328817477541208351733:
    [  0,  6,  8, 54, 66,104,110,114,120,126,150,164,168,174,180,204,240]
    [  0,  0,-16, 18,  0, 20, 20,  0,  0,  0,  0,  8, -6,-30,-36,-30,  0]

Сейчас разверну для проверки.

Готово!

{3954328817477541208351733, 3954328817477541208351739, *3954328817477541208351741, *3954328817477541208351787,
3954328817477541208351799, *3954328817477541208351837, *3954328817477541208351843, 3954328817477541208351847,
3954328817477541208351853, 3954328817477541208351859, 3954328817477541208351883
, *3954328817477541208351897,
*3954328817477541208351901, *3954328817477541208351907, *3954328817477541208351913, *3954328817477541208351937,
3954328817477541208351973}
ID: 13512 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13513 - Posted: 31 Jan 2024, 8:43:43 UTC
Last modified: 31 Jan 2024, 8:48:51 UTC

Пока найдены центральные тройки в ключевых 17-ах

3954328813706182630332287: [0, 6, 24, 50, 62, 84, 92, 114, 120, 126, 150, 156, 182, 186, 224, 234, 240]
3954328815892553480546537: [0, 6, 14, 50, 62, 84, 102, 114, 120, 126, 150, 162,164, 174, 176, 206, 240]
3954328817477541208351733: [0, 6, 8, 54, 66, 104, 110, 114, 120, 126, 150, 164,168, 174, 180, 204, 240]
3954328819086333957597547: [0, 16, 60, 70, 72, 76, 102, 114, 120, 126, 150, 154, 160, 192, 196, 204, 240]
3954328819140084393516727: [0, 36, 42, 52, 64, 90, 102, 114, 120, 126, 130, 160, 174, 192, 202, 216, 240]

Замечание: центральные кортежи бОльших длин программа не ищет.
Если они будут, мы увидим их при анализе решений программой gris.

Центральные тройки в 19-ах с минимальным диаметром пока не найдены.
В 19-ах тоже не ищутся центральные кортежи бОльших длин, чем тройки.

PS. Первое из показанных приближений выше развёрнуто, покажу ещё раз

{3954328813706182630332287, 3954328813706182630332293, 3954328813706182630332311, *3954328813706182630332337,
*3954328813706182630332349, 3954328813706182630332371, *3954328813706182630332379, 3954328813706182630332401,
3954328813706182630332407, 3954328813706182630332413, 3954328813706182630332437, 3954328813706182630332443
,
*3954328813706182630332469, *3954328813706182630332473, *3954328813706182630332511, 3954328813706182630332521,
3954328813706182630332527
}

11 правильных элементов!
ID: 13513 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13514 - Posted: 31 Jan 2024, 8:57:15 UTC
Last modified: 31 Jan 2024, 10:41:45 UTC

Черепашка рвётся в бой :)
Дала ей новый тест - та же самая программа на периоде 37# (обрабатывается только один период)

(12:43) gp > \r formulae_41_19_17_new.gp
12996961026 from number
12996961026 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
7420738134810 period
search in 96447044322277503915060 (9.6 E22) - 96447044329698242049870 (9.6 E22)
central 3: [120,126,132]
prove by 37#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]
6635520 formulae expected

Диапазон не стала масштабировать, поэтому он другой (это зависит от периода).
Ну, не столь важно; думаю, это сильно на скорость программы не повлияет.

Тест завершился

(12:43) gp > \r formulae_41_19_17_new.gp
12996961026 from number
12996961026 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
7420738134810 period
search in 96447044322277503915060 (9.6 E22) - 96447044329698242049870 (9.6 E22)
central 3: [120,126,132]
prove by 37#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]
6635520 formulae expected
time = 5min, 58,818 ms.

Итак,
период 7420738134810 (37#)
time = 5min, 58,818 ms.
период 304250263527210 (41#)
time = 2h, 26min, 17,084 ms.

На периоде 37#
примерно 8,9*10^13 в час
на периоде 41#
примерно 12*10^13 в час

Убыстрение примерно в 1,35.

Ну, ещё разница в числах диапазонов проверки должна быть учтена.

на периоде 37#
search in 96447044322277503915060 (9.6 E22) - 96447044329698242049870 (9.6 E22)
на периоде 41#
search in 3954328817213377660517460 (4.0 E24) - 3954328817517627924044670 (4.0 E24)

И тогда убыстрение будет побольше, чем в 1,35 раз.
ID: 13514 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13515 - Posted: 31 Jan 2024, 10:48:42 UTC

Благодаря Ахиллесам черепашка немножко отдыхает.
ID: 13515 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13520 - Posted: 1 Feb 2024, 6:04:28 UTC
Last modified: 1 Feb 2024, 6:41:32 UTC

Цитата
Тестирование на 10 периодах на Ахиллесе-3 выскочило с ошибкой

Перезапущенный тест ещё работает

? \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961026 from number
12996961035 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 3954328817213377660517460 (4.0 E24) - 3954328820255880295789560 (4.0 E24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
3954328819086333957597547: [0, 16, 60, 70, 72, 76, 102, 114, 120, 126, 150, 154, 160, 192, 196, 204, 240]
3954328819140084393516727: [0, 36, 42, 52, 64, 90, 102, 114, 120, 126, 130, 160, 174, 192, 202, 216, 240]

Напомню: обрабатываются 10 периодов 304250263527210, поиск 19-ки с минимальным диаметром на периоде 41#.
Программу писали вместе с gris.

Диапазон поиска
search in 3954328817213377660517460 (4.0 E24) - 3954328820255880295789560 (4.0 E24)

Программа уже нашла две центральные тройки в ключевой 17-ке.
Центральные тройки в ключевой 17-ке (а также и сами ключевые 17-ки) этой программой теряются, но, как видим, не все теряются, некоторые находятся.

Очень интересно, какое время покажет Ахиллес-3 на 10 периодах.
Черепашка показала на одном периоде следующее время
time = 2h, 26min, 17,084 ms.

Вот думаю: переходить ли к периоду 43#?
При переходе от периода 41# к периоду 43# период увеличится в 43 раза.
Заманчиво!
Не надо обрабатывать по 10 периодов 41#, можно обрабатывать по одному периоду 43#.
Но надо протестировать программу на периоде 43#.
Жду, когда на Ахиллесе-3 освободится один поток.
Черепашка этот тест не потянет, по времени
ID: 13520 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13522 - Posted: 2 Feb 2024, 2:15:49 UTC
Last modified: 2 Feb 2024, 2:16:58 UTC

Тест на Ахиллесе-3 завершился

? \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961026 from number
12996961035 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 3954328817213377660517460 (4.0 E24) - 3954328820255880295789560 (4.0 E24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
3954328819086333957597547: [0, 16, 60, 70, 72, 76, 102, 114, 120, 126, 150, 154, 160, 192, 196, 204, 240]
3954328819140084393516727: [0, 36, 42, 52, 64, 90, 102, 114, 120, 126, 130, 160, 174, 192, 202, 216, 240]
3954328817477541208351733: [0, 6, 8, 54, 66, 104, 110, 114, 120, 126, 150, 164, 168, 174, 180, 204, 240]
time = 31h, 28min, 53,109 ms.

Черепашка один период обработала за
time = 2h, 26min, 17,084 ms.
10 периодов черепашка обработала бы за 24,34 ч.

Как я уже говорила, у Ахиллеса-3 производительность меньше, чем у черепашки.
Поэтому такая разница во времени.

Найдены три центральные тройки в ключевых 17-ах.
ID: 13522 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13523 - Posted: 2 Feb 2024, 2:20:33 UTC
Last modified: 2 Feb 2024, 2:40:47 UTC

Теперь запущу на Ахиллесе-3 тест, который бвыл объявлен в сообщении
https://boinc.progger.info/odlk/forum_thread.php?id=269&postid=13505

Это та же программа только на периоде 43#.
В опубликованной программе есть ошибка: не объявлен вектор pat2.
Исправила.

Масштабировать диапазон не буду.

Тест поехал

? \r formulae_43_19_17_new.txt
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
12996961000 from number
12996961000 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
13082761331670030 period
search in 170036138800023444778830000 (1.7 E26) - 170036138813106206110500030 (1.7 E26)
central 3: [120,126,132]
prove by 43#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43]
3822059520 formulae expected

Ждём.
Проверка в области 27-значных чисел.
Проверяется один период: 13082761331670030.
Количество формул: 3822059520.

Ого!
Сколько формул хватается на лету :)
Уже миллиарды.
Фантастика!

Это gris спасибо, он написал "хватать формулы на лету".

PS. Ахиллес-3 обработал 10 периодов по 41# за
time = 31h, 28min, 53,109 ms.
Теперь период 41# увеличился в 43 раза.
Посмотрим на время.
ID: 13523 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13525 - Posted: 2 Feb 2024, 3:33:42 UTC
Last modified: 2 Feb 2024, 3:34:43 UTC

Черепашка рвётся в бой :)

Запустила ту же самую программу на одном периоде 41#;
немного изменила диапазон проверки, ещё добавила в программу (по рекомендации gris) анализ полученных приближений, чтобы не проверять приближения каждый раз отдельной программкой.

Тест поехал

(06:42) gp > \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
22996961036 from number
22996961036 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 6996831455527980295789560 (7.0 E24) - 6996831455832230559316770 (7.0 E
24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
ID: 13525 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13527 - Posted: 2 Feb 2024, 5:59:36 UTC
Last modified: 2 Feb 2024, 6:01:18 UTC

Черепашка завершила тест

(06:42) gp > \r formulae_41_19_17_new.gp
  ***   Warning: new maximum stack size = 100000000 (95.367 Mbytes).
22996961036 from number
22996961036 to   number
[0,6,12,30,42,72,90,96,120,126,132,156,162,180,210,222,240,246,252]
patterns length 19
304250263527210 period
search in 6996831455527980295789560 (7.0 E24) - 6996831455832230559316770 (7.0 E
24)
central 3: [120,126,132]
prove by 41#: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
159252480 formulae expected
6996831455533617724762823: [0, 8, 24, 36, 38, 50, 104, 114, 120, 126, 138, 140,
150, 174, 176, 216, 240]
6996831455533617724762823: [0, 2, 0, 0, -28, -34, 14, 0, 0, 0, -12, -16, -24, -3
0, -40, -18, 0]
time = 2h, 25min, 57,069 ms.

Найдена одна центральная тройка в ключевой 17-ке.
Приближение сразу проанализировано, 8 правильных элементов.
Всё прекрасно.

Продолжим.
ID: 13527 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13528 - Posted: 2 Feb 2024, 6:20:51 UTC
Last modified: 2 Feb 2024, 6:29:18 UTC

Публикую текущую версию программы поиска 19-ки с минимальным диаметром на периоде 41#

\\r C:/GRIS/formulae_41_19_17.gp
default(parisizemax,10^8)
default(timer,1)

{
\\enter pattern
pt=[0, 6, 12, 30, 42,   72,   90, 96, 120, 126,
132, 156, 162, 180, 210, 222, 240, 246, 252];
pt17=[0, 6, 24, 36, 66, 84, 90, 114, 120, 126, 150, 156, 174, 204, 216, 234, 240];
w=41;
np1=22996961037; print(np1," from number");
np2=22996961037; print(np2," to   number");
central=3;
\\ end of data
\\periods
\\37 7420738134810
\\41 304250263527210
\\43 13082761331670030
\\47 614889782588491410

pl=#pt; 
nw=primepi(w);
printf("%d \n",pt);
print("patterns length ",pl);
prs=primes(nw);
period=vecprod(prs);
print(period," period");
vp=vector(np2-np1+1, i, period*(np1-1+i)); lvp=#vp;
printf("search in %d (%.1E) - %d (%.1E)\n",
        vp[1],vp[1],vp[lvp]+period,vp[lvp]+period);
cp=vector(central,i,pt[pl\2-central\2+i]);
printf("central %d: %d\n", central,cp);
printf("prove by %d#: ",prs[nw]);print(prs); 

vmy=vector(40); pat1=vector(17); pat2=vector(19);

lpr=1;
wd=vector(nw);

for( ip=1,nw, 
  rip=[];
  for( r=1,prs[ip]-1,  
    for( i=1,pl, if( (r+pt[i])%prs[ip]==0,  next(2))); 
  rip =concat(rip,r)  );
  lpr=lpr*#rip;
  wd[ip]=rip;
); \\for ip
print(lpr," formulae expected");

k=0;
forvec(v=vector(#wd,i,[1,#wd[i]]), k++; 
  form=lift(chinese(  vector( #wd,j,Mod( wd[j][v[j]], prs[j]) )  ));

  \\ начало проверки кортежа
  
  foreach(vp,bpp, 
   
  bpt=form+bpp; 
if(ispseudoprime(bpt+6) && ispseudoprime(bpt+246),
l=0; 
forprime(p=bpt+6,bpt+246, l++; vmy[l]=p; );
if(l==17,
for(m=1,17, pat1[m]=vmy[m]-vmy[1]; );
if(pat1[8]==114 && pat1[9]==120 && pat1[10]==126, print(vmy[1],": ",pat1); print(vmy[1],": ",pat1-pt17);
if(pat1==pt17, print(vmy[1],": ",pat1);
);););
    );\\ if
    
        if(ispseudoprime(bpt) && ispseudoprime(bpt+252),
l=0; 
forprime(p=bpt,bpt+252, l++; vmy[l]=p; );
if(l==19,
for(m=1,19, pat2[m]=vmy[m]-vmy[1]; );
if(pat2[9]==120 && pat2[10]==126 && pat2[11]==132, print(vmy[1],": ",pat2); print(vmy[1],": ",pat2-pt);
if(pat2==pt, print(vmy[1],": ",pat2);
);););
    );\\ if 
    
);\\ foreach

   \\ конец проверки кортежа
);\\ forvec
}

Господа!
Программа очень удобная для перехода к другому периоду, например, 43#.
Для этого надо изменить всего одну строку в программе, вот эту
w=41;

Для периода 43# надо изменить строку на такую
w=43;

Далее, очень удобно, что легко можно задать количество обрабатываемых периодов.
Для этого надо изменить две строки в программе, вот эти
np1=22996961037; print(np1," from number");
np2=22996961037; print(np2," to   number");

np1 - номер начального периода;
np2 - номер конечного периода.

Сейчас в программе обрабатывается всего один период.
Для обработки, например, трёх периодов вы должны записать строки
np1=22996961037; print(np1," from number");
np2=22996961039; print(np2," to   number");

Изменяя номер начального периода, вы можете варьировать диапазон поиска (величину чисел в диапазоне).

Пожалуйста, подключайтесь к поиску!
Рабочая программа перед вами.
Остаётся скачать программу gp.exe.
Кстати, замечу, что эта программа может работать и в Windows, и в Linux (разумеется, программы будут разные).
Это совсем недавно выяснил Стефано.
Он работает в Linux, а я всегда работаю только в Windows.

Если есть вопросы, спрашивайте, пожалуйста.
Мой адрес не изменился.

Ещё напомню: эта программа предназначена для конкурсной задачи #3.
Нет никакой гарантии, что вы найдёте решение задачи за время конкурса.
Задача эта очень сложная.
Г. Петухов, к примеру, решает её уже почти год.
Решение пока не найдено.
ID: 13528 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 14339
Credit: 0
RAC: 0
Message 13529 - Posted: 2 Feb 2024, 6:42:02 UTC
Last modified: 2 Feb 2024, 7:31:02 UTC

Многократно говорила, что для решения этой задачи необходима массовость вычислений.

Почему бы г. Петухову не создать проект распределённых вычислений на форуме dxdy.ru?
Опыт ведь уже есть - проект г. Лецко и Hugo.
Всё прекрасно получалось!
Найдены неплохие решения.

Тем более что г. Петухов неоднократно хвалился своей супер-пупер программой, ускоренной по отношению к программе на PARI/GP в 1000-1200 раз.

Ядряра писал в сообщении
https://dxdy.ru/post1627038.html#p1627038
Dmitriy40, просто хочется как-то Вам помочь. Как я понял, Вы с апреля считаете в 1-2 потока и уже очень трудно дать заднюю, а вдруг 19-ка где-то совсем рядом. С другой стороны, оргвопросами с подключением других компов Вы заниматься не хотите и мне это понятно, программировать интереснее чем агитировать.

Г. Петухов ответил на это
Подключение других компов ... А у кого есть много (с десяток) свободных потоков с AVX?! Помнится почти ни у кого здесь. А Демиса я сагитировал, он с начала декабря помогает.
Переписывать же под SSE идея так себе.

https://dxdy.ru/post1627045.html#p1627045

Да откуда можно знать, какие у кого есть компьютеры?!
На форуме уйма народа.

Demis уже считает.
Не исключено, что и ещё кто-то подключится.

Я вот не уверена, считала ли в проекте Hugo на Ахиллесе-3 или на другом Ахиллесе, который у меня давно забрали.
Поэтому не знаю, есть ли у меня на Ахиллесе-3 AVX.
Если есть, я могу подключиться (это 17 потоков)

Вы заниматься не хотите и мне это понятно, программировать интереснее чем агитировать.

А чего агитировать?
Открыл тему, выложил программу с инструкцией для пользования - вот и все дела.
Помнится, г. Лецко в своём проекте распределённых вычислений агитацией не занимался.

Я открывала проекты с распределёнными вычислениями минимум раз десять, начиная с этого проекта на форуме dxdy.ru (это кортежи,
февраль 2015 г., ровно 9 лет назад)
https://dxdy.ru/topic93581.html

Кстати, в этом проекте г. Петухов участвовал, а также участвовал его лучший друг Бегемот (Begemot82 - Василий Данилов).

Тогда, на заре проекта, всё было гораздо проще: числа небольшие, программы несложные.
Ну, так ведь 9 лет прошло.
Да, теперь в разы сложнее!
Именно поэтому и вычислительных ресурсов надо в разы больше.
ID: 13529 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Previous · 1 · 2 · 3 · 4 · Next

Message boards : Cafe : Симметричный кортеж длины 19 с минимальным диаметром из последовательных простых чисел


©2024 (C) Progger