2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу Пред.  1 ... 10, 11, 12, 13, 14, 15, 16 ... 21  След.
 
 Re: Простые числа и палиндромы
Сообщение10.03.2021, 22:11 
Аватара пользователя


20/01/21
40
kazvadim

(Оффтоп)

kazvadim в сообщении #1508596 писал(а):
А чего Вы боитесь

Ничего. Просто не горю желанием заведомо бессмысленно и безрезультатно тратить своё время.
kazvadim в сообщении #1508596 писал(а):
зачем диссеры

Чтобы сообщество обратило внимание на результат.
kazvadim в сообщении #1508596 писал(а):
на форум выложим решение - и всё!

В лучшем случае никто не заметит. В худшем - тот кто заметит проигнорирует.
kazvadim в сообщении #1508596 писал(а):
Это решение нужно не нам, а нужно науке!

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

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение13.03.2021, 02:11 


15/11/20
179
Россия, Москва.
Dmitriy40
Может быть выписать в последовательность простые палиндромы, которые не справляются с простыми близнецами? И дальше отдельно исследовать эту последовательность?

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение13.03.2021, 07:44 
Заслуженный участник


20/08/14
11862
Россия, Москва
kazvadim
Поясните на примере какие из $353701-1683=352018$ 13-значных простых палиндрома Вы собираетесь исследовать? И зачем?
Dmitriy40 в сообщении #1505995 писал(а):
Для 13-значных чисел палиндромов 9млн, из них 353701 простых, или 3.93%. При построении же 13-значного палиндрома из простых близнецов вашим методом всего получается 48000 палиндромов, из которых простых 1683, или 3.5%.


Ну и до кучи, выражение
kazvadim в сообщении #1508951 писал(а):
не справляются с простыми близнецами
совершенно непонятно, с простыми близнецами не нужно справляться, их на порядки больше простых палиндромов.

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение14.03.2021, 00:00 


15/11/20
179
Россия, Москва.
Dmitriy40 в сообщении #1508960 писал(а):
kazvadim
Поясните на примере какие из $353701-1683=352018$ 13-значных простых палиндрома Вы собираетесь исследовать? И зачем?
Это, согласен, - ни к чему. Извините, что по рассеянности и торопливости не написал, что числа не все, а только те, которые извлекаются из наших формул простых палиндромов для простых близнецов... и попытаться исследовать - контрпримеры, выписав их в последовательность?

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


20/08/14
11862
Россия, Москва
kazvadim в сообщении #1509108 писал(а):
числа не все, а только те, которые извлекаются из наших формул простых палиндромов для простых близнецов... и попытаться исследовать - контрпримеры, выписав их в последовательность?
И снова непонятно, какие именно из $48000-1683=46317$ для наименьших возможных палиндромов из близнецов хотите выписать и снова зачем? Как-то 96.5% не тянут на звание контрпримеров, это скорее 3.5% простых палиндромов из близнецов контрпримеры к обратному утверждению. :mrgreen:
Dmitriy40 в сообщении #1505995 писал(а):
Для 13-значных чисел палиндромов 9млн, из них 353701 простых, или 3.93%. При построении же 13-значного палиндрома из простых близнецов вашим методом всего получается 48000 палиндромов, из которых простых 1683, или 3.5%.

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение14.03.2021, 07:40 


15/11/20
179
Россия, Москва.
Dmitriy40

(Оффтоп)

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

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение17.03.2021, 07:32 


15/11/20
179
Россия, Москва.
Dmitriy40 в сообщении #1504849 писал(а):
$p q A \overline q \overline p$
$p \overline q A q \overline p$
$q p A \overline p \overline q$
$q \overline p A p \overline q$
$\overline p \overline q A q p$
$\overline p q A \overline q p$
$\overline q \overline p A p q$
$\overline q p A \overline p q$
Не умею правильно формулировать задачку, извините.
Если заменить в первой формуле isprime=1 на isprime=0 и сохранить в массиве оставшиеся простые близнецы. А затем обрабатывать этот массив следующей формулой, и опять сохранять в массив оставшиеся простые близнецы, и так далее... интуиция мне подсказывает, что мы справимся... но только это программирование осилить пока не смогу (помощь нужна).

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


20/08/14
11862
Россия, Москва
kazvadim
Ни в процитированной части, ни вообще в том сообщении, нет слова isprime.
И по моему нет разницы в каком порядке проверять на простоту ...
Всё ещё непонятно чего же Вы хотите.
Возьмите конкретный пример скажем с $p=17,q=19,A=0$ и по шагам расскажите что надо проверить и что сделать в обоих случаях результата проверки.

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение20.03.2021, 06:19 


15/11/20
179
Россия, Москва.
Dmitriy40
По поводу isprime - извините, у Вас в программе работает другая функция.
Если можно, объясните подробнее числа, которые вычисляет Ваша программа:
Код:
MyF(r,k)=my(i,n); n=[]; for(i=0,9, if(ispseudoprime(r+i*100^k), n=concat(n,[i]))); if(#n>3, print("n=",#n,":",r,"+",n));
{for(k=2,6,
   q=0;
   forprime(p=10^(k-1),10^k,
      if(p-q==2,
         pp=fromdigits(Vecrev(digits(p))); qq=fromdigits(Vecrev(digits(q)));
         MyF(p*10^(3*k+1)+q*10^(2*k+1)+qq*10^k+pp, k);
         MyF(q*10^(3*k+1)+p*10^(2*k+1)+pp*10^k+qq, k);
         MyF(pp*10^(3*k+1)+q*10^(2*k+1)+qq*10^k+p, k);
         MyF(qq*10^(3*k+1)+p*10^(2*k+1)+pp*10^k+q, k);
      );
      q=p;
   );
)}
}
И если есть возможность, пришлите код со всеми 8 формулами. Не умею работать с функцией MyF - наделаю ошибок.

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение20.03.2021, 09:56 
Заслуженный участник


20/08/14
11862
Россия, Москва
kazvadim
isprime и ispseudoprime — близнецы братья, они делают одно дело, но немного разными методами и соответственно с разной скоростью, особенно для больших чисел (больше триллионов). Ни та ни другая в ошибках не замечена, так что верить можно любой.

В коде MyF() трогать и не нужно, нужно лишь добавить ещё 4шт чуть других её вызовов в цикле. А там лишь голая арифметика (что на какую степень 10 умножить чтобы получить одно нужное число). В MyF() передаётся проверяемое число с нулём в середине и номер позиции этой середины в числе, функция проверяет какие из 10 чисел простые (функцией ispseudoprime для скорости) и выводит их список (в формате начальное число плюс цифра в серединку) если их больше 3-х в списке.
Код:
MyF(r,k)=my(i,n); n=[]; for(i=0,9, if(ispseudoprime(r+i*100^k), n=concat(n,[i]))); if(#n>3, print("n=",#n,":",r,"+",n));
{for(k=2,6,
   q=0;
   forprime(p=10^(k-1),10^k,
      if(p-q==2,
         pp=fromdigits(Vecrev(digits(p))); qq=fromdigits(Vecrev(digits(q)));
         MyF(p*10^(3*k+1)+q*10^(2*k+1)+qq*10^k+pp, k);
         MyF(q*10^(3*k+1)+p*10^(2*k+1)+pp*10^k+qq, k);
         MyF(pp*10^(3*k+1)+q*10^(2*k+1)+qq*10^k+p, k);
         MyF(qq*10^(3*k+1)+p*10^(2*k+1)+pp*10^k+q, k);
         MyF(p*10^(3*k+1)+qq*10^(2*k+1)+q*10^k+pp, k);
         MyF(q*10^(3*k+1)+pp*10^(2*k+1)+p*10^k+qq, k);
         MyF(pp*10^(3*k+1)+qq*10^(2*k+1)+q*10^k+p, k);
         MyF(qq*10^(3*k+1)+pp*10^(2*k+1)+p*10^k+q, k);
      );
      q=p;
   );
)}

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение21.03.2021, 05:24 


15/11/20
179
Россия, Москва.
Dmitriy40
Спасибо! Теперь смогу увидеть все эти числа.
Dmitriy40 в сообщении #1504550 писал(а):
А среди 140 пятёрок ($n=5$) лишь три начинаются с 2, а не с 1. Интересно с чем связаны такие аномалии.
Это и есть предмет нашего поиска. Пусть крохотное (процентное) решение... всё же что-то нашли. Дальше есть ещё идеи...

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение25.03.2021, 12:08 


15/11/20
179
Россия, Москва.
Вернулся на шаг назад.
$p A\overline p$, $\overline p Ap$
$q A\overline q$, $\overline q Aq$
Программа для этого алгоритмма:
Код:
b=10^1; c=10^9;
v=[1,3,7,9]; e=0; n=0;
{forprime(pr = b, c, qr=pr+2;
  if(isprime(qr)==1,
    d=digits(pr); rp=fromdigits(Vecrev(d)); l=#d;
    d1=digits(rp); w=d1[l];
    d2=digits(qr); rq=fromdigits(Vecrev(d2));
    d3=digits(rq); w1=d3[l]; fl=0;
    for(k=1,4, if(w==v[k], next));
        for(i=1,10, a=i-1;
            x=pr*10^(l+1)+a*10^l+rp; x1=rp*10^(l+1)+a*10^l+pr;
            if(isprime(x)==1, fl=1; e+=1; print1(x, ", "));           
            if(isprime(x1)==1, fl=1; e+=1; print1(x1, ", ")));
    for(k=1,4, if(w1==v[k], next));
        for(i=1,10, a=i-1;   
            y=qr*10^(l+1)+a*10^l+rq; y1=rq*10^(l+1)+a*10^l+qr;
            if(isprime(y)==1, fl=1; e+=1; print1(x, ", "));           
            if(isprime(y1)==1, fl=1; e+=1; print1(y1, ", ")));
        if(fl==0, n+=1; print("*** (", pr, ", ", qr, ")")); if(fl==1,  print(" (", pr, ", ", qr, ")"));
));
        print; print("   es=", e, ", no=", n, " ");
}
Обозначение «***» - для простых близнецов, которым не найдено решения с помощь этого алгоритма. $es$ - количество найденнных решений, $no$ -количесво не найденных решений.
До $10^3 es=160, no=0$
До $10^4 es=839, no=2 es/ no=419,5$.
До $10^5 es=4146, no=50 es/ no=82.9$.
До $10^6 es=23029, no=595 es/ no=38,$7.
До $10^7 es=142094, no=6197, es/ no=22,9$.
До $10^8 es=928493, no=59937, es/ no= 15,5$.
До миллиона: es=6379728, no=581199, es/ no= 11.
Отношение $es/ no$ уменьшается, но функця не линейная. Интересно станет ли $es/ no$ меньше 1.

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


20/08/14
11862
Россия, Москва
Не вникая глубоко сразу вопрос: а что собственно делают эти два цикла кроме как впустую занимают время? Ведь тело цикла пустое если не считать if, который тоже нигде ничего не изменяет.
kazvadim в сообщении #1511043 писал(а):
Код:
    for(k=1,4, if(w==v[k], next));
    for(k=1,4, if(w1==v[k], next));

Ну и стандартный совет: ставьте закрывающую скобку с отступом открывающего оператора (if или for) если они не уместились в одну строку, чтобы было явно видно где именно цикл или условие начались и где закончились. Правильные отступы — сила! :D

 Профиль  
                  
 
 Re: Простые числа и палиндромы
Сообщение25.03.2021, 13:58 


15/11/20
179
Россия, Москва.
Dmitriy40 в сообщении #1511052 писал(а):
Не вникая глубоко сразу вопрос: а что собственно делают эти два цикла кроме как впустую занимают время? Ведь тело цикла пустое если не считать if, который тоже нигде ничего не изменяет.
kazvadim в сообщении #1511043 писал(а):
Код:
    for(k=1,4, if(w==v[k], next));
    for(k=1,4, if(w1==v[k], next));
Два цикла-это потому, что не смог собрать 4 варианта в один цикл. if - чтобы последняя цифра палиндромов была только 1,3,7,9.
Понимаю, мой код примитивный, громоздкий и программа считает медленно (плохо программирую), сделал, что пока смог. Нужно было посмотреть результат этого алгоритма.

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


20/08/14
11862
Россия, Москва
Вы не поняли, эти два цикла не делают вообще ничего! От их удаления вообще ничего не изменится. Смотрите, они выглядят так:
Используется синтаксис Text
for(k=1,4,              \\Цикл по k=1,2,3,4.
        if(w1==v[k],    \\Если что-то чему-то равно,
                next    \\то текущее k не обрабатывать и перейти к следующему.
        )               \\Конец условия.
        ...             \\Здесь должно быть продолжение тела цикла, что именно надо сделать с каждым конкретным k если условие выше не будет выполнено - и оно у вас пусто! т.е. ничего делать и не надо.
);                      \\Конец цикла.
В итоге если условие выполнено то k пропускается, а если не выполнено, то тоже ничего не делается. Т.е. ничего не делается независимо от (не)выполнения условия. Т.е. всегда.
Отступы — сила! :D

Может конечно Вы так и задумывали, не знаю не смотрел, но в 99% случаев это ошибка (не там стоит закрывающая цикл скобка).

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 301 ]  На страницу Пред.  1 ... 10, 11, 12, 13, 14, 15, 16 ... 21  След.

Модераторы: Модераторы Математики, Супермодераторы



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

Сейчас этот форум просматривают: Mikhail_K


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

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