В математике и информатике , то функция пола является функцией из реального аргументакоторый возвращает наибольшее целое число, меньшее или равное, обозначенный или же . Аналогичным образом отображается функция потолка. до наименьшего целого числа, большего или равного , обозначенный или же . [1]
Функции пола и потолка
Функция потолка
Неотъемлемая часть или целая часть от х , часто обозначаются является если x неотрицательный, и иначе.
Например, , , , , а также .
Для целое число, .
Обозначение
Неотъемлемая часть или целая часть числа ( партии Специального entière в оригинале) была впервые определена в 1798 годом Лежандра в своем доказательстве формулы Лежандра .
Карл Фридрих Гаусс ввел обозначение квадратных скобок.в своем третьем доказательстве квадратичной взаимности (1808). [2] Это оставалось стандартом [3] в математике до тех пор, пока Кеннет Э. Айверсон не представил в своей книге «Язык программирования» 1962 года названия «пол» и «потолок» и соответствующие обозначения. а также . [4] [5] Оба обозначения теперь используются в математике, [6] хотя обозначения Айверсона будут использоваться в этой статье.
В некоторых источниках жирный шрифт или двойные скобки используются для пола и перевернутые скобки или] x [для потолка. [7] [8] Иногдапод функцией округления до нуля. [ необходима цитата ]
Функции пола и потолка обычно набираются с помощью левой и правой квадратных скобок, где отсутствуют верхние (для функции пола) или нижние (для функции потолка) горизонтальные полосы ( для пола и для потолка). Эти символы представлены в Юникоде:
U + 2308 ⌈ ЛЕВЫЙ ПОТОЛОК (HTML ⌈ ·⌈, &LeftCeiling )
U + 2309 ⌉ ПОТОЛОК ПРАВЫЙ (HTML ⌉ ·⌉, &RightCeiling )
U + 230A ⌊ ЛЕВЫЙ ЭТАЖ (HTML ⌊ ·&LeftFloor, ⌊ )
U + 230B ⌋ ПРАВЫЙ ЭТАЖ (HTML ⌋ ·⌋, &RightFloor )
В Латекс системе наборной, эти символы могут быть определены с и команд в математическом режиме, и расширены по размеру с использованием и по мере необходимости.\lfloor, \rfloor, \lceil\rceil\left\lfloor, \right\rfloor, \left\lceil\right\rceil
Определение и свойства
Даны действительные числа x и y , целые числа k , m , n и набор целых чисел, пол и потолок можно определить уравнениями
Поскольку в полуоткрытом интервале длины один находится ровно одно целое число , для любого действительного числа x существуют уникальные целые числа m и n, удовлетворяющие уравнению
где а также также можно принять за определение пола и потолка.
Эквивалентности
Эти формулы можно использовать для упрощения выражений, связанных с полом и потолком. [10]
Поскольку ни одна из функций, обсуждаемых в этой статье, не является непрерывной, ни одна из них не имеет разложения в степенной ряд . Поскольку пол и потолок не периодичны, они не имеют равномерно сходящихся разложений в ряд Фурье . Функция дробной части имеет разложение в ряд Фурье [18]
для x не целое число.
В точках разрыва ряд Фурье сходится к значению, которое является средним его пределов слева и справа, в отличие от функций пола, потолка и дробной части: для фиксированного y и кратного x y данный ряд Фурье сходится к y / 2, а не к x mod y = 0. В точках непрерывности ряд сходится к истинному значению.
Используя формулу floor (x) = x - {x}, получаем
для x не целое число.
Приложения
Оператор мода
Для целого х и положительного целого числа у , в операции по модулю , обозначенном х мод у , дает значение остатка , когда х делится на у . Это определение может быть расширено до вещественных x и y , y 0, по формуле
Тогда из определения функции пола следует, что эта расширенная операция удовлетворяет многим естественным свойствам. Примечательно, что x mod y всегда находится между 0 и y , т. Е.
Пусть p и q - различные положительные нечетные простые числа, и пусть
Во-первых, лемма Гаусса используется, чтобы показать, что символы Лежандра задаются формулами
а также
Второй шаг - использовать геометрический аргумент, чтобы показать, что
Объединение этих формул дает квадратичную взаимность в виде
Существуют формулы, в которых используется floor для выражения квадратичного характера малых чисел по модулю нечетных простых чисел p : [21]
Округление
Для произвольного действительного числа , округление к ближайшему целому числу с разрывом связи в сторону положительной бесконечности дается выражением; округление в сторону отрицательной бесконечности дается как.
Если разрыв связи отличен от 0, тогда функция округления равна , а округление в сторону даже можно выразить более громоздкими, которое является приведенным выше выражением для округления в сторону положительной бесконечности минус целочисленность индикатор для.
Усечение
Усечение положительного числа дается Усечение отрицательного числа дается . Очевидно, что усечение сам по себе .
Усечение любого действительного числа может быть дано следующим образом: , где sgn - знаковая функция .
Количество цифр
Количество цифр в базе b положительного целого числа k равно
Факторы факториалов
Пусть n - натуральное число, а p - положительное простое число. Показатель наибольшей степени числа p , делящего n ! дается версией формулы Лежандра [22]
где это способ записи n в базе p . Это конечная сумма, поскольку этажи равны нулю при p k > n .
Битти последовательность
Последовательность Битти показывает, как каждое положительное иррациональное число приводит к разделению натуральных чисел на две последовательности с помощью функции пола. [23]
Постоянная Эйлера (γ)
Существуют формулы для постоянной Эйлера γ = 0,57721 56649 ..., которые включают пол и потолок, например [24]
а также
Дзета-функция Римана (ζ)
Функция дробной части также появляется в интегральных представлениях дзета-функции Римана . Несложно доказать (с помощью интегрирования по частям) [25], что если- любая функция с непрерывной производной на отрезке [ a , b ],
Сдача для реальной части в ы больше 1 и выпускающей и Ь целые числа, и выпускающего б к бесконечности дает
Эта формула действительна для всех s с действительной частью больше -1 (кроме s = 1, где есть полюс) и в сочетании с разложением Фурье для { x } может использоваться для расширения дзета-функции на всю комплексную плоскость. и доказать его функциональное уравнение. [26]
При s = σ + it в критической полосе 0 < σ <1,
В 1947 году ван дер Поль использовал это представление для создания аналогового компьютера для поиска корней дзета-функции. [27]
Формулы для простых чисел
Функция пола присутствует в нескольких формулах, характеризующих простые числа. Например, посколькуравно 1, если m делит n , и 0 в противном случае, из этого следует, что положительное целое число n является простым тогда и только тогда, когда [28]
Можно также дать формулы для получения простых чисел. Например, пусть p n будет n -м простым числом, и для любого целого числа r > 1 определите действительное число α суммой
Тогда [29]
Аналогичный результат состоит в том, что существует число θ = 1,3064 ... ( постоянная Миллса ) со свойством, что
все простые. [30]
Также существует число ω = 1,9287800 ... со свойством, что
все простые. [30]
Пусть π ( x ) будет количеством простых чисел, меньших или равных x . Из теоремы Вильсона легко следует, что [31]
Также, если n ≥ 2, [32]
Ни одна из формул в этом разделе не имеет практического применения. [33] [34]
Решенные проблемы
Рамануджан представил эти задачи в Журнал Индийского математического общества . [35]
Если n - натуральное число, докажите, что
Нерешенная проблема
Изучение проблемы Варинга привело к нерешенной проблеме:
Существуют ли такие натуральные числа k ≥ 6, что [36]
?
Малер [37] доказал, что таких k может быть только конечное число ; никто не известен.
Компьютерные реализации
Функция Int из преобразования с плавающей запятой в C
В большинстве языков программирования простейший метод преобразования числа с плавающей запятой в целое - это не пол или потолок, а усечение . Причина этого историческая, так как первые машины использовали дополнение до единиц, а усечение было проще реализовать (пол проще в дополнении до двух ). FORTRAN был определен так, чтобы требовать такого поведения, и поэтому почти все процессоры реализуют преобразование таким образом. Некоторые считают это неудачным историческим дизайнерским решением, которое привело к ошибкам при обработке отрицательных смещений и графики на отрицательной стороне источника. [ необходима цитата ]
Побитового сдвига вправо целого знакового от такой же как . Деление на степень 2 часто записывается как сдвиг вправо, но не для оптимизации, как можно было бы предположить, а потому, что требуется минимум отрицательных результатов. Если предположить, что такие сдвиги являются «преждевременной оптимизацией», и замена их разделением может привести к поломке программного обеспечения. [ необходима цитата ]
Многие языки программирования (включая C , C ++ , [38] [39] C # , [40] [41] Java , [42] [43] PHP , [44] [45] R , [46] и Python [47] ) предоставляют стандартные функции для пола и потолка, обычно называемые floorи ceil, или реже ceiling. [48] Язык, который APL использует ⌊xдля обозначения пола. Язык программирования J , продолжение APL, предназначенный для использования стандартных символов клавиатуры, используется <.для пола и >.потолка. [49] АЛГОЛ использует entierдля пола.
Программное обеспечение для работы с электронными таблицами
Большинство программ для работы с электронными таблицами поддерживают те или иные ceilingфункции. Хотя детали в разных программах различаются, большинство реализаций поддерживают второй параметр - кратное, до которого необходимо округлить данное число. Например, ceiling(2, 3)округление 2 до ближайшего кратного 3 дает 3. Однако определение того, что означает «округление», различается от программы к программе.
В Microsoft Excel использовалась почти полная противоположность стандартной нотации: INTдля пола, что FLOORозначает «округление к нулю» и « CEILINGокругление от нуля». [50] Это продолжилось до формата файла Office Open XML . Excel 2010 теперь следует стандартному определению. [51]
Формат файла OpenDocument , используемый OpenOffice.org , Libreoffice и другими, следует математическому определению потолка для своей ceilingфункции с дополнительным параметром для совместимости с Excel. Например, CEILING(-4.5)возвращает −4.
Смотрите также
Кронштейн (математика)
Целочисленная функция
Ступенчатая функция
Заметки
Перейти ↑ Graham, Knuth, & Patashnik, Ch. 3.1
^ Lemmermeyer, стр. 10, 23.
^ например, Кассель, Харди и Райт и Рибенбойм используют обозначения Гаусса, Грэм, Кнут и Паташник, а Крэндалл и Померанс используют обозначения Айверсона.
^ Айверсон, стр. 12.
^ Хайэм, стр. 25.
^ См. Статью Wolfram MathWorld.
^ Математические слова: функция пола .
^ Mathwords: функция потолка
Перейти ↑ Graham, Knuth, & Patashnik, p. 70.
^ Грэхем, Кнут и Patashink, гл. 3
Перейти ↑ Graham, Knuth, & Patashnik, p. 73
Перейти ↑ Graham, Knuth, & Patashnik, p. 85
Перейти ↑ Graham, Knuth, & Patashnik, p. 85 и Исх. 3,15
Перейти ↑ Graham, Knuth, & Patashnik, Ex. 3,12
^ JEblazek, Combinatoire de N-modules de Catalan , магистерская диссертация, стр.17 .
Перейти ↑ Graham, Knuth, & Patashnik, p. 94
Перейти ↑ Graham, Knuth, & Patashnik, p. 71, примените теорему 3.10 с x / m в качестве входных данных и делением на n как функцией
^ Титчмарш, стр. 15, уравнение. 2.1.7
^ Lemmermeyer, § 1.4, пример. 1,32–1,33
^ Hardy & Wright, §§ 6.11-6.13
^ Lemmermeyer, стр. 25
^ Харди и Райт, Th. 416
Перейти ↑ Graham, Knuth, & Patashnik, pp. 77–78
^ Эти формулы взяты из статьи в Википедии о константе Эйлера , в которой есть еще много других.
^ Титчмарш, стр. 13
^ Titchmarsh, pp.14-15
^ Crandall & Pomerance, стр. 391
^ Crandall & Pomerance, Ex. 1.3, п. 46. Бесконечный верхний предел суммы можно заменить на n . Эквивалентное условие: n > 1 является простым тогда и только тогда, когда .
^ Харди и Райт, § 22.3
^ а б Рибенбойм, стр. 186
^ Рибенбойм, стр. 181
^ Crandall & Pomerance, Ex. 1.4, п. 46
^ Рибенбойм, стр.180 говорит, что «Несмотря на нулевую практическую ценность формул ... [они] могут иметь некоторое отношение к логикам, которые хотят ясно понять, как различные части арифметики могут быть выведены из различных аксиоматизаций ...»
^ Харди и Райт, стр. 344-345 «Любая из этих формул (или любая подобная) достигла бы другого статуса, если бы точное значение числа α ... могло быть выражено независимо от простых чисел. этого, но нельзя исключать, что это совершенно невозможно ».
↑ Рамануджан, Вопрос 723, Документы, стр. 332
^ Харди и Райт, стр. 337
↑ Mahler, K. О дробных частях степеней рационального числа II , 1957, Mathematika, 4 , страницы 122–124
^ "C ++ справочник floorфункции" . Проверено 5 декабря 2010 года .
^«Справочник ceilфункции C ++ » . Проверено 5 декабря 2010 года .
Штефан Порубски, «Целочисленные функции округления» , Интерактивный информационный портал по алгоритмической математике , Институт компьютерных наук Чешской академии наук, Прага, Чешская Республика, дата обращения 24 октября 2008 г.
Вайсштейн, Эрик В. «Функция пола» . MathWorld .
Вайсштейн, Эрик В. "Функция потолка" . MathWorld .