К штурму 19-ки

Message boards : Cafe : К штурму 19-ки
Message board moderation

To post messages, you must log in.

1 · 2 · 3 · 4 . . . 54 · Next

AuthorMessage
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10756 - Posted: 19 Jan 2023, 2:22:13 UTC
Last modified: 25 Jan 2023, 16:15:19 UTC

Тут намедни разговорились с gris о паттернах.
Он мне картиночку прислал, как паттерны красиво строятся.
Я картиночку не поняла, но вот о паттернах поговорить очень даже захотела :)
Поговорили :)
Результатом явилась программа, написанная gris, генерации паттернов для симметричных кортежей длины 19 из последовательных простых чисел с заданным диаметром.
Диаметр был задан 468.

Ну, задача была мной поставлена подробно, за исключением одного аспекта: проверка допустимости паттерна.
Этот аспект мной забыт начисто за давностью лет.
У меня была программа генерации паттернов, я ею генерировала паттерны, в том числе и для 19-ки.
Вот выложенные паттерны на форуме dxdy.ru
https://dxdy.ru/post1041990.html#p1041990
Эти паттерны сгенерированы моей программой.
Но программу я потеряла, не могу её найти.
Может, она была у меня на старом компьютере, который давно сдох.

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

Теперь задаю этот вопрос gris... и внятного ответа не получаю.
То есть, вопрос такой: гарантирует ли он, что все паттерны, сгенерированные его программой, допустимые?
Очень простой вопрос!

gris прислал мне свою программу генерации паттернов с диаметром 468.
Я выполнила её на Ахиллесе, за 13 минут программа выдала 4272 паттерна.
Много!

Вот программа gris
{  p=vector(19); p[1]=0;
forstep(diam=468,468,12,
 
    k=0; k5=0; n=diam\12; m=n-8; d2=diam\2;
    for(i1=1, m,     j2=i1;
    for(i2=1, m+1-j2,j3=j2+i2;  
    for(i3=1, m+2-j3,j4=j3+i3;
    for(i4=1, m+3-j4,j5=j4+i4;
    for(i5=1, m+4-j5,j6=j5+i5;
    for(i6=1, m+5-j6,j7=j6+i6;
    for(i7=1, m+6-j7,j8=j7+i7;
    for(i8=1, m+7-j8,j9=j8+i8;
    for(i9=1, m+8-j9,
   if(i1+i2+i3+i4+i5+i6+i7+i8+i9==n,k++;
    p[2]=6*j2;
    p[3]=6*j3;
    p[4]=6*j4;
    p[5]=6*j5;
    p[6]=6*j6;
    p[7]=6*j7;
    p[8]=6*j8;
    p[9]=6*j9;
    p[10]=d2;
    p[11]=diam-6*j9;
    p[12]=diam-6*j8;
    p[13]=diam-6*j7;
    p[14]=diam-6*j6;
    p[15]=diam-6*j5;
    p[16]=diam-6*j4;
    p[17]=diam-6*j3;
    p[18]=diam-6*j2;
    p[19]=diam;
    
\\
wt=1;
forprime( w=5,19, ws=w-1;
   for (s=1,w-1,
      for ( i=2,19, if( (s+p[i])%w==0, ws--; break ) );
   ); wt=wt*ws; if(wt==0, break);
);
if( wt!=0, k5++;
for( i=1,19, print1(p[i]," "));print(" ")  
  );
 
))))))))));
print("for tuple diameter=",diam,"   number of pretuples=",k, "  good:", k5)
)}
ID: 10756 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10757 - Posted: 19 Jan 2023, 2:44:54 UTC
Last modified: 19 Jan 2023, 3:25:28 UTC

Итак, паттерны сгенерированы.
Начинаю проверять их на допустимость.
Для этого у меня есть программка господина Петухова, скопированная на форуме dxdy.ru

t=Set([0, 90, 114, 144, 168, 174, 198, 210, 228, 234, 240, 258, 270, 294, 300, 324, 354, 378, 468]);
prmax=t[#t]; pr=primes([3,prmax]);
{
   print("n=", #t, ": ", t);
   m=matrix(#pr,prmax+1);
   for(i=1,#pr,
      for(j=2,pr[i], m[i,j]=9999);
      m[i,1]=0;
      for(j=pr[i],prmax, m[i,j+1]=0);
      for(j=2,#t, m[i,pr[i]-t[j]%pr[i]+1]=0);
      print1(pr[i], " ");
      nm=0;
      for(j=1,pr[i], if(m[i,j]!=0, nm++));
      if(nm==0, print("-- ERROR! Not avaible modules."); break);
   );
   print;
}

Программа работает, паттерны проверяет, выдаёт ошибку, если паттерн недопустимый (надеюсь, что всё правильно проверяет), но!
Обратите внимание на программу, паттерн (один!) записывается непосредственно в программу и только этот (один!) паттерн проверяется.
Замечательно! Не правда ли?
Если мне надо проверить на допустимость 4272 паттерна, я должна вручную ввести каждый паттерн в программу и выполнить программу 4272 раза.

Написала gris вопрос: можно ли так изменить программу господина Петухова, чтобы она читала массив паттернов из входного файла, проверяла паттерны и записывала в выходной файл недопустимые паттерны?
Ответа не получила.

Я не знаю, как в PARI/GP осуществляется ввод массива из входного файла.
gris, похоже, тоже не знает.

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

По программе господина Петухова я проверила 10 паттернов в начале списка и 6 паттернов в конце списка, все они оказались допустимыми, согласно этой программе.

Это результат работы программы господина Петухова
? \r a10.txt
n=19: [0, 90, 114, 144, 168, 174, 198, 210, 228, 234, 240, 258, 270, 294, 300, 3
24, 354, 378, 468]
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
?

Проверяемый паттерн в выводе указан.
Этот паттерн допустимый, так как программа не выдала ошибку.

И что же мне теперь делать с этой огромной кучей паттернов с диаметром 468?
Как их все проверить на допустимость?
ID: 10757 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10758 - Posted: 19 Jan 2023, 2:56:46 UTC
Last modified: 19 Jan 2023, 3:03:06 UTC

Вчера открыла тему на форуме Math Help Planet
https://mathhelpplanet.com/viewtopic.php?f=44&t=79172

Там, похоже, PARI/GP никто не знает.

Господа!
Если кто-то большой знаток PARI/GP, пожалуйста, напишите мне
natalimak1@yandex.ru
ID: 10758 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10760 - Posted: 19 Jan 2023, 3:06:12 UTC
Last modified: 19 Jan 2023, 3:07:17 UTC

Кстати, штурм 19-ки в данный момент работает в ручном проекте.
Смотрите темы
https://boinc.progger.info/odlk/forum_thread.php?id=233
https://boinc.progger.info/odlk/forum_thread.php?id=224

Ищется возможность запуска BOINC-проекта, смотрите тему
https://boinc.progger.info/odlk/forum_thread.php?id=236
ID: 10760 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10766 - Posted: 20 Jan 2023, 1:52:31 UTC
Last modified: 20 Jan 2023, 2:14:10 UTC

Кое-что придумала для проверки допустимости паттернов в пакете программой господина Петухова.
Пока просто дам ссылку на сообщение на форуме MHP
https://mathhelpplanet.com/viewtopic.php?p=458277#p458277

Сейчас попробую добавить паттернов в программу.

Получилось!
Конечно, это примитив ужасный, но работает.
Сейчас вставила в программу 36 паттернов

{a=[0, 18, 24, 30, 48, 84, 90, 108, 150, 234, 318, 360, 378, 384, 420, 438, 444, 450, 468];
b=[0, 18, 24, 30, 48, 84, 90, 108, 174, 234, 294, 360, 378, 384, 420, 438, 444, 450, 468];
c=[0, 18, 24, 30, 48, 84, 90, 108, 228, 234, 240, 360, 378, 384, 420, 438, 444, 450, 468];
d=[0, 18, 24, 30, 48, 84, 90, 150, 168, 234, 300, 318, 378, 384, 420, 438, 444, 450, 468];
e=[0, 18, 24, 30, 48, 84, 90, 150, 174, 234, 294, 318, 378, 384, 420, 438, 444, 450, 468];
f=[0, 18, 24, 30, 48, 84, 90, 150, 228, 234, 240, 318, 378, 384, 420, 438, 444, 450, 468];
g=[0, 18, 24, 30, 48, 84, 90, 168, 228, 234, 240, 300, 378, 384, 420, 438, 444, 450, 468];
h=[0, 18, 24, 30, 48, 84, 90, 174, 228, 234, 240, 294, 378, 384, 420, 438, 444, 450, 468];
k=[0, 18, 24, 30, 48, 84, 108, 114, 150, 234, 318, 354, 360, 384, 420, 438, 444, 450, 468];
l=[0, 18, 24, 30, 48, 84, 108, 114, 174, 234, 294, 354, 360, 384, 420, 438, 444, 450, 468];
o=[0, 18, 24, 30, 48, 84, 108, 114, 198, 234, 270, 354, 360, 384, 420, 438, 444, 450, 468];
p=[0, 18, 24, 30, 48, 84, 108, 114, 228, 234, 240, 354, 360, 384, 420, 438, 444, 450, 468];
q=[0, 18, 24, 30, 48, 84, 108, 150, 168, 234, 300, 318, 360, 384, 420, 438, 444, 450, 468];
r=[0, 18, 24, 30, 48, 84, 108, 150, 174, 234, 294, 318, 360, 384, 420, 438, 444, 450, 468];
u=[0, 18, 24, 30, 48, 84, 108, 150, 198, 234, 270, 318, 360, 384, 420, 438, 444, 450, 468];
x=[0, 18, 24, 30, 48, 84, 108, 150, 228, 234, 240, 318, 360, 384, 420, 438, 444, 450, 468];
y=[0, 18, 24, 30, 48, 84, 108, 168, 228, 234, 240, 300, 360, 384, 420, 438, 444, 450, 468];
z=[0, 18, 24, 30, 48, 84, 108, 174, 228, 234, 240, 294, 360, 384, 420, 438, 444, 450, 468];
a1=[0, 18, 24, 30, 48, 84, 108, 198, 228, 234, 240, 270, 360, 384, 420, 438, 444, 450, 468];
b1=[0, 18, 24, 30, 48, 84, 114, 150, 174, 234, 294, 318, 354, 384, 420, 438, 444, 450, 468];
c1=[0, 18, 24, 30, 48, 84, 114, 150, 198, 234, 270, 318, 354, 384, 420, 438, 444, 450, 468];
d1=[0, 18, 24, 30, 48, 84, 114, 150, 228, 234, 240, 318, 354, 384, 420, 438, 444, 450, 468];
e1=[0, 18, 24, 30, 48, 84, 114, 174, 198, 234, 270, 294, 354, 384, 420, 438, 444, 450, 468];
f1=[0, 18, 24, 30, 48, 84, 114, 174, 228, 234, 240, 294, 354, 384, 420, 438, 444, 450, 468];
g1=[0, 18, 24, 30, 48, 84, 114, 198, 228, 234, 240, 270, 354, 384, 420, 438, 444, 450, 468];
h1=[0, 18, 24, 30, 48, 84, 150, 168, 228, 234, 240, 300, 318, 384, 420, 438, 444, 450, 468];
k1=[0, 18, 24, 30, 48, 84, 150, 174, 198, 234, 270, 294, 318, 384, 420, 438, 444, 450, 468];
l1=[0, 18, 24, 30, 48, 84, 150, 174, 228, 234, 240, 294, 318, 384, 420, 438, 444, 450, 468];
o1=[0, 18, 24, 30, 48, 84, 150, 198, 228, 234, 240, 270, 318, 384, 420, 438, 444, 450, 468];
p1=[0, 18, 24, 30, 48, 84, 168, 174, 228, 234, 240, 294, 300, 384, 420, 438, 444, 450, 468];
q1=[0, 18, 24, 30, 48, 84, 174, 198, 228, 234, 240, 270, 294, 384, 420, 438, 444, 450, 468];
r1=[0, 18, 24, 30, 48, 90, 108, 114, 168, 234, 300, 354, 360, 378, 420, 438, 444, 450, 468];
u1=[0, 18, 24, 30, 48, 90, 108, 114, 174, 234, 294, 354, 360, 378, 420, 438, 444, 450, 468];
x1=[0, 18, 24, 30, 48, 90, 108, 114, 198, 234, 270, 354, 360, 378, 420, 438, 444, 450, 468];
y1=[0, 18, 24, 30, 48, 90, 108, 150, 168, 234, 300, 318, 360, 378, 420, 438, 444, 450, 468];
z1=[0, 18, 24, 30, 48, 90, 108, 150, 174, 234, 294, 318, 360, 378, 420, 438, 444, 450, 468];
for(s=1,36,
if (s==1, v=a);
if (s==2, v=b);
if (s==3, v=c);
if (s==4, v=d);
if (s==5, v=e);
if (s==6, v=f);
if (s==7, v=g);
if (s==8, v=h);
if (s==9, v=k);
if (s==10, v=l);
if (s==11, v=o);
if (s==12, v=p);
if (s==13, v=q);
if (s==14, v=r);
if (s==15, v=u);
if (s==16, v=x);
if (s==17, v=y);
if (s==18, v=z);
if (s==19, v=a1);
if (s==20, v=b1);
if (s==21, v=c1);
if (s==22, v=d1);
if (s==23, v=e1);
if (s==24, v=f1);
if (s==25, v=g1);
if (s==26, v=h1);
if (s==27, v=k1);
if (s==28, v=l1);
if (s==29, v=o1);
if (s==30, v=p1);
if (s==31, v=q1);
if (s==32, v=r1);
if (s==33, v=u1);
if (s==34, v=x1);
if (s==35, v=y1);
if (s==36, v=z1);
t=Set(v);
prmax=t[#t]; pr=primes([3,prmax]);
   print("n=", #t, ": ", t);
   m=matrix(#pr,prmax+1);
   for(i=1,#pr,
      for(j=2,pr[i], m[i,j]=9999);
      m[i,1]=0;
      for(j=pr[i],prmax, m[i,j+1]=0);
      for(j=2,#t, m[i,pr[i]-t[j]%pr[i]+1]=0);
      print1(pr[i], " "); 
      nm=0;
      for(j=1,pr[i], if(m[i,j]!=0, nm++));
      if(nm==0, print("-- ERROR! Not avaible modules."); break);
   ); print(); print(v); )
}

Цикл по паттернам организовала искусственный.
Все эти 36 паттернов проверились.

Без понятия, как записать в программу массив паттернов (векторов) и организовать по этому массиву нормальный цикл (перебор).

Господа!
Жду вашу подсказку :)
ID: 10766 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10767 - Posted: 20 Jan 2023, 2:16:44 UTC - in response to Message 10766.  

Кстати, если верить программе господина Петухова, все 36 проверенных паттернов допустимые, ибо ошибок программа не выдала.
Можно верить? :)
Ну, господин Петухов ведь Супермен, а Супермены не ошибаются!
ID: 10767 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10768 - Posted: 20 Jan 2023, 2:21:00 UTC
Last modified: 20 Jan 2023, 2:29:27 UTC

Вот окончание проверки 36 паттернов из консоли

. . . . . . . . . 
n=19: [0, 18, 24, 30, 48, 90, 108, 114, 198, 234, 270, 354, 360, 378, 420, 438,
444, 450, 468]
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
[0, 18, 24, 30, 48, 90, 108, 114, 198, 234, 270, 354, 360, 378, 420, 438, 444, 4
50, 468]
n=19: [0, 18, 24, 30, 48, 90, 108, 150, 168, 234, 300, 318, 360, 378, 420, 438,
444, 450, 468]
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
[0, 18, 24, 30, 48, 90, 108, 150, 168, 234, 300, 318, 360, 378, 420, 438, 444, 4
50, 468]
n=19: [0, 18, 24, 30, 48, 90, 108, 150, 174, 234, 294, 318, 360, 378, 420, 438,
444, 450, 468]
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
[0, 18, 24, 30, 48, 90, 108, 150, 174, 234, 294, 318, 360, 378, 420, 438, 444, 4
50, 468]
?

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

Как там в песенке поётся:
"Лучше 40 раз по разу, чем ни разу 40 раз!" :)))

PS. В консоли видим проверку этих трёх последних паттернов
x1=[0, 18, 24, 30, 48, 90, 108, 114, 198, 234, 270, 354, 360, 378, 420, 438, 444, 450, 468];
y1=[0, 18, 24, 30, 48, 90, 108, 150, 168, 234, 300, 318, 360, 378, 420, 438, 444, 450, 468];
z1=[0, 18, 24, 30, 48, 90, 108, 150, 174, 234, 294, 318, 360, 378, 420, 438, 444, 450, 468];

В принципе, ужасный примитивизм можно продолжить и дальше.
То есть записать в программу все 4272 паттерна и организовать по ним искусственный цикл.
Но хотелось бы что-то более-менее грамотное применить.
ID: 10768 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10769 - Posted: 20 Jan 2023, 2:34:04 UTC - in response to Message 10768.  
Last modified: 20 Jan 2023, 2:36:13 UTC

Кстати, о птичках...
Я с этой болезнью программистов уже лет 15 борюсь :)
Программируют некую процедуру: проверить на что-то некоторый объект.
При этом в программе проверяется только один объект!
А если мне надо проверить 1000 объектов, я должна выполнить программу 1000 раз, при этом ещё каждый раз ручками ввести этот объект в программу (как в программе господина Петухова).

Ну, надо проверить - выполняй программу N раз!
Какие проблемы? :))
ID: 10769 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10770 - Posted: 20 Jan 2023, 3:29:20 UTC

Вставила в массив один недопустимый паттерн с таким же диаметром - 468, программа его забраковала

n=19: [0, 18, 24, 54, 60, 78, 138, 150, 198, 234, 270, 318, 330, 390, 408, 414,
444, 450, 468]
3 5 7 -- ERROR! Not avaible modules.

[0, 18, 24, 54, 60, 78, 138, 150, 198, 234, 270, 318, 330, 390, 408, 414, 444, 4
50, 468]

Правильно забраковала, разбирается :)
ID: 10770 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10771 - Posted: 20 Jan 2023, 4:11:11 UTC
Last modified: 20 Jan 2023, 4:27:17 UTC

Ввела в программу 90 паттернов, программа их успешно проверила (за несколько секунд), ошибочных паттернов не выдала.
Кстати, вставила в программу вывод результатов проверки в выходной файл.
В этом файле и смотрю наличие ошибок. Пока их нет.

Ну, так я могу и все 4272 паттерна ручками ввести в программу :)
Подождать подсказку что ли?

Ой, господин Петухов как увидит это, осмеёт глупую шестиклассницу вдрызг!
Так сделал бы нормальную программу, не пришлось бы глупой шестикласснице огород городить.

А у gris, похоже, все паттерны допустимые, только он в этом не хочет признаться :))

Цитата из письма gris
Что значит, что паттерн не допущен? Что при любом начальном простом числе массив чисел образованный паттерном будет содержать хотя бы одно число кратное 2,3,5,7,11.
Но допущеный паттерн не гарантирует, что в образуемых им массивах не будет таких чисел.
Для этого нужно вносить в паттерн и требование к остаткам %5 %7 и тд первого числа массива.

Первая фраза как-то понятна.
А вот дальше... мрак.
То есть допустимый паттерн ещё ничего не гарантирует!
Так?

А это совсем не понимаю
Для этого нужно вносить в паттерн и требование к остаткам %5 %7 и тд первого числа массива.

Первое число кортежа, образуемого паттерном, всегда простое - по определению; других первых чисел кортежа мы просто не рассматриваем, у нас кортеж должен состоять из последовательных простых чисел.
ID: 10771 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10772 - Posted: 20 Jan 2023, 4:37:25 UTC
Last modified: 20 Jan 2023, 21:02:06 UTC

Наверняка в программу можно ввести массив векторов (паттернов) - сразу все, а не по одному, и не по 20, и не по 90 - и сделать их нормальный перебор (проверку) в нормальном цикле.
Только я не знаю, как это сделать.

Подсказка пока не пришла :)
И на форуме MHP не отвечают знатоки PARI/GP (есть ли они там?).
Отвечает один форумчанин, но он не знает язык.
А методом тыка много не сделаешь.
ID: 10772 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10779 - Posted: 20 Jan 2023, 19:12:11 UTC
Last modified: 20 Jan 2023, 19:17:20 UTC

Ни от кого ничего не дождалась.
gris вот что написал
Иногда мне кажется, что вы просто играете. вы написали целую кучу программ и вдруг говорите, что не знаете, как вводить данные из текстового файла.

Угу!
Играю в куклы на 73-м году жизни!

Да, я не знаю, как вводить в программу на PARI данные из входного файла.
[На Бейсике знаю, как.]
Кстати, не так давно спрашивала об этом у gris.
Но тогда мне надо было ввести в программу из входного файла всего два числа.
gris на этот вопрос ответил.
Это было понятно.

А сейчас надо ввести в программу из входного файла много векторов, конкретно - 4272 вектора.
Спрашиваю gris: "А вы знаете, как ввести этот массив векторов из входного файла?"
Ответа не получаю.
Значит, и gris не знает.
А кто-нибудь знает?
Господин Петухов, наверное, знает, но он не скажет :)

Может быть, надо ввести матрицу 19х4272 (или 4272х19, то есть количество строк - 4272, количество столбцов - 19), а в программе потом как-то преобразовать эту матрицу в массив векторов?
Матрицу-то можно ввести из входного файла?

Ладно, я ручками введу прямо в программу.
Вот на данный момент уже ввела 108 паттернов, то есть записала их прямо в программу.
Все эти паттерны программа проверила.
Ошибок не выдала.
ID: 10779 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10780 - Posted: 20 Jan 2023, 19:56:33 UTC
Last modified: 20 Jan 2023, 20:42:58 UTC

Далее gris спрашивает
А сколько паттернов по каждому диаметру являются допустимыми? Должна же быть какая-то статистика за столько лет.

Конкретно для 19-ок мной были найдены теоретические паттерны, которые выложены на форуме dxdy.ru
https://dxdy.ru/post1041990.html#p1041990
Все эти паттерны допустимые.
Для бОльших диаметров я не искала паттерны для 19-ок.
Поэтому никакой статистики нет.

Господин Петухов писал программу генерации паттернов для 19-ок.
Я не знаю, для каких диаметров он генерировал паттерны и какова статистика теоретически допустимых паттернов.

Ой!
Вот читаю господина Петухова и прям дикий восторг :)))
https://dxdy.ru/post1041795.html#p1041795

Всего лишь вдвое? "Маловато будет!"(c) Лучше так: берём вычеты по первым простым числам и получаем, что из каждых последовательных 510510 чисел надо проверить лишь 64 варианта. Ускорение почти в 8000 раз, а не вдвое. Можно пойти и дальше, если памяти не жалко, то построив вычеты ещё для следующих чисел, получим 150000 вариантов для интервала 2е11, ускорение уже в 1.35 миллиона раз! А памяти надо всего лишь чуть больше мегабайта. Выделив же 400МБ можно для интервала 3.2е14 проверять всего лишь 48е6 вариантов, что даёт ускорение почти в 7 миллионов раз.
Цифры приведены для паттерна 0 30 126 156 180 210 240 294 306 324 330 360 390 420 450 456 474 486 540 570 600 624 654 750 780.

А теперь самое смешное и интересное: никакого генератора простых чисел при этом НЕ НУЖНО! ВООБЩЕ! Достаточно проверять делимость на первую сотню тысяч простых чисел, которые можно просто взять готовыми из файла, и это исключит 99.99% вариантов из рассмотрения. Для интервала длиной 1е18 останутся буквально несколько тысяч вариантов, которые можно допроверить уже вообще фактически любым генератором простых чисел, хоть быстрым, хоть медленным.
Ну и ещё удобно, что интервалы можно проверять независимо, т.е. запускать сколько угодно (пока памяти хватает) копий программы для разных интервалов параллельно, даже на однозадачном однопоточном компьютере.

И да, такая программа уже написана, и даже работает, для любого паттерна. Сейчас занимаюсь её оптимизацией, уже ускорил проверку ещё раз в 15.
В качестве примера скажу, что паттерн 0 10 12 18 22 28 30 40 42 52 54 60 64 70 72 82 проверяется со скоростью примерно 8е13 чисел в секунду. Напомню, primesieve в тех же условиях работает со скоростью примерно 5е8 чисел в секунду. "Почувствуйте разницу", что называется.

Вот только непонятно: а где же 19-ка?
При таком-то
ускорение уже в 1.35 миллиона раз!

Это ж... прямо представить трудно! :)))

... такая программа уже написана, и даже работает, для любого паттерна.

В-о-о-о-т!
Работает ДЛЯ ЛЮБОГО ПАТТЕРНА!
Понятно вам?
Сколько шума, сколько хвастовства!
А результата и нет!

Ну, а глупая Макарова через 8 лет всё паттерны генерирует :)
И никак с ними не разберётся.
Что ж с неё взять? Какие результаты?
Однако результаты есть, и не мало!
Работали два BOINC-проекта, которые были запущены с подачи глупой Макаровой.
ID: 10780 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10781 - Posted: 20 Jan 2023, 20:17:33 UTC
Last modified: 20 Jan 2023, 20:40:21 UTC

Далее в том же сообщении господин Петухов писал
Какой смысл заморачиваться с большими числами, если даже с использованием primesieve никак не доберёмся даже до 1е17? Никакого.

Это было написано 31 июля 2015 г.
Сейчас добрались и до 1е17 и много дальше.

Ахиллес-3 сейчас продолжает счёт с точки, на которой остановился BOINC-проект TBEG.
Цитата
Первый интервал начала с последней найденной в BOINC-проекте TBEG 18-ки
4663187648190797543: 0 44 54 60 86 104 140 180 186 308 314 354 390 408 434 440 450 494

Итак, проверяются три интервала, показываю их начало

1) 4663187648190797543
2) 467е16
3) 480е16

Таким образом, преемственность с остановленного BOINC-проекта TBEG соблюдена.

На Ахиллесе проверяются уже диапазоны, следующие за указанными.

Это программа Алексея Белышева, в которой как раз задействована генерация простых чисел программой primesieve.
Это брутфорс.

Если искать кортежи по паттернам, то да - программа генерации простых чисел не нужна.
Это и ежу понятно.
Нужна только проверка чисел на простоту, что прекрасно делает PARI.
ID: 10781 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10782 - Posted: 20 Jan 2023, 20:48:44 UTC - in response to Message 10781.  
Last modified: 20 Jan 2023, 20:54:01 UTC

А вот ещё господин Петухов выдал
Ну и ещё удобно, что интервалы можно проверять независимо, т.е. запускать сколько угодно (пока памяти хватает) копий программы для разных интервалов параллельно, даже на однозадачном однопоточном компьютере.

Очень интересно! Не правда ли?
И с какой скоростью будут работать программы, запущенные, скажем, в 8 потоков, "на однозадачном однопоточном компьютере"???

Сейчас-то я запускаю на Ахиллесах несколько копий программы, так Ахиллесы имеют многоядерные процессоры!
Моя черепашка имеет всего 2 ядра.
Я на ней раньше запускала и 3 программы, и 4 программы (и более!) одновременно.
Да, они все работают, но скорость резко падает.
Максимальная скорость у черепашки при работе 1-2 потоков (программ).
ID: 10782 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10784 - Posted: 21 Jan 2023, 2:13:10 UTC

Итак, 108 паттернов из сгенерированных программой gris 4272 паттернов проверила на допустимость программой господина Петухова вручную, то есть просто записала эти паттерны в программу и организовала искусственный цикл по их проверке.
Пока на этом остановлюсь.
Покажу несколько проверенных паттернов из 108

0 18 24 30 48 84 90 108 150 234 318 360 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 108 174 234 294 360 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 108 228 234 240 360 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 150 168 234 300 318 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 150 174 234 294 318 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 150 228 234 240 318 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 168 228 234 240 300 378 384 420 438 444 450 468  
0 18 24 30 48 84 90 174 228 234 240 294 378 384 420 438 444 450 468  
0 18 24 30 48 84 108 114 150 234 318 354 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 114 174 234 294 354 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 114 198 234 270 354 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 114 228 234 240 354 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 150 168 234 300 318 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 150 174 234 294 318 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 150 198 234 270 318 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 150 228 234 240 318 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 168 228 234 240 300 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 174 228 234 240 294 360 384 420 438 444 450 468  
0 18 24 30 48 84 108 198 228 234 240 270 360 384 420 438 444 450 468  
0 18 24 30 48 84 114 150 174 234 294 318 354 384 420 438 444 450 468  
0 18 24 30 48 84 114 150 198 234 270 318 354 384 420 438 444 450 468  
0 18 24 30 48 84 114 150 228 234 240 318 354 384 420 438 444 450 468  
. . . . . . . . . . . 
0 18 24 30 84 114 150 174 228 234 240 294 318 354 384 438 444 450 468  
0 18 24 30 84 114 150 198 228 234 240 270 318 354 384 438 444 450 468  
0 18 24 30 84 114 174 198 228 234 240 270 294 354 384 438 444 450 468  
0 18 24 30 84 150 168 174 228 234 240 294 300 318 384 438 444 450 468  
0 18 24 30 84 150 174 198 228 234 240 270 294 318 384 438 444 450 468  
0 18 24 30 90 108 114 168 174 234 294 300 354 360 378 438 444 450 468  
0 18 24 30 90 108 114 168 198 234 270 300 354 360 378 438 444 450 468  
0 18 24 30 90 108 114 174 198 234 270 294 354 360 378 438 444 450 468  
0 18 24 30 90 108 150 168 174 234 294 300 318 360 378 438 444 450 468  
0 18 24 30 90 108 150 168 228 234 240 300 318 360 378 438 444 450 468  
0 18 24 30 90 108 150 174 228 234 240 294 318 360 378 438 444 450 468  
0 18 24 30 90 108 168 174 198 234 270 294 300 360 378 438 444 450 468  
0 18 24 30 90 108 168 174 228 234 240 294 300 360 378 438 444 450 468  
0 18 24 30 90 114 168 174 198 234 270 294 300 354 378 438 444 450 468  
0 18 24 30 90 150 168 174 228 234 240 294 300 318 378 438 444 450 468 

В принципе точно так же могу проверить и все оставшиеся паттерны, но это будет долго и нудно.

Пока попробую генерировать паттерны с другими диаметрами.
ID: 10784 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10785 - Posted: 21 Jan 2023, 2:21:11 UTC

Покажу паттерны, сгенерированные мной давно и выложенные на dxdy.ru
https://dxdy.ru/post1041990.html#p1041990

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

d=264
0  12  24  30  42  54  84  90  114  132  150  174  180  210  222  234  240  252  264
0  12  24  42  54  72  84  90  114  132  150  174  180  192  210  222  240  252  264

d=300
0  6  24  30  60  66  84  90  144  150  156  210  216  234  240  270  276  294  300
0  6  24  30  60  66  84  126  144  150  156  174  216  234  240  270  276  294  300
0  6  24  30  66  84  90  114  144  150  156  186  210  216  234  270  276  294  300
0  6  24  54  66  84  90  96  120  150  180  204  210  216  234  246  276  294  300
0  6  24  60  66  84  90  126  144  150  156  174  210  216  234  240  276  294  300
0  6  30  60  66  84  90  126  144  150  156  174  210  216  234  240  270  294  300
0  12  42  48  78  90  108  120  132  150  168  180  192  210  222  252  258  288  300
0  18  30  42  48  60  72  102  108  150  192  198  228  240  252  258  270  282  300
0  18  30  42  48  72  102  108  132  150  168  192  198  228  252  258  270  282  300
0  18  30  42  72  90  102  108  132  150  168  192  198  210  228  258  270  282  300
0  30  42  60  72  90  102  108  132  150  168  192  198  210  228  240  258  270  300

d=312
0  6  12  30  42  72  90  102  132  156  180  210  222  240  270  282  300  306  312
0  6  12  30  72  90  96  102  132  156  180  210  216  222  240  282  300  306  312
0  6  12  42  60  72  90  102  132  156  180  210  222  240  252  270  300  306  312
0  6  12  42  72  90  96  102  132  156  180  210  216  222  240  270  300  306  312
0  6  12  42  72  90  102  126  132  156  180  186  210  222  240  270  300  306  312
0  6  12  60  72  90  102  126  132  156  180  186  210  222  240  252  300  306  312
0  6  30  42  60  72  96  126  132  156  180  186  216  240  252  270  282  306  312
0  6  30  60  72  90  96  126  132  156  180  186  216  222  240  252  282  306  312
0  12  30  60  90  96  102  126  132  156  180  186  210  216  222  252  282  300  312
0  30  42  60  66  72  120  126  150  156  162  186  192  240  246  252  270  282  312

d=324
0  12  30  42  54  60  72  84  114  162  210  240  252  264  270  282  294  312  324
0  12  30  42  54  60  72  84  120  162  204  240  252  264  270  282  294  312  324
0  12  30  42  54  60  72  114  120  162  204  210  252  264  270  282  294  312  324
0  12  30  42  54  60  84  114  120  162  204  210  240  264  270  282  294  312  324
0  12  30  42  54  60  84  114  144  162  180  210  240  264  270  282  294  312  324
0  12  30  42  54  60  84  120  144  162  180  204  240  264  270  282  294  312  324
0  12  30  42  54  60  114  120  144  162  180  204  210  264  270  282  294  312  324
0  12  30  42  54  72  84  114  120  162  204  210  240  252  270  282  294  312  324
0  12  30  42  54  84  114  120  144  162  180  204  210  240  270  282  294  312  324
0  12  30  42  60  72  84  114  120  162  204  210  240  252  264  282  294  312  324
0  12  30  42  60  72  84  120  144  162  180  204  240  252  264  282  294  312  324
0  12  30  42  60  84  102  114  144  162  180  210  222  240  264  282  294  312  324
0  12  30  42  60  84  114  120  144  162  180  204  210  240  264  282  294  312  324
0  12  30  54  60  72  84  114  120  162  204  210  240  252  264  270  294  312  324
0  12  30  54  60  72  84  114  144  162  180  210  240  252  264  270  294  312  324
0  12  30  54  60  72  102  114  144  162  180  210  222  252  264  270  294  312  324
0  12  30  54  60  84  114  120  144  162  180  204  210  240  264  270  294  312  324
0  12  30  54  60  102  114  120  144  162  180  204  210  222  264  270  294  312  324
0  12  42  54  60  72  84  114  120  162  204  210  240  252  264  270  282  312  324
0  12  42  54  60  84  114  120  144  162  180  204  210  240  264  270  282  312  324
0  12  42  54  72  84  114  120  144  162  180  204  210  240  252  270  282  312  324
0  24  30  42  72  84  90  120  150  162  174  204  234  240  252  282  294  300  324
0  24  42  72  84  90  120  132  150  162  174  192  204  234  240  252  282  300  324
0  30  42  54  60  72  84  114  120  162  204  210  240  252  264  270  282  294  324
0  30  42  54  60  84  114  120  144  162  180  204  210  240  264  270  282  294  324
0  30  42  72  84  90  120  132  150  162  174  192  204  234  240  252  282  294  324
0  30  42  72  84  114  120  132  150  162  174  192  204  210  240  252  282  294  324

Первый паттерн с минимальным диаметром 252, он всего один.
Известно свойство паттернов для 19-ок: все их диаметры кратны 12.
При этом не каждый диаметр возможен.
Например, есть паттерны с диаметрами 252 и 264, а паттернов с диаметрами 276 и 288 нет.
Дальше идут паттерны с диаметрами 300, 312 и 324.

Сейчас проверю генерацию показанных паттернов программой gris.
ID: 10785 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10786 - Posted: 21 Jan 2023, 2:53:38 UTC
Last modified: 21 Jan 2023, 3:14:55 UTC

Генерацию показанных паттернов программой gris выполнила.
Полное совпадение с моими результатами!
Покажу все выводы программы gris.

0 6 12 30 42 72 90 96 120 126 132 156 162 180 210 222 240 246 252
for tuple diameter=252   number of pretuples=125970  good:1

0 12 24 30 42 54 84 90 114 132 150 174 180 210 222 234 240 252 264
0 12 24 42 54 72 84 90 114 132 150 174 180 192 210 222 240 252 264
for tuple diameter=264   number of pretuples=203490  good:2

for tuple diameter=276   number of pretuples=319770  good:0

for tuple diameter=288   number of pretuples=490314  good:0

0 6 24 30 60 66 84 90 144 150 156 210 216 234 240 270 276 294 300
0 6 24 30 60 66 84 126 144 150 156 174 216 234 240 270 276 294 300
0 6 24 30 66 84 90 114 144 150 156 186 210 216 234 270 276 294 300
0 6 24 54 66 84 90 96 120 150 180 204 210 216 234 246 276 294 300
0 6 24 60 66 84 90 126 144 150 156 174 210 216 234 240 276 294 300
0 6 30 60 66 84 90 126 144 150 156 174 210 216 234 240 270 294 300
0 12 42 48 78 90 108 120 132 150 168 180 192 210 222 252 258 288 300
0 18 30 42 48 60 72 102 108 150 192 198 228 240 252 258 270 282 300
0 18 30 42 48 72 102 108 132 150 168 192 198 228 252 258 270 282 300
0 18 30 42 72 90 102 108 132 150 168 192 198 210 228 258 270 282 300
0 30 42 60 72 90 102 108 132 150 168 192 198 210 228 240 258 270 300
for tuple diameter=300   number of pretuples=735471  good:11

0 6 12 30 42 72 90 102 132 156 180 210 222 240 270 282 300 306 312
0 6 12 30 72 90 96 102 132 156 180 210 216 222 240 282 300 306 312
0 6 12 42 60 72 90 102 132 156 180 210 222 240 252 270 300 306 312
0 6 12 42 72 90 96 102 132 156 180 210 216 222 240 270 300 306 312
0 6 12 42 72 90 102 126 132 156 180 186 210 222 240 270 300 306 312
0 6 12 60 72 90 102 126 132 156 180 186 210 222 240 252 300 306 312
0 6 30 42 60 72 96 126 132 156 180 186 216 240 252 270 282 306 312
0 6 30 60 72 90 96 126 132 156 180 186 216 222 240 252 282 306 312
0 12 30 60 90 96 102 126 132 156 180 186 210 216 222 252 282 300 312
0 30 42 60 66 72 120 126 150 156 162 186 192 240 246 252 270 282 312
for tuple diameter=312   number of pretuples=1081575  good:10

0 12 30 42 54 60 72 84 114 162 210 240 252 264 270 282 294 312 324
0 12 30 42 54 60 72 84 120 162 204 240 252 264 270 282 294 312 324
0 12 30 42 54 60 72 114 120 162 204 210 252 264 270 282 294 312 324
0 12 30 42 54 60 84 114 120 162 204 210 240 264 270 282 294 312 324
0 12 30 42 54 60 84 114 144 162 180 210 240 264 270 282 294 312 324
0 12 30 42 54 60 84 120 144 162 180 204 240 264 270 282 294 312 324
0 12 30 42 54 60 114 120 144 162 180 204 210 264 270 282 294 312 324
0 12 30 42 54 72 84 114 120 162 204 210 240 252 270 282 294 312 324
0 12 30 42 54 84 114 120 144 162 180 204 210 240 270 282 294 312 324
0 12 30 42 60 72 84 114 120 162 204 210 240 252 264 282 294 312 324
0 12 30 42 60 72 84 120 144 162 180 204 240 252 264 282 294 312 324
0 12 30 42 60 84 102 114 144 162 180 210 222 240 264 282 294 312 324
0 12 30 42 60 84 114 120 144 162 180 204 210 240 264 282 294 312 324
0 12 30 54 60 72 84 114 120 162 204 210 240 252 264 270 294 312 324
0 12 30 54 60 72 84 114 144 162 180 210 240 252 264 270 294 312 324
0 12 30 54 60 72 102 114 144 162 180 210 222 252 264 270 294 312 324
0 12 30 54 60 84 114 120 144 162 180 204 210 240 264 270 294 312 324
0 12 30 54 60 102 114 120 144 162 180 204 210 222 264 270 294 312 324
0 12 42 54 60 72 84 114 120 162 204 210 240 252 264 270 282 312 324
0 12 42 54 60 84 114 120 144 162 180 204 210 240 264 270 282 312 324
0 12 42 54 72 84 114 120 144 162 180 204 210 240 252 270 282 312 324
0 24 30 42 72 84 90 120 150 162 174 204 234 240 252 282 294 300 324
0 24 42 72 84 90 120 132 150 162 174 192 204 234 240 252 282 300 324
0 30 42 54 60 72 84 114 120 162 204 210 240 252 264 270 282 294 324
0 30 42 54 60 84 114 120 144 162 180 204 210 240 264 270 282 294 324
0 30 42 72 84 90 120 132 150 162 174 192 204 234 240 252 282 294 324
0 30 42 72 84 114 120 132 150 162 174 192 204 210 240 252 282 294 324
for tuple diameter=324   number of pretuples=1562275  good:27

Замечательно!
Смело можно предположить, что программа gris и моя давняя программа (потерянная) работают совершенно одинаково и выдают одинаковые результаты.

Сейчас попробую продолжить.
Что там будет для паттернов с диаметрами 336, 348, 360, 372 и т. д.

Ахиллес выполняет генерацию программой gris очень быстро.
Для паттернов с диаметром 468 программа выполнилась за 13 минут.
Помню, что моя программа (ещё на старом компьютере!) выполнялась довольно долго.
Поэтому я и не стала генерировать паттерны для диаметров больше 324.
ID: 10786 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10787 - Posted: 21 Jan 2023, 3:04:00 UTC

А вот и паттерны с диаметром 336 (начало и конец списка)

0 6 18 36 48 60 66 78 120 168 216 258 270 276 288 300 318 330 336  
0 6 18 36 48 60 66 78 126 168 210 258 270 276 288 300 318 330 336  
0 6 18 36 48 60 66 90 120 168 216 246 270 276 288 300 318 330 336  
0 6 18 36 48 60 66 90 126 168 210 246 270 276 288 300 318 330 336  
0 6 18 36 48 60 66 120 126 168 210 216 270 276 288 300 318 330 336  
0 6 18 36 48 60 78 120 126 168 210 216 258 276 288 300 318 330 336  
0 6 18 36 48 60 90 120 126 168 210 216 246 276 288 300 318 330 336  
0 6 18 36 48 66 78 90 120 168 216 246 258 270 288 300 318 330 336  
0 6 18 36 48 66 78 90 126 168 210 246 258 270 288 300 318 330 336  
0 6 18 36 48 66 78 90 150 168 186 246 258 270 288 300 318 330 336  
0 6 18 36 48 66 78 120 126 168 210 216 258 270 288 300 318 330 336  
. . . . . . . . . . 
0 36 48 60 66 78 90 120 150 168 186 216 246 258 270 276 288 300 336
0 36 48 60 66 78 90 126 150 168 186 210 246 258 270 276 288 300 336
0 36 48 60 66 78 120 126 150 168 186 210 216 258 270 276 288 300 336
0 36 48 60 66 90 120 126 150 168 186 210 216 246 270 276 288 300 336
0 36 48 66 78 90 120 126 150 168 186 210 216 246 258 270 288 300 336
0 36 48 78 90 96 126 138 156 168 180 198 210 240 246 258 288 300 336
0 36 60 66 78 108 120 126 150 168 186 210 216 228 258 270 276 300 336
0 48 60 66 78 90 120 126 150 168 186 210 216 246 258 270 276 288 336
for tuple diameter=336   number of pretuples=2220075  good:116

Сгенерировано 116 теоретических (допустимых) паттернов.

Кстати, это количество паттернов могу запросто проверить программой господина Петухова в ручном режиме, записав все 116 паттернов в программу.
Сейчас займусь этим.
ID: 10787 · Rating: 0 · rate: Rate + / Rate - Report as offensive
Profile Natalia Makarova
Project scientist
Avatar

Send message
Joined: 6 Apr 17
Posts: 13141
Credit: 0
RAC: 0
Message 10788 - Posted: 21 Jan 2023, 3:10:07 UTC
Last modified: 21 Jan 2023, 3:10:24 UTC

О!
А для диаметра 348 сгенерировано всего 34 паттерна, показываю все

0 18 48 54 78 84 120 138 144 174 204 210 228 264 270 294 300 330 348  
0 18 48 54 78 84 138 144 168 174 180 204 210 264 270 294 300 330 348  
0 18 48 54 78 120 138 144 168 174 180 204 210 228 270 294 300 330 348  
0 18 48 60 78 84 90 138 144 174 204 210 258 264 270 288 300 330 348  
0 18 48 60 78 84 90 138 168 174 180 210 258 264 270 288 300 330 348  
0 18 48 60 78 84 90 144 168 174 180 204 258 264 270 288 300 330 348  
0 18 48 60 78 84 138 144 168 174 180 204 210 264 270 288 300 330 348  
0 18 48 60 78 90 138 144 168 174 180 204 210 258 270 288 300 330 348  
0 18 48 60 84 90 138 144 168 174 180 204 210 258 264 288 300 330 348  
0 18 48 78 84 90 138 144 168 174 180 204 210 258 264 270 300 330 348  
0 18 54 60 78 84 90 120 138 174 210 228 258 264 270 288 294 330 348  
0 18 54 60 78 84 90 138 144 174 204 210 258 264 270 288 294 330 348  
0 18 54 60 78 84 120 138 144 174 204 210 228 264 270 288 294 330 348  
0 18 54 60 78 90 120 138 144 174 204 210 228 258 270 288 294 330 348  
0 18 60 78 84 90 138 144 168 174 180 204 210 258 264 270 288 330 348  
0 24 30 48 54 84 90 108 114 174 234 240 258 264 294 300 318 324 348  
0 24 30 48 54 84 90 114 168 174 180 234 258 264 294 300 318 324 348  
0 24 30 48 54 90 108 114 168 174 180 234 240 258 294 300 318 324 348  
0 24 30 48 84 90 108 114 150 174 198 234 240 258 264 300 318 324 348  
0 24 30 48 84 90 114 150 168 174 180 198 234 258 264 300 318 324 348  
0 24 30 48 84 108 114 150 168 174 180 198 234 240 264 300 318 324 348  
0 24 30 48 90 108 114 150 168 174 180 198 234 240 258 300 318 324 348  
0 24 30 54 84 90 108 114 150 174 198 234 240 258 264 294 318 324 348  
0 24 30 54 84 90 108 114 168 174 180 234 240 258 264 294 318 324 348  
0 24 30 54 84 90 108 138 150 174 198 210 240 258 264 294 318 324 348  
0 24 30 54 84 90 114 150 168 174 180 198 234 258 264 294 318 324 348  
0 24 30 54 90 108 114 150 168 174 180 198 234 240 258 294 318 324 348  
0 30 48 54 84 90 108 114 168 174 180 234 240 258 264 294 300 318 348  
0 30 48 54 84 108 114 138 150 174 198 210 234 240 264 294 300 318 348  
0 30 48 54 84 108 114 138 168 174 180 210 234 240 264 294 300 318 348  
0 30 48 84 90 108 114 150 168 174 180 198 234 240 258 264 300 318 348  
0 30 54 84 90 108 114 150 168 174 180 198 234 240 258 264 294 318 348  
0 30 54 84 108 114 138 150 168 174 180 198 210 234 240 264 294 318 348  
0 48 60 78 84 90 138 144 168 174 180 204 210 258 264 270 288 300 348  
for tuple diameter=348   number of pretuples=3108105  good:34

А эти паттерны совсем просто проверить :)
Но я уже почти не сомневаюсь, что и проверять не нужно, всё правильно программа gris генерирует.
ID: 10788 · Rating: 0 · rate: Rate + / Rate - Report as offensive
1 · 2 · 3 · 4 . . . 54 · Next

Message boards : Cafe : К штурму 19-ки


©2024 (C) Progger