For faster navigation, this Iframe is preloading the Wikiwand page for Унарна система числення.

Унарна система числення

Матеріал з Вікіпедії — вільної енциклопедії.

Унарна система числення — це бієктивна[en] система числення із базисом-1. Це найпростіша система числення для представлення дійсних чисел:[1] для того, щоб в ній представити число N, довільно вибраний символ, який використовується як 1 повторюється N разів.[2] Наприклад, числа 1, 2, 3, 4, 5, … будуть виглядати в такій системі як показано нижче[3]

1, 11, 111, 1111, 11111, …

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

Застосування

[ред. | ред. код]

Унарні числа використовуються в деяких алгоритмах стиснення даних, таких як код Голомба.[4] Це поняття також є основою для аксіом Пеано, що формалізують арифметику в рамках математичної логіки.[5] Форма унарної нотації, яка називається кодування Черча[en] використовується для представлення чисел в Лямбда-численні.[6]

Складність

[ред. | ред. код]

У порівнянні зі стандартним позиційним записом, унарна система незручна і тому не використовується на практиці для великих обчислень. Вона зустрічається в описах деяких проблем вибору в теорії алгоритмів (наприклад в деяких P-повних[en] задачах), де її використовують, щоб «штучно» зменшити час виконання або просторові вимоги задачі. Наприклад, підозрюють, що задача факторизації цілих чисел вимагає часу виконання більшого ніж поліномна функція від довжини її входу в двійковому записі, але їй потрібен лише лінійний час якщо вхід представлено унарно.[7] Однак, це потенційно оманливо. Використання унарного входу повільніше для будь-якого заданого числа, не швидше. Відмінність у тому, що двійковий (або більшої основи) вхід пропорційний логаритму з основою два (або більше) числа тоді як унарний вхід пропорційний самому числу. Отже, хоча з унарною системою час виконання і просторові вимоги як функції від довжини входу виглядають краще, вони не представляють дієвішого розв'язання.[8]

У теорії складності обчислень, унарні числа використовуються, щоб відрізнити сильно NP-повні[en] задачі від NP-повних, але не сильно NP-повних. Задача, що має на вході якісь числові параметри сильно NP-повна, якщо вона залишається NP-повною навіть коли розмір входу штучно збільшують переводячи його в унарну систему. Для такої задачі, існують складні випадки для яких значення всіх параметрів майже поліномно великі.[9]

Примітки

[ред. | ред. код]
  1. Hodges, Andrew (2009), One to Nine: The Inner Life of Numbers, Anchor Canada, с. 14, ISBN 9780385672665, The simplest way to write the natural numbers is by the unary notation.
  2. Davis, Martin; Sigal, Ron; Weyuker, Elaine J. (1994), Computability, Complexity, and Languages: Fundamentals of Theoretical Computer Science, Computer Science and Scientific Computing (вид. 2nd), Academic Press, с. 117, ISBN 9780122063824, the base 1 (or unary) representation of the number x is simply a string of ones of length x.
  3. Hext, Jan (1990), Programming Structures: Machines and programs, Programming Structures, т. 1, Prentice Hall, с. 33, ISBN 9780724809400.
  4. Golomb, S.W. (1966), Run-length encodings, IEEE Transactions on Information Theory, IT-12 (3): 399—401, doi:10.1109/TIT.1966.1053907.
  5. Magaud, Nicolas; Bertot, Yves (2002), Changing data structures in type theory: a study of natural numbers, Types for proofs and programs (Durham, 2000), Lecture Notes in Comput. Sci., т. 2277, Springer, Berlin, с. 181—196, doi:10.1007/3-540-45842-5_12, MR 2044538.
  6. Jansen, Jan Martin (2013), Programming in the λ-calculus: from Church to Scott and back, The Beauty of Functional Code: Essays Dedicated to Rinus Plasmeijer on the Occasion of His 61st Birthday, Lecture Notes in Computer Science, т. 8106, Springer-Verlag, с. 168—180, doi:10.1007/978-3-642-40355-2_12.
  7. Arora, Sanjeev; Barak, Boaz (2007), The computational model —and why it doesn't matter [Обчислювальна модель і чому вона не має значення] (PDF), Computational Complexity: A Modern Approach [Обчислювальна складність: Сучасний підхід] (вид. січень 2007, чорнетка), Cambridge University Press, §17, с. 32–33, процитовано 10 травня 2017.
  8. Moore, Cristopher; Mertens, Stephan (2011), The Nature of Computation [Природа обчислень], Oxford University Press, с. 29, ISBN 9780199233212.
  9. Garey, M. R.; Johnson, D. S. (1978), 'Strong' NP-completeness results: Motivation, examples, and implications [Висліди в сильній NP-повноті: Спонука, приклади і наслідки], Journal of the ACM, 25 (3): 499—508, doi:10.1145/322077.322090, MR 0478747, S2CID 18371269.
{{bottomLinkPreText}} {{bottomLinkText}}
Унарна система числення
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?