Как стать автором
Обновить

Приложения алгебры кортежей. Часть 1. Гибкая система счисления с простыми основаниями

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.7K
Всего голосов 7: ↑5 и ↓2+3
Комментарии30

Комментарии 30

Однажды в баре логарифм переспал с десятичной системой, и у них родилась FPR.

Поздравляю с открытием. Не пытались ли вы совершенно случайно написать библиотеку и сравнить её с int, float и векторными вычислениями? Лично мне кажется, что для каждого числа вычислять количество и степени простых множителей слишком затратно.

Спасибо за поздравление. Только я не понял, почему Вы слово «открытие» не написали в кавычках? Тогда Ваше сообщение об интимных отношениях между десятичной системой и логарифмом было бы к месту.

Библиотеку не пытался писать – у меня другая специализация. Что касается затратности вычислений, то ведь они (вычисления) не всегда и нужны. В промежуточных вычислениях и при хранении данных можно и без них обойтись. Да, мало ли где еще? Нам не дано предугадать…

Но можно ли построить алгоритмы для вычисления суммы чисел, не переводя их в традиционную систему счисления?

Разве для этого не нужно уметь выразить 0 из традиционной системы счисления? Одним из свойств операции сложения является существование нейтрального элемента, а он у вас (вроде как) невыразим.

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

Разрешите немного по занудствовать: обязателен ли для определения операции сложения нейтральный элемент?

Просто тогда множество не будет обладать свойствами которых мы, вероятно, ожидаем.

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

Но что нам мешает определить операцию сложения без нейтрального элемента? Пусть даже определить экзотически?

Хотя, возможно, это не относится к случаю описываемому в статье

У меня нет четких ответов на Ваши вопросы. Спасибо за комментарий.

Здесь нейтральным элементом является кортеж из нулей, то есть 1. Построен же изоморфизм между рациональными и положительными и вот этими кортежами. В рациональных это умножение, а тут покомпонентное сложение.

Если строго, это не система счисления.
Т.к. СС — способ записи числа в каком-то алфавите, например, { 0, 1, 2, ..., 9 }


Формально, надо было начинать с определения алфавита.


Может ли одна система счисления опираться на другую?
Например, в записи N [ R181 ] (56) что есть 181 и 56, как не числа в десятичной системе?

Не понимаю, почему строгие определения возможны только с точки зрения теории формальных систем? Тогда многих математиков надо выгнать с работы за «нестрогость».

Вы пишете «Может ли одна система счисления опираться на другую?»

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

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

Причем здесь группа? Числовые кортежи – это решетки, т.е множества элементов с двумя операциями и отношением частичного порядка. А сколько операций в группах? И есть ли там отношение частичного порядка?

А где у вас две операции? Вычитание это сложение со взятием обратного элемента. Решётки прекрасно строятся, если группа частично упорядочена и есть супрематизм/инфинум для любых двух элементов.

Но я хотел обратить внимание на природу данного множества всего лишь.

В моей статье помимо вычитания и сложения для числовых кортежей определены  операции inf  и sup и умножение на константу (целую или дробную). И еще. Я не уверен, в том, что когда в группу добавляют частичный порядок и «супрематизм/инфинум для любых двух элементов» (???), то она остается группой.

Это как ей перестать быть группой?

То что в (кстати абелеву) группу добавлена операция умножения на константу делает её модулем над кольцом констант (целых), а в случае рациональных - векторным пространством.

«Определение. Группой наз. произвольное множество G с одной бинарной операцией…» (Математическая энциклопедия в 5-ти томах, М.: Советская энциклопедия. 1977. Т.1.  С. 1138).

Обратите внимание на слово "одной".

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


Например, есть группа G=(X,e,f) на множестве X, с единицей e, и бинарной операцией f(x,y).


Я просто беру и замечаю существование второй бинарной операции (тривиальной, которая для любых аргументов всегда выдаёт единицу): g(x,y)=e


И что? Исходная группа G=(X,e,f) перестала существовать, потому то на множестве X появилать вторая операция? Нет же, группа G сама по себе, новая операция g — сама по себе.

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


Достаточно просто сказать: давайте хранить степени простых чисел в разложении числа на простые множетели. Сразу становится очевидно, как числа пермножать, делить, что значат отрицательные "цифры", как найти НОК или НОД.


Этот прием довольно известен и часто используется при решении задачек на комбинаторику.

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

Всмысле, какой структуре? Структура — набор степеней и все. Бесконечный ряд с почти всюду нулями. Какие операции возможны вытекает из основной теоремы арифметики и вот и вся теория, которая тут нужна. Вы тут сову на глобус натягиваете. Так-то и целые числа можно представлять ввиде множеств и формально выводить все арифметические операции. Но стоит ли этим всеръез заниматься?

Вы отказываете мне в праве связывать используемые в статье математические объекты с другими математическими объектами? Что, по Вашему, числовой кортеж? Группа (как считают некоторые комментаторы), решетка или алгебраическая система, не имеющая названия, поскольку в ней помимо inf и sup есть другие операции? Как прикажете назвать операции inf и sup в числовых кортежах, если они таковыми и являются, и дано объяснение для чего они нужны? Насчет вопроса, стоит ли «всеръез заниматься», ответ сейчас мало кто знает. Время покажет.

Связывайте что хотите, с чем хотите. Но не отказывайте читателям в праве указывать, что тут сова натянута на глобус.

Спасибо за разрешение связывать. Хотел бы также заметить, что я Вам не отказывал «в праве указывать, что тут сова натянута на глобус».

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

А вот в этом я очень сомневаюсь.

Я тоже, кстати, сомневаюсь. Но надеюсь, что есть и другие мнения.

Ну норм группа, похожие штуки уже давно придуманы и даже используются на практике

https://ru.wikipedia.org/wiki/Нумерация_Гёделя

https://ru.wikipedia.org/wiki/Гладкое_число

https://ru.wikipedia.org/wiki/Алгоритм_Диксона

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

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

Это мой ответ ripatti. Почему-то не вставился в нужное место.

Выговорите, что это группа. Но группа слишком упрощает эту систему, так как в этой системе  минимум две «решеточные» операции и отношение частичного порядка. И еще надо добавлять операции (сложение, вычитание и умножение на константу кортежей). Для описания этой системы и решетки не достаточно.

И к тому же Вы мне приписываете то, чего я не говорил. И критикуете за это. Я нигде в статье не утверждал, что простые множители и их степени до меня не использовались, а Вы в качестве возражения приводите мне примеры, где они используются. В моей статье описывается способ описания обширного множества чисел (целые, дроби, с дробными степенями), в это множества входят и те частные случаи, на которые Вы ссылаетесь.

На форуме dxdy (https://dxdy.ru/topic155252.html  ) предложили программу на языке PARI/GP, с помощью которой заданное целое число в десятичной системе счисления можно преобразовать в запись этого числа в FPR-системе, причем в формате TeX. Пример работы программы (перевод числа 1234567890 в FPR-запись):

? fpr(1234567890)

[math]$1234567890_{10}=[P_{1}P_{2}P_{3}P_{504}P_{529}](1,2,1,1,1)$[/math]

А вот код программы ( с разрешения автора):

[code]fpr(x)=my(f=factor(x),n=#f[,1]);print1("$",x,"_{10}=[");for(i=1,n,print1("P_{",primepi(f[i,1]),"}"));print("](",strjoin(f[,2],","),")$")[/code]

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории