算術において'''除法'''(じょほう、'''除算'''、'''割り算'''とも、''division'')とは、自然数あるいは整数同士の間に定義される四則演算(加・減・乗・除)のひとつである。乗法とは互いに逆といってよい関係にある。
除法は、整数の除法の場合その意味から'''等分除'''と'''包含除'''の 2 種類に分類される。ある量が「基準となる量」の「幾つ分」に除されるかを考えるとき、「基準となる量」を求めるのが等分除、「幾つ分」になるかを求めるのが包含除である。
数学においては、乗法を持つ代数的構造について「逆元を掛けること」として除法を考えることができる。一般には乗法が可換であるとは限らないため、除法も左右 2 通り考えられる。字義的には「割り算」は「割る」行為(すなわち等分除)に通じ、「除法」は「除く」行為、引き算(累減)に通じ、語義解釈では、どちらも除法の素朴概念を象徴する行為となる。
あるものが、何かを基準に幾つか集まって全体を形作っているという状況を考える。このとき、"全体量" が "基準量" をどんな "個数" だけ集めたものにあたるのかを求めることを'''除法'''という。つまり
[全体量] = [基準量] × [個数]
を成り立たせる式を導くことが素朴な意味での除法文章題の目的である。ここで必ず与えられるのは全体量のみであって、求めるべきものとして基準量、個数のいずれを与えるかによってそれぞれ除法の意味も分かれる。
基準となる量を指定して、全体量の中に基準量が何個分入るかという「個数を求める演算」
[個数] = [全体量] ÷ [基準量]
を'''包含除'''という。また、個数を指定しておいて、全体量の中にその個数分だけ基準量を入れようとすると基準量はどれだけになるのかという「基準量を求める演算」
[基準量] = [全体量] ÷ [個数]
を'''等分除'''という。
包含除も等分除も、素朴な意味として「個数」の概念を考えている以上は "個数" は自然数ともみなしえる。"全体量" や "基準量" は、初歩的な文章題において素朴な意味では自然数とみなせるが、数学上は自然数に囚われる必要はなく有理数や実数を想定しえる。例えば、素朴な意味で「個数」の概念の制約を受けて全体量は基準量よりも常に大きくないといけないかとの誤解もある。商0、余り3という状況は小学校の教科書の包含除の導入段階で取り上げられる。すなわち、小学校で学ぶ最初の段階では、0回が含まれており、自然数+0という数範囲が想定されている。
現実的な行為「割る」と「除く」の相違にも起源する等分除と包含除の必然的区別や制約は特定事象で厳然として存在している。他方で除法概念の拡張によって数学上では話題にせずに済むようになると考える立場もある。包含除における "個数" は、式の構造の一致から全体量と基準量との比あるいは'''比率'''とみなすことで拡張できる。つまり包含除の式を
[比率] := [全体量] ÷ [基準量]
と読み替える。これによって自然数である "個数" の概念に囚われない除法の概念を再定義することができるようになる。ここに現れる比は、全体量が基準量に占める割合であるということもできる。このときすでに、全体量とか基準量とかいう概念は相対化されており、基準量が全体量を超えるとしても不都合はなくなる。他方、等分除における "基準量" は「1 個あたり」の量を与えるが、個数ではなく割合と考えたときの「1 個あたり」(比率 1 あたりの量)の量を'''1 あたり量'''などと呼ぶ。つまり
[1 あたり量] := [全体量] ÷ [比率]
と等分除を修正する。
なお、「1あたり量」を「単位あたり量」と呼ぶ立場がある。呼称の相違には、単位設定行為に関する積極性の相違がある。例えば、単位分数という用語は、分数の単位を全体から単位分数へ変更することに通じている。整数 ''m'' と ''n'' に対して、''m'' = ''qn'' を満たす整数 ''q'' が唯一つ定まるとき、''m'' ÷ ''n'' = ''q'', ''q'' = ''m''/''n'' などと表して、''m'' は ''n'' で'''整除'''(せいじょ)される、'''割り切れる'''(わりきれる、''divisible'')あるいは ''n'' は ''m'' を整除する、割り切るなどと言う。
またこのとき、''m'' を'''被除数'''(ひじょすう、''dividend'')あるいは'''実'''(じつ)といい、''n'' を'''除数'''あるいは単に'''法'''(ほう、''divisor'', ''modulus'')といい、''q'' を'''商'''(しょう、''quotient'')と呼ぶ。またこれらを合わせて ''m'' を ''n'' で割った'''商'''は ''q'' である、''m'' の ''n'' を法とする商、あるいは法 ''n'' に関する商 (''quotient'' modulo ''n'') などともと言う。
''m'' が ''n'' で割り切れない場合にも、'''剰余'''(じょうよ、''remainder'', ''residue''; 余り)の概念を導入して除法を(0 で割ることを除いて)整数全体での演算に拡張することができる。具体的には、整数 ''m'' を ''n'' で割ったとき、商が ''q'' で剰余が ''r'' であることを
''m'' = ''qn'' + ''r'' かつ ''0'' ≤ ''r'' < ''n''
が満たされることであると定義する。これは、商が整数にならない場合に、その「整数部分」を改めて商と定め、商と法との積を被除数から引いたもののことを剰余と定めているということである。''r'' は ''m'' の ''n'' を法とする(法 ''n'' に関する)剰余 (residue modulo ''n'') であるなどのように法を明示することもある。
このような整数 ''q'', ''r'' は、''m'', ''n'' によって唯一組にきまる()。また、この等式が成り立つことを除算記号 ÷ と記号 … を用いて
''m'' ÷ ''n'' = ''q'' … ''r''
とあらわす。
また、 ''m'' = ''qn'' + ''r'' だが ''0'' ≤ ''r'' < ''n'' とは限らない ''r'' も'''剰余'''と呼ぶことがあり、 ''r'' が正の場合はこれを'''正剰余'''と呼び、負の場合は'''負剰余'''と呼ぶ。剰余としては ''0'' ≤ ''r'' < ''n'' を満たす ''r'' とする'''最小非負剰余'''を用いるのが一般的であり、通常、''余り''とは最小非負剰余のことである。 ''m'' = ''qn'' + ''r'' が ''-n/2'' ≤ ''r'' < ''n/2'' を満たす ''r'' は'''絶対値最小剰余'''と呼ぶ。
与えられた被除数と法数から商と剰余を計算することを'''割り算'''、'''除算'''などという。また、その計算法を指して'''除法'''という。上では考えている数(自然数もしくは整数)の範囲内で商を取り直し剰余を定義することにより、除法をその数の範囲全体で定義することができることを述べた。しかしよく知られているように、数の範囲を有理数まで拡張し、商のとり方に有理数を許すことにより、剰余の概念は取り除かれ、有理数の全体で四則演算が自由に行えるようになる。ただし、0 で割ることは常に許されない。
整数 ''m'' と ''n'' について ''m'' が ''n'' で整除されない場合にも、''m'' の ''n'' を法とした商を ''m''/''n'' などと記して用いる(分数表記)。分数表記を用いた有理数の表示は一意的ではない。
\frac{p}{q}\div\frac{r}{s} = \frac{p \times s}{q \times r}.
このような意味で四則演算が自由に行える集合の抽象化として体の概念が現れる。すなわち、有理数の全体が作る集合 '''Q''' は体である。二つの整数 ''a'', ''b'' に対し ''a'' − ''b'' が自然数 ''n'' の倍数であるとき、''a'', ''b'' は ''n'' '''を法として合同である'''といい、このような整数の関係を合同関係という。合同関係は整数全体の集合 '''Z''' における同値関係である。これを「法 (modulus) を用いて」という意味のラテン語 "modulo" からしばしば
''a'' ≡ ''b'' (mod ''n'')
''a'' ≡ ''b'' (modulo ''n'')
''a'' mod ''n'' = ''b'' mod ''n''
などのように表す。記号は普遍的なものではなく、誤解のおそれが無いならば
''a'' ≡ ''b'' (''n'')
''a'' ≡''n'' ''b''
''a'' ≡ ''b''
などと書いても構わない。このように、合同関係を表す演算子で結ばれた式を合同式という。例えば 21 ≡ 11 (mod 5) である。
合同式は剰余に注目して計算をする場合に便利である。実際、整数 ''a'' に対して、0 ≤ ''m'' < ''n'' となる整数 ''m'' で ''a'' ≡ ''m'' (mod ''n'') となるものは ''a'' を ''n'' で割った剰余そのものであり、'''Z''' を合同関係で類別した同値類は剰余としばしば同一視される。
''m'' を ''n'' で割ったときの、剰余 ''r'' を ''m'' mod ''n'' で表すことがある。例えば 7 mod 5 = 2 である。自然数 ''n'' を固定して、整数 ''m'' を ''n'' で割ったとき、その剰余は唯一つに定まるのだから、剰余計算を二項演算の一種と見ることもできる。このような剰余を求める演算の演算子として "mod" や "%" (C言語などで使用)などがしばしば用いられ、
''m'' mod ''n''
mod(''m'', ''n'')
などと書かれる。余りが等しいことを意味する等式
''a'' mod ''n'' = ''b'' mod ''n''
を作ると、これを合同式と解釈することもできる。剰余演算は日常レベルからRSA暗号などコンピュータサイエンス分野までの幅広いレベルで多用される。整数 ''n'' > 1 を一つ選び固定するとき、任意の整数 ''m'' は ''n'' の冪乗 ''n''''k'' (''k'' ≥ 0) に関する剰余の列 (''m'' mod ''n''''k'')''k''=0,1,2,... によって一意的に特定することができる。具体的には、''m'' に対して ''n''''k''+1 を法とする剰余から ''n''''k'' を法とする剰余を引いたものは ''n''''k'' で割り切れるので、これを ''a''''k''''n''''k''とすれば、0 ≤ ''a''''k'' < ''n'' かつ、十分大きな ''k'' についてはすべて ''a''''k'' = 0 となる。つまり適当な自然数 ''M'' が存在して
m = a_0 + a_1 n + a_2 n^2 + \cdots + a_M n^M
と書くことができて、しかもこのような表示は一意的であるということである。これを、整数 ''m'' の ''n'' を法とする展開、あるいは ''n''-'''進展開'''と呼び、はじめに固定した ''n'' を展開の基数と呼ぶ。この展開は位取り記数法などの記法の原理的な根拠となる。
十分大きな ''k'' についてはすべて ''a''''k'' = 0 となるという制限は、基数が素数 ''p'' であるときには ''p''-進距離に関する収束の概念を用いて除くことができて、 ''p''-進整数の ''p''-進展開を与える。また、絶対値の導く距離を入れ、基数 ''n'' の負の冪をも同時に考えるならば有理数や実数の ''n''-進展開(小数展開)を考えることができる。整数全体の成す環 '''Z'''、体 ''K'' 上の一変数多項式環 ''K''[''x''] やガウスの整数環 '''Z'''[√−1] などで次の'''除法の原理'''が成り立つ。
整域 ''R'' において、ある整列集合 ''W'' と写像 ''N'': ''R'' → ''W'' で、次の性質を満たすものが存在する。
# ''W'' の最小元 ''m'' に対し、''N''(''a'') = ''m'' ⇔ ''a'' = 0。
# ''a'', ''b'' ∈ ''R''、''b'' ≠ 0 ならば ''a'' = ''qb'' + ''r'' かつ ''N''(''r'') < ''N''(''b'') を満たす ''q'', ''r'' ∈ ''R'' が存在する。
このような性質を持つ整域 ''R'' を一般にユークリッド整域という。剰余はユークリッド整域において定義される概念である。
一般に、剰余の一意性には注意が必要である。例えば、整数環 '''Z''' の場合に、 ''W'' = '''N'''(0 を含む自然数全体の集合), ''N''(''a'') = |''a''| (絶対値)ととればユークリッド整域の条件が満たされるが、このとき商と剰余の一意性は保証されない。保障されない簡単な例として、''a'' = 7, ''b'' = −3 とすると
7 = (−2)(−3) + 1
7 = (−3)(−3) − 2
と 2 通りに分解することができて、確かに |1| < |−3| も |−2| < |−3| も成り立っている。
先の定義では 「剰余が負でない」 ということを付してこの一意性を保障したが、このような一意性を与える付帯条件のつけ方は一通りではない。たとえば、「被除数が負であるときは、被除数と絶対値が等しい自然数をとり、そちらを割算してから改めて符号を付け替える」 というような流儀も存在して、これも広く用いられている。計算機においては、負の数の表現方法にも因る話であるので、プログラムに剰余計算をさせるときなどは注意が必要である。自然数の場合にはこのような混乱は生じない。実数は有理数の極限として表され、それによって有理数の演算から実数の演算が矛盾なく定義される。すなわち、任意の実数 ''x'', ''y'' (''y'' ≠ 0) に対し ''x''''n'' → ''x'', ''y''''n'' → ''y'' (''n'' → ∞) を満たす有理数の列 {''x''''n''}''n''∈'''N''', {''y''''n''}''n''∈'''N''' (例えば、''x'', ''y'' の小数表示を第 ''n'' 桁までで打ち切ったものを ''x''''n'', ''y''''n'' とするような数列)が与えられたとき
x/y := \lim_{n\to\infty}x_n/y_n
と定めると、この値は極限値が ''x'', ''y'' である限りにおいて数列のとり方によらずに一定の値をとる。これを実数の商として定めるのである。また、この実数の除法を用いれば複素数の除法が、任意の複素数 ''a'' + ''ib'', ''c'' + ''id'' に対して
\frac{a+ib}{c+id}:=
\frac{ac+bd}{c^2+d^2} + i\,\frac{bc-ad}{c^2+d^2}
として定義できる。算法
ゼロ除算
ユークリッド整域
中国の剰余定理
体論
合同式
出典:フリー百科事典『ウィキペディア(Wikipedia)』