All streams
Search
Write a publication
Pull to refresh
-2
Иосиф Немлихер @Iosif1read⁠-⁠only

Пользователь

Send message
То есть я правильно понимаю, для точного определения, является число простым или нет, надо перебрать все возможные значения дискриминантов, которые больше или равны 0?

Если одна из координат незначительная, решение возникает в первых строках.
Если координаты, примерно, равны между собой, решение возникает в диапазоне расчётов, когда корректирующие величины близки к 1/2 от максимально возможного их значения.
Для уточнения и возможной формализации нужен опыт, а поэтому программа.
Это никакой практической роли не играет, особенно при использовании машинных вычислений. Если у нас 20-значное число, нет большой разницы, делать ли 10^20 / 6 шагов или 10^20 / 24, все равно получается много.

Понимаю, что много.
А способ пошагового расчёта значения не имеет?
Делитель, разность скорректированных Дискриминантов, построчно изменяется на 48.
Поэтому, для расчёта следующего делителя не надо рассчитывать и корректировать Дискриминанты.
И для расчёта делимых — тоже.
Остаётся только деление.
При этом, целочисленное частное возникает при (для вариантов, аналогичных рассмотренному в примере) при равенстве делителя координате у.
Для других вариантов требуется уточнение.
Это самый непонятный момент в вашей методике. Как определяется начало диапазона?

Если имеется ввиду это утверждение:
«Методика позволяет осуществлять расчёты для конкретного диапазона значений, что, может быть, эффективно при де шифровании в криптографии», то я имел ввиду. что имеется возможность выбора диапазона расчета, то есть не для всех значений корректирующих величин, а для диапазона значений, наиболее вероятных.
Если, как гарантированного диапазона, то это — цель, задача, решение которой, по моему мнению, существует.
Эксель таблица обновлённая, похоже, что подтверждает это — там примерно 8000 строчек с перебором k


Написанная методика основана на анализе числа посредством просчёта через одинаковые интервалы. То есть числовой ряд простых чисел не используется
Это значительно уменьшает объём необходимой памяти.

Используемые интервалы для просчётов обеспечивают обязательное использование нужного просчёта, что делает методику детерминированной для всех чисел, требующих проверки.
Это достигается посредством сопоставления числовых рядов используемых корректирующих величин, на основании корреляционных зависимостей между координатами рассматриваемого числа в используемых системах координат, что обеспечивает увеличение интервала просчёта с 6 до 24.

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

Для проведения значительной части расчётов используются начальные значения числовых рядов.
При расчётах используются величины, рассчитываемые не на основании величины числа, а на основании номера числа (величина чисел, используемых при проведении расчётов уменьшается более, чем в 24 раза,

Методика позволяет осуществлять расчёты для конкретного диапазона значений, что, может быть, эффективно при де шифровании в криптографии.

По моему мнению, всё перечисленное должно позволить уже по написанной методике создать программу, позволяющую значительно снижать затраты при факторизации чисел.
Как цель, на основании опыта, посредством программы, нахождение формализованного конкретного интервала просчёта, конкретного просчёта.

По моему мнению, найденный подход позволит, также, обеспечить и дальнейшее усовершенствование программы факторизации чисел, и позволит находить закономерности в теории чисел, до селе, не известные.

Я не умею.
Попробовал найти номер числа:

N=(((((((((is 11111111111111111111111 prime+1)/6;

Получил в следующей строке, после ответа:

is 11111111111111111111111 a prime number?

Что это означает, не пойму.
Замечу, что гарантированно, простоту числа программа подтвердит, после того, как не найдёт этому опровержения.
Это масса расчётов, и не одного целочисленного частного, в результате проверки (до конкретного значения корректирующей величины).
До написания программы у меня было ошибочное мнение, что для таких чисел простота определяется разнобоем частных, при проведении параллельных расчётов по таблицам, составленным по мод 6 и мод 4.
То есть, что ни в одном из 4-х возможных вариантов, одновременно, не обеспечиваются целочисленные координаты.
Оказалось, что и при рассмотрении простых чисел, это не всегда так. И для уточнения данного опровержения тоже нужна программа.

И что означает:

Using closest Wolfram|Alpha interpretation: is 11111111111111111111111 prime
More interpretations:

prime 1 6

тоже не пойму. К моему сожалению.

Проверка программой простого числа 11111111111111111111111 не пройдена. Попробуйте разложить число по вашему алгоритму.
Программа не адаптирована к большим числам.
Автор программы говорил, что (по памяти): число не должно быть более 10 знаков.
Если бы она была адаптирована к большим числам, думаю, что ситуация была бы другой.
Разложить вручную я, уже, не берусь.
Для Эксель такие большие числа тоже не читаемые.
Да и с Эксель тоже много расчётов вручную.
На Wolfram Alfa умею, только, делать единичные просчёты.
Вот почему всё упирается в Де компиляцию.
Декомпилировать программу смыла нет. Результат проверки чисел 922 и 9223372036854775804 не соответствует действительности.

простые многозначные числа оканчиваются на цифры 1, 3, 7 и 9

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

Что касается типа данных?
Я даже не представляю, как это предусматривается.
Любое число, которое доступно памяти и программе.
Понятия не имею, по-моему, этот вопрос не относится к тексту и моему сообщению.
Ещё раз спасибо за советы.
Если я правильно понял, та программа на дельфи сначала использует алгоритм автора, а потом делает проверку неизвестным образом — и на проверку уходит гораздо больше времени.

А выяснить это не возможно?
Мне кажется, что программа, составленная Белых С.А. может содержать дополнительную полезность.
Только можно найти даже относительно небольшие числа, на которых эта программа работает неправильно. Например, на 192221 говорит, что число простое, а при проверке правильно факторизует на 211 и 911.
Я думаю, что это какая то «заковырка» в программе, при выдачи диагноза.
Но, это только предположение.
19 разрядов. Программе, которую выложили ниже, для проверки числа 1111111111111111111 на 1-м ядре у меня потребовалось 128 сек, а для проверки числа 29-1 на 1-м ядре у меня потребовалось 185 сек.

Это плохо, или обнадёживающе?
К сожалению, потребление памяти О(1) в задаче факторизации невозможно. Потребуется по крайней мере O(n), чтобы было куда прочитать исходное число и сохранить результаты работы.
Вот такой я специалист по профессиональным вопросам.

P. S. Ваша энергия в столь зрелом возрасте вызывает неподдельное уважение. Я восхищен.
Спасибо.
Я хотел сказать, что для малых чисел (скажем на 15 порядков) программу писать не требуется.
Понял, а я Эксель использовал на основании доступности и удобства получения результатов при расчёте числовых рядов.
Коль заговорили об Excel, подобная задача решается «в лоб» визуально с помощью условного форматирования (1) и именованного диапазона «PrimeNum» (2) в примере до 249k:

=НАИМЕНЬШИЙ(ЕСЛИ(A1>=PrimeNum^2; ОСТАТ(A1;PrimeNum);1);1)=0
={2;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}
Принцип то другой, и никакой надежды на увеличении скорости при расчётах.
Одним словом: решето!
Вы уж определитесь, хотите ли вы написать текст, который будет прочитан и, если хотите, напишите текст пригодный для чтения.

«Когда мы были молодые», то чему то не научились.
А теперь...?
Мне и то, что получается, даётся не просто.
И нет рядом тех, кто бы как лакмусовая бумажка, помогал в ответе на вопрос:
«смысл ясен?».
Поверьте, я не из-за отсутствия желания быть понятым, пишу так, как пишу.
В то же время, мне удалось, здесь, специалистов, пусть не на долго, но, всё же повернутся к написанному.
Меня привела в восторг найденная закономерность.
Как я считаю, уже позволившая подойти к решению конкретной проблемы в теории чисел по новому, и обещающая новое, впереди.
Будет, или не будет достигнут желанный результат в скорости факторизации больших чисел?
Вопрос, конечно, важный в настоящее время.
Но, представьте себе, что он уже решён посредством факторизации числа, как произведения двух простых чисел. Вы думаете не найдутся другие методы шифрования, посредством чего — нибудь другого?
А найденная закономерность продолжает быть обратным действием умножению с неизвестными сомножителями, способом, который основан не на основании проб и ошибок, а на основании существующих закономерностей, формализованных наконец то.
Если это не интересно, то ничего не сделаешь, без этого можно обойтись,
Живут же люди, которые не умеют ясно выражать свои мысли, и, некоторые, не плохо.

А если Вы поможете сделать как надо, я не против, я за.

Простите, что? У вас алгоритм «разный» для разных языков программирования?
Почему Вы меня так поняли?
Я высказался о уровне своих познаний в программировании.
Также похоже, что в третьей строчке ошибка и должно быть x = 74 — 70 = 4.

Вы правы.

Но как посчитать «координаты» и остатки по исходному L — вообще непонятно.
Для этого необходимо разобраться в одном, например, рассмотренном в примере.
Это самый незамысловатый вариант.
Всё пляса лось от него. От простого к сложному. Для каждого варианта алгоритм расчёта детерминированный, но индивидуальный.
Правда, при программировании Белых С.А. что то упростилось.
Конкретно как, я не знаю.
Я только знаю, что при наладке программы бывает корректировка, в зависимости от используемого языка. Но, как? Увы.
Задайте вопросы, что, конкретно, не понятно.
Может быть, смогу объяснить.
Мне не удалось охватить весь необходимый объём знаний, который упрощает сотрудничество между программистами и создателями методик.
Белых Сергей Алексеевич говорил, что он самоучка, но и математик, и алгоритм ист, и программист. Идеальный сплав, но редкий.
Что-то я не вижу результат примера факторизации числа 10525. С результатами статья наверно была бы немного понятнее.

Для каждого варианта расчёта формализация детерминированная, но с конкретными нюансами.

2 -3*24 = — 70 = — y;

2 – (-3*24) = 74 = (x+y).

у= 74 — 70 = 4;

Так как х и у — координаты числа L=X*Y;

X = 4*6+1 = 25. Y = 6*70+1 = 421. L = 25*421 = 10525.

Так завершается первый этап факторизации.
Для сомножителей — по новой.
Какой объем памяти понадобится: O(1), O(n), O(2^n), иное?
О(1).

Меня сравнение тактико-технических характеристик интересовало.
Моей подготовки не достаточно, чтобы давать гарантированные ответы на вопросы о эффективности программы.
У меня только болванка программы, которая уже выложена mwizard.
Удастся ли её распаковать — не знаю.
Чем ваша методика факторизации предположительно лучше уже известных алгоритмов? Быстрее работает? Потребляет меньше памяти? Наконец, может быть она проще? Из вашего текста это не ясно, а без такого сравнения читатель мало заинтересован разбираться в путанном и непривычном изложении.

Гарантирую: Потребляет меньше памяти, значительно меньше.

И память, и её алгоритм не зависят от величины числа. Поэтому проверяющего не интересует простой или нет используемый делитель. Мне кажется это тоже преимущество.
С остальным спорить не могу.
Мне редко новое давалось с наскока. Бывало. Но и то, если уже имелся определённый фундамент.

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

Вы меня полощите, практически, за цитаты. Да ладно, если Вы так не считаете.

Впрочем, непонятно, почему в статье, посвященной алгоритму факторизации данного числа, вы приводите в качестве примера алгоритм Евклида, который к задаче факторизации отношения не имеет. Сравните свой алгоритм хотя бы с методом факторизации Ферма, которым последний пользовался без всяких компьютеров в 17-м веке.

Надеюсь, что сравнят другие.
Когда Ньютона спросили: «Как Вам удалось сделать столько открытий», он ответил:
«Я стоял на головах гигантов». Меня тоже удивляют достижения гигантов, которые могли пользоваться, в лучшем случае, арифмометрами.

Information

Rating
Does not participate
Location
Донецк, Донецкая обл., Украина
Date of birth
Registered
Activity