home.social

#алгебраические_структуры — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #алгебраические_структуры, aggregated by home.social.

  1. Регулярные выражения делимости чисел

    Меня с детства привлекала тема признаков делимости числа. Особенно удивительно было узнать про признаки делимости на 3 и на 9, когда путем простого сложения всех чисел и проверки результата можно было узнать делится ли изначальное число на эту цифру. Кроме того было интересно узнать, что существует регулярное выражение определяющее простоту числа . Но основной фокус там в том, что число записывается в унарном виде. И вот пару лет назад я встретил еще одну интересную задачу по написанию регулярного выражения для определения делится ли искомое число на 7. Само число при этом написано в двоичном виде. Признаки делимости на 7 существуют и для двоичной и для десятичной записи, но как правило они требуют производить операции умножения, сложения и рекурсивно проверять делимость уже получившегося в итоге этих действий меньшего числа, что не очень подходит для написания регулярного выражения. Я предполагал, что каким то образом могут помочь сложные операторы: условное сопоставление (позиционные проверки), обратные ссылки итд, но не разобрался как их использовать конкретно для данной задачи. Гораздо больше я думал в сторону более простой регулярки с использованием только оператора ИЛИ, квантификаторов и скобок. Остановился на построении графа остатков от деления следуя, по которому можно получить остаток заданного числа, но уперся в то, что всякое выражение с использованием скобок, но без ссылок - это в итоге дерево и поэтому произвольный граф туда не ложится. Это как пытаться хранить произвольный граф в JSON или XML - можно, но нужно будет вводить идентификаторы узлов и поля ссылок, а в то же время хранение простого дерева этого не потребует.

    habr.com/ru/articles/890696/

    #регулярные_выражения #алгебра_логики #алгебраические_структуры #парсинг #комбинаторы

  2. Закон распределения делителей числа (расширенная версия)

    В арифметике известны элементарные действия с числами (+), (–), (×), (/) и др., использование которых при заданных исходных данных дает нам возможность получать определенные результаты: сумму, разность, произведение, частное. Обратное действие с результатами в качестве исходных данных возможно далеко не всегда. Например, возведение в третью степень числа 7 3 = 343, обратным действием имеет извлечение из результата корня третьей степени ( 343 ) 1/3 = 7. При заданных результатах определить какими были исходные данные не всегда возможно. Для суммы даже двух слагаемых 7 + 6 = 13 такого единственного обратного действия нет. Для числа 13 мы можем получить очень разные исходные 13 = 1+12 = 2+11 = 3+10 = 4 +9 = 5 + 8 = 6+7. С умножением в качестве исходных составных чисел картина похожая, но если исходными сомножителями взяты простые числа, то обратной операцией для произведения является действие, называемое факторизацией числа – результата умножения. К сожалению, на сегодняшний день действие факторизации не может быть задано какими-то простыми вычислениями, а очень большие числа – результаты (сотни цифр в описании) вообще не могут быть факторизованы. Как выполнить поиск простых делителей результата-произведения мы сегодня не знаем. Такие делители, вообще говоря, как-то распределены в числовых рядах. Например, в натуральном ряде чисел (НРЧ) или в последовательности нечетных чисел (ПНЧ) простые числа-делители и их кратные имеют достаточно регулярные распределения, каждое со своим шагом. Задавая произведение простых чисел N = p˖q˖h˖s , мы понимаем, что каждое из p, q, h, s меньше самого N . Если ограничить начальный фрагмент НРЧ или ПНЧ значением N , то в пределах выделенного фрагмента будут присутствовать кратные делителей с возрастающими от 1 коэффициентами (для ПНЧ коэффициенты будут нечетными). Сможем ли мы увидеть и выделить такие кратные делителей N? Они ведь нам неизвестны. Сегодня ответ на этот вопрос положителен. В 2014 году мной на Хабре был опубликован закон распределения делителей (ЗРД) натурального числа N в НРЧ. Применение закона позволяет получать для заданного натурального N его простые делители и их кратные в НРЧ. Ниже я кратко повторю публикацию 2014 года и приведу расширенную версию ЗРД на ряд целых чисел N. Читать далее.

    habr.com/ru/articles/851270/

    #факторизация_чисел #числовые_последовательности #алгебраические_структуры #интервалы #делители #кратные_делителей #модули #модель #квадраты #модулярная_арифметика