stringtranslate.com

Функции пола и потолка

Функции пола и потолка

В математике функция пола (или функция наибольшего целого числа ) — это функция , которая принимает на вход действительное число x и выдает на выходе наибольшее целое число , меньшее или равное x , обозначаемое x или Floor( x ) . Аналогично, функция потолка отображает x наименьшее целое число, большее или равное x , обозначаемое x или ceil( x ) . [1]

Например, для пола: ⌊2.4⌋ = 2 , ⌊−2.4⌋ = −3 и для потолка: ⌈2.4⌉ = 3 и ⌈−2.4⌉ = −2 .

Исторически нижний предел x назывался – и до сих пор называется – целой частью или целой частью x , часто обозначаемой [ x ] (а также множеством других обозначений). [2] Однако тот же термин, целая часть , также используется для усечения до нуля, что отличается от функции пола для отрицательных чисел.

Для целого числа n n ⌋ = ⌈ n ⌉ = [ n ] = n .

Хотя Floor( x+1 ) и ceil( x ) создают совершенно одинаковые графики, они не совпадают, если значение x является точным целым числом. Например, когда х =2,0001; ⌊2,0001+1⌋ = ⌈2,0001⌉ = 3 . Однако если x =2, то ⌊2+1⌋ = 3 , а ⌈2⌉ = 2 .

Обозначения

Целая часть или целая часть числа ( partie entière в оригинале) была впервые определена в 1798 году Адриеном-Мари Лежандром в его доказательстве формулы Лежандра .

Карл Фридрих Гаусс ввел обозначение квадратных скобок [ x ] в своем третьем доказательстве квадратичной взаимности (1808 г.). [3] Это оставалось стандартом [4] в математике до тех пор , пока Кеннет Э. Айверсон не представил в своей книге « Язык программирования» 1962 года названия «пол» и «потолок» и соответствующие обозначения x и x . [5] [6] (Айверсон использовал квадратные скобки для другой цели — обозначения скобок Айверсона .) Оба обозначения теперь используются в математике, хотя в этой статье будут использоваться обозначения Айверсона.

В некоторых источниках жирный шрифт или двойные скобки x используются для пола, а обратные скобки x или ] x [ ​​для потолка. [7] [8]

Дробная часть — это пилообразная функция , обозначаемая { x } для действительного x и определяемая формулой

{ Икс } = Икс - ⌊ Икс[9]

Для всех х ,

0 ≤ { Икс } < 1 .

Эти символы представлены в Юникоде:

В системе набора текста LaTeX эти символы можно указать с помощью команд и в математическом режиме, а также увеличить их размер с помощью и по мере необходимости.\lceil, \rceil, \lfloor, \rfloor\left\lceil, \right\rceil, \left\lfloor,\right\rfloor

Некоторые авторы определяют [ x ] как функцию округления к нулю [ нужна ссылка ] , поэтому [2.4] = 2 и [−2.4] = −2 , и называют это «целой частью».

Определение и свойства

Учитывая действительные числа x и y , целые числа m и n и набор целых чисел , пол и потолок могут быть определены уравнениями

Поскольку в полуинтервале длины один есть ровно одно целое число, для любого действительного числа x существуют уникальные целые числа m и n , удовлетворяющие уравнению

где  и  также может быть принято за определение пола и потолка.

Эквиваленты

Эти формулы можно использовать для упрощения выражений, касающихся полов и потолков. [10]

На языке теории порядка функция пола представляет собой резидуированное отображение , то есть часть связи Галуа : это верхний сопряженный элемент функции, которая встраивает целые числа в действительные числа.

Эти формулы показывают, как добавление целого числа n к аргументам влияет на функции:

Вышеупомянутое никогда не будет верным, если n не является целым числом; однако для любых x и y выполняются следующие неравенства:

Монотонность

Функции пола и потолка являются монотонно неубывающими функциями :

Отношения между функциями

Из определений ясно, что

  с равенством тогда и только тогда, когда x является целым числом, т.е.

Фактически, для целых чисел n функции пола и потолка тождественны :

Отрицание аргумента меняет местами пол и потолок и меняет знак:

и:

Отрицание аргумента дополняет дробную часть:

Функции пола, потолка и дробной части идемпотентны :

Результатом вложенных функций пола или потолка является самая внутренняя функция:

из-за свойства идентичности целых чисел.

Коэффициенты

Если m и n целые числа и n ≠ 0,

Если n — целое положительное число [11]

Если m положительно [12]

Для m = 2 это означает

В более общем смысле, [13] для положительного m (см. тождество Эрмита )

Следующее можно использовать для преобразования полов в потолки и наоборот ( m положительный) [14]

Для всех m и n строго положительных целых чисел: [15]

который для положительных и взаимно простых m и n сводится к

и аналогично для функций потолка и дробной части (все еще для положительных и взаимно простых m и n ),


Поскольку правая часть общего случая симметрична по m и n , отсюда следует, что

В более общем смысле, если m и n положительны,

Иногда это называют законом взаимности. [16]

Деление на положительные целые числа дает интересное, а иногда и полезное свойство. Предполагая ,

Сходным образом,

Действительно,

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

Вложенные подразделения

Для положительного целого числа n и произвольных действительных чисел m , x : [17]

Преемственность и расширение серий

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

  является полунепрерывным сверху , а     и   полунепрерывным снизу.

Поскольку ни одна из функций, обсуждаемых в этой статье, не является непрерывной, ни одна из них не имеет разложения в степенной ряд . Поскольку пол и потолок не являются периодическими, они не имеют равномерно сходящегося разложения в ряд Фурье . Функция дробной части имеет разложение в ряд Фурье [18]

для x не целое число.

В точках разрыва ряд Фурье сходится к значению, которое является средним из его пределов слева и справа, в отличие от функций пола, потолка и дробной части: при фиксированном y и x , кратном y , данный ряд Фурье сходится. к y /2, а не к x  mod  y  = 0. В точках непрерывности ряд сходится к истинному значению.

Использование формулы Floor(x) = x − {x} дает

для x не целое число.

Приложения

Оператор мода

Для целого числа x и положительного целого числа y операция по модулю , обозначаемая x mod y , дает значение остатка, когда x делится на y . Это определение можно распространить на действительные x и y , y ≠ 0, по формуле

Тогда из определения функции пола следует, что эта расширенная операция удовлетворяет многим естественным свойствам. Примечательно, что x mod y всегда находится между 0 и y , т.е.

если y положительное,

и если y отрицательно,

Квадратичная взаимность

Третье доказательство квадратичной взаимности Гаусса , модифицированное Эйзенштейном, состоит из двух основных этапов. [19] [20]

Пусть p и q — различные положительные нечетные простые числа, и пусть

Во-первых, лемма Гаусса используется, чтобы показать, что символы Лежандра имеют вид

Второй шаг — использовать геометрический аргумент, чтобы показать, что

Объединение этих формул дает квадратичную взаимность в виде

Существуют формулы, которые используют слово для выражения квадратичного характера малых чисел по модулю нечетных простых чисел p : [21]

Округление

Для произвольного действительного числа округление до ближайшего целого числа с разрывом связи в направлении положительной бесконечности определяется выражением ; округление в сторону отрицательной бесконечности задается как .

Если разрыв связи отличается от 0, то функция округления равна (см. функцию знака ), а округление в сторону четности можно выразить с помощью более громоздкого выражения, которое представляет собой приведенное выше выражение для округления в сторону положительной бесконечности за вычетом индикатора целочисленности для .

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

,

Количество цифр

Число цифр по базе b натурального числа k равно

Количество строк без повторяющихся символов

Количество возможных строк произвольной длины, в которых не используется ни один символ дважды, определяется выражением [22] [ нужен лучший источник ]

где:

Для n = 26 это получится 1096259850353149530222034277.

Факторы факториалов

Пусть n — целое положительное число, а p — положительное простое число. Показатель высшей степени числа p , делящего n ! задается версией формулы Лежандра [23]

где находится способ записи n в базе p . Это конечная сумма, поскольку этажи равны нулю, когда p k > n .

Битти-последовательность

Последовательность Битти показывает, как каждое положительное иррациональное число приводит к разделению натуральных чисел на две последовательности с помощью функции пола. [24]

Константа Эйлера (γ)

Существуют формулы для постоянной Эйлера γ = 0,57721 56649..., которые включают пол и потолок, например [25]

и

Дзета-функция Римана (ζ)

Дробная часть функции также появляется в интегральных представлениях дзета-функции Римана . Несложно доказать (при помощи интегрирования по частям) [26] , что если — любая функция с непрерывной производной на отрезке [ a , b ],

Полагая , что действительная часть s больше 1, а a и b являются целыми числами, а b приближается к бесконечности, получаем

Эта формула действительна для всех s с действительной частью больше -1 (кроме s = 1, где есть полюс) и в сочетании с разложением Фурье для { x } может использоваться для расширения дзета-функции на всю комплексную плоскость. и доказать его функциональное уравнение. [27]

При s = σ + it в критической полосе 0 < σ < 1,

В 1947 году ван дер Поль использовал это представление для создания аналогового компьютера для поиска корней дзета-функции. [28]

Формулы для простых чисел

Функция пола встречается в нескольких формулах, характеризующих простые числа. Например, поскольку оно равно 1, если m делит n , и 0 в противном случае, из этого следует, что целое положительное число n является простым тогда и только тогда, когда [29]

Можно также привести формулы для получения простых чисел. Например, пусть p n — n - е простое число и для любого целого числа r  > 1 определим действительное число α суммой

Тогда [30]

Аналогичный результат состоит в том, что существует число θ = 1,3064... ( константа Миллса ) со свойством, что

все простые. [31]

Существует также число ω = 1,9287800... со свойством, что

все простые. [31]

Пусть π ( x ) будет количеством простых чисел, меньших или равных x . Из теоремы Вильсона прямым выводом следует , что [32]

Кроме того, если n ≥ 2, [33]

Ни одна из формул в этом разделе не имеет практического применения. [34] [35]

Решенные проблемы

Рамануджан представил эти задачи в Журнал Индийского математического общества . [36]

Если n — целое положительное число, докажите, что

Были доказаны некоторые обобщения приведенных выше тождественных функций пола. [37]

Нерешенная проблема

Исследование проблемы Уоринга привело к нерешенной проблеме:

Существуют ли целые положительные числа k ≥ 6 такие, что [38]

Малер доказал, что таких k может быть только конечное число ; ни один не известен. [39]

Компьютерные реализации

Функция Int из преобразования с плавающей запятой в C

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

Побитовый сдвиг вправо целого числа со знаком на аналогичен . Деление на степень 2 часто записывается как сдвиг вправо, но не для оптимизации, как можно было бы предположить, а потому, что требуется минимальный уровень отрицательных результатов. Предполагая, что такие изменения являются «преждевременной оптимизацией», и замена их разделением может привести к поломке программного обеспечения. [ нужна цитата ]

Многие языки программирования (включая C , C++ , [40] [41] C# , [42] [43] Java , [44] [45] PHP , [46] [47] R , [48] и Python [49] ) обеспечивают стандартные функции для пола и потолка, обычно называемые floorи ceilили реже ceiling. [50] Язык, который APL использует ⌊xдля обозначения пола. Язык программирования J , продолжение APL, предназначенный для использования стандартных символов клавиатуры, используется <.для пола и >.потолка. [51] Алгол использует entierслово «пол».

В Microsoft Excel функция INTокругляет в меньшую сторону, а не в сторону нуля, [52] и FLOORокругляет в сторону нуля, что противоположно тому, что делают «int» и «floor» в других языках. С 2010 года FLOORизменено на ошибку, если число отрицательное. [53] Формат файла OpenDocument , используемый OpenOffice.org , Libreoffice и другими, INT[54] и FLOORоба делают пол и FLOORимеют третий аргумент для воспроизведения более раннего поведения Excel. [55]

Смотрите также

Цитаты

  1. ^ Грэм, Кнут и Паташник, Гл. 3.1
  2. ^ 1) Люк Хитон, Краткая история математической мысли , 2015, ISBN  1472117158 (np)
    2) Альберт А. Бланк и др. , Исчисление: Дифференциальное исчисление , 1968, с. 259
    3) Джон В. Уоррис, Хорст Стокер, Справочник по математике и информатике , 1998, ISBN 0387947469 , с. 151 
  3. ^ Леммермейер, стр. 10, 23.
  4. ^ например, Кассельс, Харди и Райт и Рибенбойм используют обозначения Гаусса. Грэм, Кнут и Паташник, а также Крэндалл и Померанс используют Айверсона.
  5. ^ Айверсон, с. 12.
  6. ^ Хайэм, с. 25.
  7. ^ Mathwords: Функция этажа.
  8. ^ Mathwords: функция потолка
  9. ^ Грэм, Кнут и Паташник, стр. 70.
  10. ^ Грэм, Кнут и Паташинк, гл. 3
  11. ^ Грэм, Кнут и Паташник, стр. 73
  12. ^ Грэм, Кнут и Паташник, стр. 85
  13. ^ Грэм, Кнут и Паташник, стр. 85 и упр. 3.15
  14. ^ Грэм, Кнут и Паташник, Ex. 3.12
  15. ^ Грэм, Кнут и Паташник, стр. 94.
  16. ^ Грэм, Кнут и Паташник, стр. 94
  17. ^ Грэм, Кнут и Паташник, стр. 71, примените теорему 3.10 с x/m в качестве входных данных и делением на n в качестве функции
  18. ^ Титчмарш, с. 15, уравнение. 2.1.7
  19. ^ Леммермейер, § 1.4, Пр. 1,32–1,33
  20. ^ Харди и Райт, §§ 6.11–6.13
  21. ^ Леммермейер, с. 25
  22. ^ Последовательность OEIS A000522 (Общее количество компоновок набора из n элементов: a(n) = Sum_{k=0..n} n!/k!.) (См. формулы.)
  23. ^ Харди и Райт, Th. 416
  24. ^ Грэм, Кнут и Паташник, стр. 77–78.
  25. ^ Эти формулы взяты из статьи в Википедии «Константа Эйлера» , в которой есть еще много других.
  26. ^ Титчмарш, с. 13
  27. ^ Титчмарш, стр. 14–15.
  28. ^ Крэндалл и Померанс, с. 391
  29. ^ Крэндалл и Померанс, Ex. 1.3, с. 46. ​​Бесконечный верхний предел суммы можно заменить на n . Эквивалентное условие: n  > 1 является простым тогда и только тогда, когда .
  30. ^ Харди и Райт, § 22.3
  31. ^ аб Рибенбойм, с. 186
  32. ^ Рибенбойм, с. 181
  33. ^ Крэндалл и Померанс, Ex. 1.4, с. 46
  34. ^ Рибенбойм, с. 180 говорит, что «несмотря на нулевую практическую ценность формул... [они] могут иметь некоторую значимость для логиков, которые хотят ясно понять, как различные части арифметики могут быть выведены из различных аксиомаций...»
  35. ^ Харди и Райт, стр. 344–345 «Любая из этих формул (или любая подобная) приобрела бы другой статус, если бы точное значение числа α ... могло быть выражено независимо от простых чисел. Кажется, нет никакой вероятности этого, но нельзя исключать его как совершенно невозможное».
  36. ^ Рамануджан, Вопрос 723, Статьи, с. 332
  37. ^ Сому, Сай Теджа; Кукла, Анджей (2022). «О некоторых обобщениях функциональных тождеств Рамануджана» (PDF) . Целые числа . 22 . arXiv : 2109.03680 .
  38. ^ Харди и Райт, с. 337
  39. ^ Малер, Курт (1957). «О дробных частях степеней рационального числа II». Математика . 4 (2): 122–124. дои : 10.1112/S0025579300001170.
  40. ^ "Справочник C++ по функции пола" . Проверено 5 декабря 2010 г.
  41. ^ «Справочник C++ по функции ячейки» . Проверено 5 декабря 2010 г.
  42. ^ дотнет-бот. «Метод Math.Floor (система)». docs.microsoft.com . Проверено 28 ноября 2019 г. .
  43. ^ дотнет-бот. «Математический метод потолка (система)». docs.microsoft.com . Проверено 28 ноября 2019 г. .
  44. ^ «Математика (Java SE 9 и JDK 9)» . docs.oracle.com . Проверено 20 ноября 2018 г.
  45. ^ «Математика (Java SE 9 и JDK 9)» . docs.oracle.com . Проверено 20 ноября 2018 г.
  46. ^ «Руководство PHP по функции ячейки» . Проверено 18 июля 2013 г.
  47. ^ «Руководство PHP по функции пола» . Проверено 18 июля 2013 г.
  48. ^ «R: Округление чисел».
  49. ^ «Руководство по Python для математического модуля» . Проверено 18 июля 2013 г.
  50. ^ Салливан, с. 86.
  51. ^ «Словарь». J Язык . Проверено 6 сентября 2011 г.
  52. ^ «Функция INT» . Проверено 29 октября 2021 г.
  53. ^ «Функция ЭТАЖ» . Проверено 29 октября 2021 г.
  54. ^ «Документация/Как Tos/Calc: функция INT» . Проверено 29 октября 2021 г.
  55. ^ «Документация/Как Tos/Calc: функция FLOOR» . Проверено 29 октября 2021 г.

Рекомендации

Внешние ссылки