Факторная система счисления - Factorial number system
Системы счисления |
---|
Индусско-арабская система счисления |
Восточная Азия |
Европейский |
Американец |
По алфавиту |
Бывший |
Позиционные системы к основание |
Нестандартные позиционные системы счисления |
Список систем счисления |
В комбинаторика, то факториальная система счисления, также называемый факторадический, это смешанный корень система счисления адаптирован к нумерации перестановки. Его еще называют факториальная база, несмотря на то что факториалы не функционируют как основание, но, как размещаемая стоимость цифр. Преобразуя число меньше, чем п! к факториальному представлению получаем последовательность из п цифры, которые можно преобразовать в перестановку п простым способом, либо используя их как Код Лемера или как инверсия стол[1] представление; в первом случае результирующее отображение целых чисел на перестановки п перечисляет их в лексикографический порядок. Общие смешанные системы счисления изучались Георг Кантор.[2]Термин «факториальная система счисления» используется Knuth,[3]в то время как французский эквивалент "numération factorielle" был впервые использован в 1888 году.[4] Термин "факторадик", который является чемодан факториала и смешанного основания, по-видимому, более позднего времени.[5]
Определение
Факториальная система счисления - это смешанный корень система счисления: the я-я цифра справа имеет основаниея, что означает, что цифра должна быть строго меньше, чем я, и что (с учетом оснований младших цифр) его значение умножается на (я − 1)! (его разрядная стоимость).
Radix | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
---|---|---|---|---|---|---|---|---|
Место значение | 7! | 6! | 5! | 4! | 3! | 2! | 1! | 0! |
Поместите значение в десятичную дробь | 5040 | 720 | 120 | 24 | 6 | 2 | 1 | 1 |
Максимально допустимая цифра | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Из этого следует, что крайняя правая цифра всегда равна 0, вторая может быть 0 или 1, третья 0, 1 или 2 и так далее (последовательность A124252 в OEIS ). Факториальная система счисления иногда определяется как 0! место пропущено, потому что оно всегда равно нулю (последовательность A007623 в OEIS ).
В этой статье представление факториального числа будет помечено нижним индексом "!", Например, 3: 4: 1: 0: 1: 0! обозначает 354413021100, значение которого
- = 3×5! + 4×4! + 1×3! + 0×2! + 1×1! + 0×0!
- = ((((3×5 + 4)×4 + 1)×3 + 0)×2 + 1)×1 + 0
- = 46310.
(Разрядная величина на единицу меньше, чем позиция системы счисления, поэтому эти уравнения начинаются с 5!)
Общие свойства смешанных систем счисления счисления также применимы к факторной системе счисления. Например, можно преобразовать число в факторное представление, производя цифры справа налево, путем многократного деления числа на основание системы счисления (1, 2, 3, ...), считая остаток цифрами и продолжая целое число частное, до этого частное становится 0.
Например, 46310 может быть преобразовано в факторное представление следующими последовательными делениями:
|
Процесс завершается, когда частное достигает нуля. Чтение остатков назад дает 3: 4: 1: 0: 1: 0!.
В принципе, эта система может быть расширена для представления дробных чисел, хотя вместо естественного расширения разрядов (−1) !, (−2) !, и т.д., которые не определены, симметричный выбор значений системы счисления n = 0 , 1, 2, 3, 4 и т. Д. После точки могут использоваться вместо этого. Опять же, места 0 и 1 могут быть опущены, поскольку они всегда равны нулю. Следовательно, соответствующие значения разряда - 1/1, 1/1, 1/2, 1/6, 1/24, ..., 1 / n !, и т. Д.
Примеры
В следующей сортируемой таблице показаны 24 перестановки четырех элементов с разными инверсия связанные векторы. Левая и правая инверсия считается и (последний часто называют Код Лемера ) особенно подходят для интерпретации как факториальные числа. дает позицию перестановки в обратном порядке колексикографический порядок (порядок этой таблицы по умолчанию), а последний - позицию в лексикографический заказ (оба отсчитываются от 0).
При сортировке по столбцу, в котором справа пропущен 0, факториальные числа в этом столбце соответствуют номерам индексов в неподвижном столбце слева. Маленькие столбцы являются отражением соседних столбцов, и их можно использовать для приведения их в колексикографическом порядке. В крайнем правом столбце показаны суммы цифр факториалов (OEIS: A034968 в порядке по умолчанию в таблицах).
|
|
В другом примере наибольшее число, которое может быть представлено шестью цифрами, будет 543210.! что равно 719 в десятичный:
- 5 × 5! + 4 × 4! + 3x3! + 2 × 2! + 1 × 1! + 0 × 0 !.
Очевидно, следующее представление факториального числа после 5: 4: 3: 2: 1: 0! это 1: 0: 0: 0: 0: 0: 0! что обозначает 6! = 72010, разрядное значение для цифры седьмой системы счисления. Таким образом, первое число и его суммированное выражение, приведенное выше, равно:
- 6! − 1.
Факториальная система счисления обеспечивает уникальное представление каждого натурального числа с заданным ограничением используемых «цифр». Ни одно число не может быть представлено более чем одним способом, потому что сумма последовательных факториалов, умноженная на их индекс, всегда равна следующему факториалу за вычетом единицы:
Это легко доказать с помощью математическая индукция, или просто заметив, что : последующие термины отменяют друг друга, оставляя первый и последний член (см. Телескопическая серия )
Однако при использовании арабские цифры для записи цифр (без учета индексов, как в приведенных выше примерах) их простая конкатенация становится неоднозначной для чисел, у которых «цифра» больше 9. Самый маленький такой пример - это число 10 × 10! = 36 288 00010, что может быть записано как A0000000000!=10:0:0:0:0:0:0:0:0:0:0!, но не 100000000000! = 1:0:0:0:0:0:0:0:0:0:0:0! что означает 11! = 39 916 80010. Таким образом, используя буквы A – Z для обозначения цифр 10, 11, 12, ..., 35, как в другой системе счисления N, получим наибольшее представимое число 36 × 36! - 1. Для произвольно больших чисел необходимо выбрать основу для представления отдельных цифр, например десятичную, и поставить разделительный знак между ними (например, путем добавления каждой цифры в индекс по ее основанию, также заданному в десятичном виде, например 24031201, это число также можно записать как 2: 0: 1: 0!). Фактически сама факториальная система счисления не является система счисления в смысле обеспечения представления всех натуральных чисел с использованием только конечного алфавита символов, поскольку для этого требуется дополнительный знак разделения.
Перестановки
Есть естественный отображение между целые числа 0, ..., п! − 1 (или эквивалентно числа с п цифры в факторном представлении) и перестановки из п элементы в лексикографический порядок, когда целые числа выражаются в факторадической форме. Это отображение было названо Код Лемера (или инверсионный стол). Например, с п = 3, такое отображение
десятичный | факторадический | перестановка |
---|---|---|
010 | 0:0:0! | (0,1,2) |
110 | 0:1:0! | (0,2,1) |
210 | 1:0:0! | (1,0,2) |
310 | 1:1:0! | (1,2,0) |
410 | 2:0:0! | (2,0,1) |
510 | 2:1:0! | (2,1,0) |
В каждом случае вычисление перестановки происходит с использованием крайней левой факторадической цифры (здесь 0, 1 или 2) в качестве первой цифры перестановки, а затем удаления ее из списка вариантов (0, 1 и 2). Думайте об этом новом списке вариантов как о индексированном нулем и используйте каждую последующую факторную цифру для выбора из оставшихся элементов. Если вторая фактическая цифра равна «0», то первый элемент списка выбирается для второй цифры перестановки и затем удаляется из списка. Аналогично, если вторая фактическая цифра равна «1», вторая выбирается и затем удаляется. Последняя фактическая цифра всегда равна "0", и поскольку список теперь содержит только один элемент, он выбирается как последняя цифра перестановки.
Процесс может стать понятнее на более длинном примере. Допустим, нам нужна 2982-я перестановка чисел от 0 до 6. Число 2982 равно 4: 0: 4: 1: 0: 0: 0! Фактически радикально, и это число выбирает цифры (4,0,6,2,1,3,5) по очереди, индексируя убывающий упорядоченный набор цифр и выбирая каждую цифру из набора на каждом шагу:
4:0:4:1:0:0:0! ─► (4,0,6,2,1,3,5) фактор: 4: 0: 4: 1: 0: 0: 0! ├─┬─┬─┬─┐ │ ├─┬─┬─┬─┐ ├─┐ │ │ │set: (0,1,2,3,4,5,6) ─► (0,1,2 , 3,5,6) ─► (1,2,3,5,6) ─► (1,2,3,5) ─► (1,3,5) ─► (3,5) ─► ( 5) │ │ │ │ │ │ перестановка: (4, 0, 6, 2, 1, 3, 5)
Естественный индекс для группа прямой продукт из двух группы перестановок это конкатенация двух факторных чисел с двумя нижними индексами "!"
пара конкатенированных десятичных факторизованных перестановок 010 0:0:0!0:0:0! ((0,1,2),(0,1,2)) 110 0:0:0!0:1:0! ((0,1,2),(0,2,1)) ... 510 0:0:0!2:1:0! ((0,1,2),(2,1,0)) 610 0:1:0!0:0:0! ((0,2,1),(0,1,2)) 710 0:1:0!0:1:0! ((0,2,1),(0,2,1)) ... 2210 1:1:0!2:0:0! ((1,2,0),(2,0,1)) ... 3410 2:1:0!2:0:0! ((2,1,0),(2,0,1)) 3510 2:1:0!2:1:0! ((2,1,0),(2,1,0))
Дробные значения
В отличие от систем с одним основанием, разряды которых основаниеп Как для положительного, так и для отрицательного целого n основание факториального числа не может быть расширено до отрицательных разрядов, поскольку это будет (-1) !, (-2)! и так далее, и эти значения не определены. (видеть факториал )
Поэтому одним из возможных расширений является использование 1/0 !, 1/1 !, 1/2 !, 1/3 !, ..., 1 / n! и т. д., возможно, опуская 1/0! и 1/1! места, которые всегда равны нулю.
При использовании этого метода все рациональные числа имеют завершающее раскрытие, длина которого в «цифрах» меньше или равна знаменателю представленного рационального числа. Это можно доказать, если учесть, что существует факториал для любого целого числа, и, следовательно, знаменатель делится на собственный факториал, даже если он не делится на какой-либо меньший факториал.
Следовательно, по необходимости факторадическое разложение обратной величины простого числа имеет длину точно такое же простое число (за вычетом единицы, если опущен знак 1/1!). Остальные термины даны как последовательность A046021 на OEIS. Также можно доказать, что последняя «цифра» или член представления рационального числа с простым знаменателем равна разнице между числителем и простым знаменателем.
Существует также неограничивающий эквивалент для каждого рационального числа, сродни тому, что в десятичной дроби 0,24999 ... = 0,25 = 1/4 и 0.999... = 1 и т. д., которые могут быть созданы путем уменьшения последнего члена на 1 и последующего заполнения оставшегося бесконечного числа членов наивысшим возможным значением для системы счисления этой позиции.
В следующем наборе примеров пробелы используются для разделения значений разряда, иначе они представлены в десятичном виде. Рациональные числа слева также в десятичном формате:
Есть также небольшое количество констант, которые имеют шаблонное представление с помощью этого метода:
Смотрите также
- Первоначальная система счисления
- Комбинаторная система счисления (также называется комбинацией)
- Алгоритм Штейнхауса – Джонсона – Троттера, алгоритм, который генерирует Коды Грея для факторной системы счисления
Рекомендации
- ^ Кнут, Д. Э. (1973), "Том 3: Сортировка и поиск", Искусство программирования, Эддисон-Уэсли, стр. 12, ISBN 0-201-89685-0
- ^ Кантор, Г. (1869), Zeitschrift für Mathematik und Physik, 14.
- ^ Кнут, Д. Э. (1997), "Том 2: получисловые алгоритмы", Искусство программирования (3-е изд.), Addison-Wesley, p. 192, ISBN 0-201-89684-2.
- ^ Лезан, Шарль-Анж (1888), "Sur la numération factorielle, application aux permutations", Bulletin de la Société Mathématique de France (На французском), 16: 176–183.
- ^ Термин «факторадический», по-видимому, введен в Маккаффри, Джеймс (2003), Использование перестановок в .NET для повышения безопасности системы, Microsoft Developer Network.
- Мантачи, Роберто; Ракотондраджао, Fanja (2001), «Представление перестановки, которое знает, что означает« эйлерово »» (PDF), Дискретная математика и теоретическая информатика, 4: 101–108, архивировано с оригинал (PDF) на 2011-05-24, получено 2005-03-27.
- Арндт, Йорг (2010). Имеет значение вычислительные: идеи, алгоритмы, исходный код. С. 232–238.
внешняя ссылка
- Калькулятор кода Лемера Обратите внимание, что их цифры перестановки начинаются с 1, поэтому мысленно сокращает все цифры перестановки на единицу, чтобы получить результаты, эквивалентные тем, что на этой странице.
- Факторная система счисления