床関数と天井関数

thumb|床関数
thumb|天井関数
**床関数**（ゆかかんすう、）と**天井関数**（てんじょうかんすう、）は、整数関数の一種で、実数に対してそれぞれ、自身以下の最大、自身以上の最小の整数を出力する関数である。

英語の ,  といった名称と、\lfloor x \rfloor, \lceil x \rceil という記法は、プログラミング言語 APL の元となる *A Programming Language* という本の中でケネス・アイバーソンによって1962年に導入された。floorは**切下げ関数**、ceilingは**切上げ関数**とも訳される（非整数部分を「切る」という意味）。

床関数と天井関数の間には
:\lceil x \rceil = - \lfloor -x \rfloor
の関係があるため、どちらで表しても本質的には同様となる。

## 床関数
**床関数**は、実数  に対して  以下の最大の整数と定義され、
* \lfloor x \rfloor
* \operatorname{floor}(x)
* [x]
などと書かれる。3番目の記号は**ガウス記号**と呼ばれる。カール・フリードリヒ・ガウスが7つの証明を示した平方剰余の相互法則の3番目の証明に用いた（1808年）ことに由来する。日本、中国、ドイツなどでよく使われている。日本の高校数学や大学入試ではガウス記号が使われることがほとんどである。

床関数の定義を数式で表すと次のようになる：
:\lfloor x \rfloor:= \max \{ n \in \mathbb{Z} \mid n\le x\}.
実数  に対し、\lfloor x \rfloor を**整数部分**、x - \lfloor x \rfloor を**[[小数]]部分**と呼ぶ。整数部分は整数、小数部分は 0 以上 1 未満である。小数部分は  や  とも書かれる。例えば、入力値が0以上や整数なら以下のようになる：

 を任意の整数とすると、
*\lfloor n \rfloor = n,\;\{ n \}=0
*\lfloor 1.7 \rfloor = 1,\;\{ 1.7 \} = 0.7
*\left\lfloor \frac{4}{3} \right\rfloor = 1,\;\left\{ \frac{4}{3} \right\} = \frac{1}{3}
*\lfloor \sqrt{3} \rfloor = \lfloor 1.732\cdots \rfloor = 1,\;\{ \sqrt{3} \} = \sqrt{3} -1 = 0.732\cdots
*\lfloor \pi \rfloor = \lfloor 3.14\cdots \rfloor = 3,\;\{ \pi \} = \pi -3 = 0.14\cdots
*\lfloor e \rfloor = \lfloor 2.71\cdots \rfloor = 2,\;\{e\} = e-2 = 0.71\cdots
（ は円周率、 はネイピア数）

なお、入力値が負非整数の場合は、整数部分・小数部分は小数表示のそれぞれ小数点以上・以下の部分とならないことに注意する必要がある：
*\lfloor -1.7 \rfloor = -2,\;\{ -1.7 \} = 0.3（\lfloor -1.7 \rfloor は&minus;1, \{ -1.7 \} は0.7ではない）
*\left\lfloor -\frac{4}{3} \right\rfloor = -2,\;\left\{ -\frac{4}{3} \right\} = \frac{2}{3}
*\lfloor -\sqrt{3} \rfloor = \lfloor -1.732\cdots \rfloor = -2,\;\{ -\sqrt{3} \} = 2- \sqrt{3} = 0.267\cdots
*\lfloor -\pi \rfloor = \lfloor -3.14\cdots \rfloor = -4,\;\{ -\pi \} = 4- \pi = 0.85\cdots
 の整数部分を  と定義する流儀（「0への丸め」）もあるが一般的ではない。

正の有理数の帯分数表示は、この整数部分と小数部分（真分数）の和分解への表示である。

## 天井関数
床関数と密接に関係しているのが**天井関数**である。天井関数は実数  に対して  以上の最小の整数と定義され、
*\lceil x \rceil
*\operatorname{ceil} (x)
*\operatorname{ceiling} (x)
などと書かれる。これを数式で表すと次のようになる：
:\lceil x \rceil := \min \{n \in \mathbb{Z} \mid x \le n \}.
例えば、以下のようになる。

 を任意の整数とすると、
*\lceil n \rceil = n
*\lceil 1.7 \rceil = 2
*\lceil \sqrt{3} \rceil = \lceil 1.732\cdots \rceil = 2
*\lceil -\pi \rceil = \lceil -3.14\cdots \rceil = -3

## 床関数と天井関数の性質
### 基本的性質
以下  は任意の実数とする。
*\lfloor x \rfloor は整数
*\lfloor x \rfloor \le x 
であるが、上記2つが床関数を特徴付ける。

同様に、天井関数は
*\lceil x \rceil は整数
*\lceil x \rceil -1
によって特徴付けられる。

床関数と天井関数の関係は、 が整数、非整数であるかによってそれぞれ
*\lceil x \rceil - \lfloor x \rfloor は 0 か 1
となる。床関数と天井関数の基本不等式を併せると
*\lceil x \rceil - 1 \le \lfloor x\rfloor \le x \le \lceil x \rceil \le \lfloor x \rfloor + 1
*任意の整数  に対し、
*:\lfloor n+x \rfloor = n + \lfloor x\rfloor
*:\lceil n+x \rceil = n + \lceil x\rceil

床関数と天井関数は互いに他方を表せる：
*\lceil x \rceil = - \lfloor - x \rfloor
*\lfloor x \rfloor = - \lceil - x \rceil
*床関数・天井関数は冪等である：
*:\lfloor\lfloor x \rfloor\rfloor = \lfloor x \rfloor
*:\lceil\lceil x \rceil\rceil = \lceil x \rceil
*任意の整数  に対し、
*:\left\lfloor \frac{n}{2} \right\rfloor + \left\lceil \frac{n}{2} \right\rceil = n.

### 解析的性質
* 床関数と天井関数は広義増加である：
*:x_1 
*:x_1 
床関数・天井関数は、区分的に定数関数であり、整数点（すなわち、整数となる ）で不連続であるが半連続（床関数は上半連続、天井関数は下半連続）である。床関数・天井関数の非整数点での微分係数が存在し、 である。
*  が整数でないとき、床関数と天井関数は次のようにフーリエ級数展開できる：
:\lfloor x\rfloor = x - \frac{1}{2} + \frac{1}{\pi} \sum_{k=1}^\infty \frac{\sin(2 \pi kx)}{k}.
:\lceil x\rceil = x + \frac{1}{2} + \frac{1}{\pi} \sum_{k=1}^\infty \frac{\sin(2 \pi kx)}{k}.
* 同様に  が整数でないとき、逆余接関数と余接関数を用いて次のように表せる：
:\lfloor x\rfloor = x- \frac{1}{\pi} \arccot \bigl( \cot(\pi x) \bigr).
:\lceil x\rceil = x + \frac{1}{\pi} \arccot \bigl( \cot (-\pi x) \bigr).
*床関数と天井関数の平均は次のようにフーリエ級数展開できる：
*:\frac{1}{2} \left( \lfloor x\rfloor + \lceil x\rceil \right) = x + \frac{1}{\pi} \sum_{k=1}^\infty \frac{\sin(2 \pi kx)}{k}.

### 床関数の性質
* が整数、 が正の整数のとき、次の式が成り立つ。
*:\left\lfloor \frac{x}{n} \right\rfloor \geq \frac{x}{n} - \frac{n-1}{n}.
* が整数のとき、 と n \le \lfloor x \rfloor は同値である。意匠を凝らした言い方では、床関数はガロア接続の片翼を担っており、整数を実数へ埋め込む関数の上随伴である。
*床関数を用いると、いくつかの素数生成式を作ることができる（ただしこれらは実際の計算には役立たない）。1つの例として、番目の素数  は
:p_n = 1 + \textstyle\sum\limits_{j=1}^{2^n} \left\lfloor \sqrt[n]{\dfrac{n}{\sum\limits_{i=1}^j \left\lfloor \cos^2 \frac{(i-1)!+1}{i} \pi \right\rfloor}} \right\rfloor.
*エルミートの恒等式 (Hermite’s identity)：実数 , 正の整数  に対し、
*:\lfloor na \rfloor = \textstyle\sum\limits_{i=0}^{n-1} \left\lfloor a+ \dfrac{i}{n} \right\rfloor .
*互いに素である正の整数  に対し、次の式が成り立つ：
*:\textstyle\sum\limits_{i=1}^{n-1} \left\lfloor \dfrac{im}{n} \right\rfloor = \dfrac{(m-1)(n-1)}{2}.
*自然数  に対し、 の 1 以外の正の約数の個数を  とすると、
*:\textstyle\sum\limits_{\scriptstyle i+j=n+1 \atop \scriptstyle i,j \geq 1} \left\lfloor \dfrac{i}{j} \right\rfloor = \textstyle\sum\limits_{k=2}^{n+1} a_k（）
*レイリーの定理は、1 より大きい無理数が、床関数を用いて自然数の集合を2つに分ける方法を表している。
*ワイソフのゲーム（2山の片方からまたは、両方から同数ずつ取る石取りゲーム）の後手必勝形は
*:( \lfloor n \varphi \rfloor , \lfloor n \varphi^2 \rfloor )（ は 0 以上の整数、 は黄金比）
*正の整数  を 進法で表すと、\lfloor \log_n k \rfloor + 1 桁となる。
*ルジャンドルの公式：自然数  の階乗が素数  で（整数の範囲で）割り切れる回数は \textstyle\sum\limits_{i=1}^{\lfloor \log_p n \rfloor} \left\lfloor \dfrac{n}{p^i} \right\rfloor
*正角形（ は3以上の自然数）の対角線の長さの種類は \left\lfloor \frac{n}{2} \right\rfloor -1 \Bigl( {=} \; \frac{2n-5+(-1)^n}{4} \Bigr) だけある。

## 四捨五入の床関数表示など
実数  に制限すると、床関数・天井関数とは小数第1位での切り捨て・切り上げである。これを利用して、位取り記数法表示での任意の位での切り捨てや四捨五入を床関数で表すことができる。

*実数  の小数点以下を四捨五入した値は、次の式で表される：
*:\lfloor x+0.5 \rfloor \quad (x \ge 0)
*:\lceil x-0.5 \rceil \quad (x \le 0)

以下十進法表示とする。実数  に対して、
*の位での切り捨ては
*:10^{n+1} \left\lfloor \frac{x}{10^{n+1}} \right\rfloor
*小数第位での切り捨ては
*:\frac{1}{10^{n-1}} \lfloor 10^{n-1} x \rfloor
*の位での四捨五入は
*:10^{n+1} \left\lfloor \frac{x}{10^{n+1}} +0.5 \right\rfloor
*小数第位での四捨五入は
*:\frac{1}{10^{n-1}} \lfloor 10^{n-1} x +0.5 \rfloor

## 組版
床関数は \lfloor x \rfloor、天井関数は\lceil x \rceil と上下の欠けた角括弧で表される。これらは、 では `\lfloor`, `\rfloor`, `\lceil`, `\rceil` と書かれる。 では `U+2308` から `U+230B` に割り当てられている。

## 脚注

## 参考文献
*
*
*

## 外部リンク
*
*
*
*