床関数と天井関数


床関数(ゆかかんすう、テンプレート:Lang-en-short)と天井関数(てんじょうかんすう、テンプレート:Lang-en-short)は、実数に対してそれぞれ、自身以下の最大、自身以上の最小の整数を出力する関数である。
英語の テンプレート:Lang, テンプレート:Lang といった名称と、, という記法は、プログラミング言語 APL の元となる A Programming Language という本の中でケネス・アイバーソンによって1962年に導入された[1]。
床関数と天井関数の間には
の関係があるため、どちらで表しても本質的には同様となる。
床関数
床関数は、実数 テンプレート:Mvar に対して テンプレート:Mvar 以下の最大の整数と定義され、
などと書かれる。3番目の記号はガウス記号と呼ばれる。カール・フリードリヒ・ガウスが7つの証明を示した平方剰余の相互法則の3番目の証明に用いた(1808年)ことに由来する[2][3]。日本、中国、ドイツなどでよく使われている。日本の高校数学や大学入試ではガウス記号が使われることがほとんどである。
床関数の定義を数式で表すと次のようになる:
実数 テンプレート:Mvar に対し、 を整数部分、 を小数部分と呼ぶ。整数部分は整数、小数部分は 0 以上 1 未満である。小数部分は テンプレート:Math2 や テンプレート:Math とも書かれる。例えば、入力値が0以上や整数なら以下のようになる:
テンプレート:Mvar を任意の整数とすると、
(テンプレート:Π は円周率、テンプレート:Mvar はネイピア数)
なお、入力値が負非整数の場合は、整数部分・小数部分は小数表示のそれぞれ小数点以上・以下の部分とならないことに注意する必要がある:
- ( は−1, は0.7ではない)
テンプレート:Math の整数部分を テンプレート:Math と定義する流儀(「0への丸め」)もあるが一般的ではない。
正の有理数の帯分数表示は、この整数部分と小数部分(真分数)の和分解への表示である。
天井関数
床関数と密接に関係しているのが天井関数である。天井関数は実数 テンプレート:Mvar に対して テンプレート:Mvar 以上の最小の整数と定義され、
などと書かれる。これを数式で表すと次のようになる:
例えば、以下のようになる。
テンプレート:Mvar を任意の整数とすると、
床関数と天井関数の性質
基本的性質
以下 テンプレート:Mvar は任意の実数とする。
- は整数
であるが、上記2つが床関数を特徴付ける。
同様に、天井関数は
- は整数
によって特徴付けられる。
床関数と天井関数の関係は、テンプレート:Mvar が整数、非整数であるかによってそれぞれ
- は 0 か 1
となる。床関数と天井関数の基本不等式を併せると
- 任意の整数 テンプレート:Mvar に対し、
床関数と天井関数は互いに他方を表せる:
- 床関数・天井関数は冪等である:
- 任意の整数 テンプレート:Mvar に対し、
- .
解析的性質
- 床関数と天井関数は広義増加である:
床関数・天井関数は、区分的に定数関数であり、整数点(すなわち、整数となる テンプレート:Mvar)で不連続であるが半連続(床関数は上半連続、天井関数は下半連続)である。床関数・天井関数の非整数点での微分係数が存在し、テンプレート:Math である。
- テンプレート:Mvar が整数でないとき、床関数と天井関数は次のようにフーリエ級数展開できる:
- 同様に テンプレート:Mvar が整数でないとき、逆余接関数と余接関数を用いて次のように表せる:
- 床関数と天井関数の平均は次のようにフーリエ級数展開できる:
床関数の性質
- テンプレート:Mvar が整数、テンプレート:Mvar が正の整数のとき、次の式が成り立つ。
- テンプレート:Mvar が整数のとき、テンプレート:Math2 と は同値である。意匠を凝らした言い方では、床関数はガロア接続の片翼を担っており、整数を実数へ埋め込む関数の上随伴である。
- 床関数を用いると、いくつかの素数生成式を作ることができる(ただしこれらは実際の計算には役立たない)。1つの例として、テンプレート:Mvar番目の素数 テンプレート:Mvar は
- エルミートの恒等式 (Hermite’s identity):実数 テンプレート:Mvar, 正の整数 テンプレート:Mvar に対し、
- 互いに素である正の整数 テンプレート:Math2 に対し、次の式が成り立つ[4]:
- 自然数 テンプレート:Mvar に対し、テンプレート:Mvar の 1 以外の正の約数の個数を テンプレート:Mvar とすると、
- レイリーの定理は、1 より大きい無理数が、床関数を用いて自然数の集合を2つに分ける方法を表している。
- ワイソフのゲーム(2山の片方からまたは、両方から同数ずつ取る石取りゲーム)の後手必勝形は
- (テンプレート:Mvar は 0 以上の整数、テンプレート:Mvar は黄金比)
- 正の整数 テンプレート:Mvar を [[位取り記数法|テンプレート:Mvar進法]]で表すと、 桁となる。
- ルジャンドルの公式:自然数 テンプレート:Mvar の階乗が素数 テンプレート:Mvar で(整数の範囲で)割り切れる回数は
- [[正多角形|正テンプレート:Mvar角形]](テンプレート:Mvar は3以上の自然数)の対角線の長さの種類は だけある。
四捨五入の床関数表示など
実数 テンプレート:Math2 に制限すると、床関数・天井関数とは小数第1位での切り捨て・切り上げである。これを利用して、位取り記数法表示での任意の位での切り捨てや四捨五入を床関数で表すことができる。
- 実数 テンプレート:Mvar の小数点以下を四捨五入した値は、次の式で表される:
以下十進法表示とする。実数 テンプレート:Math2 に対して、
- テンプレート:Mathの位での切り捨ては
- 小数第テンプレート:Mvar位での切り捨ては
- テンプレート:Mathの位での四捨五入は
- 小数第テンプレート:Mvar位での四捨五入は
組版
床関数は 、天井関数は と上下の欠けた角括弧で表される。これらは、[[LaTeX|テンプレート:LaTeX]] では \lfloor, \rfloor, \lceil, \rceil と書かれる。テンプレート:Lang では U+2308 から U+230B に割り当てられている。
| 記号 | Unicode | JIS X 0213 | 文字参照 | 名称
テンプレート:CharCode テンプレート:CharCode テンプレート:CharCode テンプレート:CharCode |
|---|
脚注
参考文献
外部リンク
- ↑ テンプレート:Harvnb
- ↑ テンプレート:Harvnb
- ↑ テンプレート:Harvnb
- ↑ 整数問題としてのテンプレート:Nowiki (2) (2015.8.25) 犬プリ(赤阪正純)