取整函数 - 维基百科,自由的百科全书

下取整函数
上取整函数

数学计算机科学中,取整函数是一类将实数映射到相近的整数函数[1]

常用的取整函数有两个,分别是下取整函数(英語:floor function)和上取整函数ceiling function)。

下取整函数即為取底符號,在数学中一般记作或者或者,在计算机科学中一般记作floor(x),表示不超过x的整数中最大的一个。

举例来说,。对于非负的实数,其下取整函数的值一般叫做它的整数部分取整部分。而叫做x小数部分。每个分数都可以表示成其整数部分与一个真分数的和,而实数的整数部分和小数部分是与此概念相应的拓延。

下取整函数的符号用方括号表示(),称作高斯符号,首次出現是在卡爾·弗里德里希·高斯的數學著作《算术研究》。


上取整函数即為取頂符號在数学中一般记作,在计算机科学中一般记作ceil(x),表示不小于x的整数中最小的一个。

举例来说,

计算机中的上取整函数和下取整函数的命名来自于英文ceiling(天花板)和floor(地板),1962年由肯尼斯·艾佛森于《A Programming Language》引入。[2]

性质

[编辑]

对于高斯符號,有如下性质。

  • 按定义:
    当且仅当x为整数时取等号。
  • 设x和n为正整数,则:
  • n为正整数时,有:
    其中表示除以的餘數。
  • 对任意的整数k和任意实数x
  • 一般的數值修約規則可以表述为将x映射到floor(x + 0.5);
  • 高斯符號不是连续函数,但是上半连续的。作为一个分段的常数函数,在其导数有定义的地方,高斯符號导数为零。
  • x为一个实数,n为整数,则由定义,nx当且仅当n ≤ floor(x)。
  • x是正數時,有:
  • 用高斯符號可以写出若干个素数公式,但没有什么实际价值,見§ 質數公式
  • 对于非整数的x,高斯符號有如下的傅里叶级数展开:
  • 根据Beatty定理,每个正无理数都可以通过高斯符號制造出一个整数集的分划
  • 最后,对于每个正整数k,其在 p 进制下的表示有 数位

函數間之關係

[编辑]

由上下取整函數的定義,可見

等號當且僅當為整數,即

實際上,上取整與下取整函數作用於整數,效果等同恆等函數

自變量加負號,相當於將上取整與下取整互換,外面再加負號,即:

且:

至於小數部分,自變量取相反數會使小數部分變成關於1的「補數」:

上取整、下取整、小數部分皆為冪等函數,即函數疊代兩次的結果等於自身:

而多個上取整與下取整依次疊代的效果,相當於最內層一個:

因為外層取整函數實際衹作用在整數上,不帶來變化。

[编辑]

為正整數,且,則

為正整數,則[3]

為正數,則[4]

,上式推出:

更一般地,對正整數,有埃爾米特恆等式英语Hermite's identity[5]

對於正整數,以下兩式可將上下取整函數互相轉化:[6]

對任意正整數,有:[7]

作為特例,當互質時,上式簡化為

此等式可以幾何方式證明。又由於右式關於對稱,可得

更一般地,對正整數,有

上式算是一種「互反律」(reciprocity law[7],與§ 二次互反律有關。

應用

[编辑]

二次互反律

[编辑]

高斯給出二次互反律的第三個證明,經艾森斯坦修改後,有以下兩個主要步驟。[8][9]

為互異奇質數,又設

首先,利用高斯引理,證明勒让德符号可表示為和式:

同樣

其後,採用幾何論證,證明

總結上述兩步,得

此即二次互反律。一些小整數模奇質數的二次特徵標,可以高斯符號表示,如:[10]

質數公式

[编辑]

下取整函數出現於若干刻畫質數的公式之中。舉例,因為整除時等於,否則為,所以正整數為質數当且仅当[11]

除表示質數的條件外,還可以寫出公式使其取值為質數。例如,記第個質數為,任選一個整數,然後定義實數

則衹用取整、冪、四則運算可以寫出質數公式:[12]

類似還有米尔斯常数,使

皆為質數。[13]

若不疊代三次方函數,改為疊代以為㡳的指數函數,亦有使

皆為質數。[13]

質數計算函數表示小於或等於的質數個數。由威尔逊定理,可知[14]

又或者,當時:[15]

本小節的公式未有任何實際用途。[16][17]

其它等式

[编辑]
  • 对于所有实数x,有:
  • x为一个实数,n为整数,则
  • 对于两个相反数的高斯符號,有:
如果x为整数,则
否则

参考来源

[编辑]
  1. ^ Ronald Graham, Donald Knuth and Oren Patashnik英语Oren Patashnik. "Concrete Mathematics". Addison-Wesley, 1999. Chapter 3, "Integer Functions".
  2. ^ Iverson, Kenneth E. A Programming Language. Wiley. 1962. 
  3. ^ Graham, Knuth & Patashnik 1994,第73頁.
  4. ^ Graham, Knuth & Patashnik 1994,第85頁.
  5. ^ Graham, Knuth & Patashnik 1994,p. 85 and Ex. 3.15.
  6. ^ Graham, Knuth & Patashnik 1994,Ex. 3.12.
  7. ^ 7.0 7.1 Graham, Knuth & Patashnik 1994,第94頁.
  8. ^ Lemmermeyer 2000,§ 1.4, Ex. 1.32–1.33.
  9. ^ Hardy & Wright 1980,§§ 6.11–6.13.
  10. ^ Lemmermeyer 2000,第25頁.
  11. ^ Crandall & Pomerance 2001,Ex. 1.3, p. 46,求和式的上限可以換成。尚有一個等價的表述:為質數當且僅當
  12. ^ Hardy & Wright 1980,§ 22.3.
  13. ^ 13.0 13.1 Ribenboim 1996,第186頁
  14. ^ Ribenboim 1996,第181頁.
  15. ^ Crandall & Pomerance 2001,Ex. 1.4, p. 46.
  16. ^ Ribenboim 1996,第180頁(譯文):「雖然該些公式毫不實用⋯⋯但邏輯學家希望清晰明白不同公理體系,如何推導出算術各方面,則或許與此有關⋯⋯」
  17. ^ Hardy & Wright 1980,第344—345頁(譯文):「若數的準確值⋯⋯可以無關質數的方式表達,則該些公式之任一(或一切類似公式)的地位將截然不同。似乎沒有此種可能,但卻不能完全排除。」

另见

[编辑]

截尾函数