数学において、剰余とは、何らかの計算を行った後に「残る」量です。算術において、剰余とは、ある整数を別の整数で割って整数の商を生成した後に「残る」整数です(整数除算)。多項式代数において、剰余とは、ある多項式を別の多項式で割った後に「残る」多項式です。モジュロ演算は、被除数と除数が与えられた場合に、そのような剰余を生成する演算です。
あるいは、ある数から別の数を引いた後に残る余りも剰余ですが、これはより正確には差と呼ばれます。この用法は一部の初等教科書に見られます。口語的には、「2ドル返して残りをください」のように「残り」という表現に置き換えられます。[ 1 ]しかし、「剰余」という用語は、関数が級数展開によって近似される場合、依然としてこの意味で使用され、その場合、誤差式(「残り」)は剰余項と呼ばれます。
整数除算
[編集]整数 aと非ゼロの整数dが与えられたとき、 a = qd + rかつ0 ≤ r < | d |を満たす一意の整数qとrが存在することが示されます。数qは商、 rは剰余と呼ばれます。
(この結果の証明については、ユークリッド除算を参照してください。剰余を計算する方法を説明するアルゴリズムについては、除算アルゴリズムを参照してください。)
上記で定義された剰余は最小正剰余または単に剰余と呼ばれる。[ 2 ]
場合によっては、 aがdの整数倍にできるだけ近くなるように割り算を行うのが便利です。つまり、次のように書くことができます。
- a = kd + s、ただし、ある整数kに対して | s | ≤ | d /2 | となる。
この場合、sは最小絶対剰余と呼ばれます。[ 3 ]商と剰余と同様に、kとsは、 d = 2 nかつs = ± nの場合を除いて一意に決定されます。この例外については、次の式が成り立ちます。
- a = kd + n = ( k + 1) d − n です。
この場合、sの正の値を常に取るなどの何らかの規則によって、一意の剰余を得ることができます。
例
[編集]43 を 5 で割ると次のようになります。
- 43 = 8 × 5 + 3、
したがって、3は最小の正の剰余です。また、次の式も成り立ちます。
- 43 = 9 × 5 − 2,
そして、-2 は最小の絶対剰余です。
これらの定義は、例えば43を-5で割る場合のように、 dが負の場合でも有効である。
- 43 = (−8) × (−5) + 3,
3は最小の正の剰余であり、
- 43 = (−9) × (−5) + (−2)
そして、-2 は最小の絶対剰余です。
42 を 5 で割ると次のようになります。
- 42 = 8 × 5 + 2、
2 < 5/2 なので、2 は最小の正の剰余であると同時に最小の絶対剰余でもあります。
これらの例では、最小の正の剰余( d)から5を引くことで、最小の絶対剰余(負)が得られます。これは一般に成り立ちます。dで割ると、両方の剰余が正で等しいか、または符号が逆になります。正の剰余がr 1、負の剰余がr 2の場合、
- r 1 = r 2 + d です。
浮動小数点数の場合
[編集]aとd が浮動小数点数で、d がゼロ以外の場合、 a をdで割っても余りは生じず、商は別の浮動小数点数となります。しかし、商が整数に制限される場合は、余りの概念は依然として必要です。a = qd + r (0 ≤ r < | d | )となるような、一意の整数商qと一意の浮動小数点余りrが存在することが証明できます。
上で説明したように、浮動小数点数の剰余の定義を拡張することは、数学においては理論的には重要ではありませんが、多くのプログラミング言語がこの定義を実装しています (モジュロ演算を参照)。
プログラミング言語では
[編集]定義自体に固有の難しさはありませんが、剰余の計算に負の数が含まれる場合、実装上の問題が生じます。プログラミング言語によって異なる慣習が採用されています。例えば、
- パスカルはmod演算の結果を正としますが、 dが負またはゼロになることを許可しません(つまり、 a = ( a div d ) × d + a mod dは常に有効ではありません)。[ 4 ]
- C99では被除数aと同じ符号の剰余が選択されます。[ 5 ](C99より前のC言語では他の選択肢も認められていました。)
- Perl、Python (最新バージョンのみ)は、除数dと同じ符号の剰余を選択します。[ 6 ]
- Schemeには剰余と剰余の2つの関数があります。AdaとPL /Iにはmodとrem があり、Fortranにはmodとmodulo があります。いずれの場合も、前者は被除数の符号と一致し、後者は除数の符号と一致します。Common LispとHaskellにもmodとrem がありますが、modは除数の符号を使用し、remは被除数の符号を使用します。
多項式除算
[編集]多項式のユークリッド除算は整数のユークリッド除算と非常によく似ており、多項式の剰余を導きます。その存在は、次の定理に基づいています。体(特に実数または複素数)上で定義された2つの一変数多項式a ( x )とb ( x )(ただしb ( x )は非零多項式)が与えられたとき、次の式を満たす2つの多項式q ( x )(商)とr ( x )(剰余)が存在します。[ 7 ]
- a ( x ) = b ( x ) q ( x ) + r ( x )
どこ
- 度( r ( x )) < 度( b ( x ))、
ここで、「deg(...)」は多項式の次数を表します(値が常に0となる定数多項式の次数は負と定義できるため、この次数条件は剰余が0のときに常に有効となります)。さらに、q ( x ) とr ( x ) はこれらの関係によって一意に決定されます。
これは整数のユークリッド除算とは異なり、整数の場合、次数条件が剰余rの境界値(非負かつ除数より小さいため、rは一意であることが保証される)に置き換えられる。整数のユークリッド除算と多項式のユークリッド除算の類似性は、ユークリッド除算が成立する最も一般的な代数的設定の探索を促す。このような定理が存在する環はユークリッド域と呼ばれるが、この一般性においては商と剰余の一意性は保証されない。[ 8 ]
多項式除算は多項式剰余定理として知られる結果を導きます。多項式f ( x ) をx − kで割ると、剰余は定数r = f ( k )となります。[ 9 ] [ 10 ]
参照
[編集]- 中国剰余定理
- 割り算の規則
- エジプトの掛け算と割り算
- ユークリッドの互除法
- 長除算
- モジュラー演算
- 多項式の長除算
- 合成分割
- ルフィニの法則、合成除法の特殊なケース
- テイラーの定理
注記
[編集]- ^ スミス 1958、97ページ
- ^ Ore 1988、30ページ。ただし、剰余が0の場合は、「正の剰余」と呼ばれていても正ではありません。
- ^ オーレ 1988、32ページ
- ^ パスカル ISO 7185:1990 6.7.2.2
- ^ “6.5.5 乗算演算子”. C99仕様 (ISO/IEC 9899:TC2) (PDF) (レポート). 2005年5月6日. 2018年8月16日閲覧。
- ^ 「組み込み関数 – Python 3.10.7 ドキュメント」 . 2022年9月9日. 2022年9月10日閲覧。
- ^ ラーソン&ホステラー 2007、154ページ
- ^ ロットマン 2006、267ページ
- ^ ラーソン&ホステラー 2007、157ページ
- ^ Weisstein, Eric W. 「多項式剰余定理」 . mathworld.wolfram.com . 2020年8月27日閲覧。
参考文献
[編集]- ラーソン、ロン、ホステラー、ロバート(2007年)、Precalculus: A Concise Course、Houghton Mifflin、ISBN 978-0-618-62719-6
- オーレ、オイスタイン(1988)[1948]、数論とその歴史、ドーバー、ISBN 978-0-486-65620-5
- ロットマン、ジョセフ・J.(2006年)、抽象代数の入門講座(第3版)、プレンティス・ホール、ISBN 978-0-13-186267-8
- スミス、デイヴィッド・ユージン(1958)[1925]、数学史、第2巻、ニューヨーク:ドーバー、ISBN 0486204308
{{citation}}:ISBN / 日付の非互換性(ヘルプ)
さらに読む
[編集]- ダヴェンポート、ハロルド(1999年)『高等算術:数論入門』ケンブリッジ大学出版局(英国)25頁。ISBN 0-521-63446-6。
- カッツ、ビクター編(2007年)『エジプト、メソポタミア、中国、インド、イスラムの数学:資料集』プリンストン:プリンストン大学出版局。ISBN 9780691114859。
- シュワルツマン、スティーブン (1994) 「剰余(名詞)」『数学の言葉:英語で使われる数学用語の語源辞典』ワシントン:アメリカ数学協会。ISBN 9780883855119。
- ザッカーマン、マーティン・M(1998年12月)『算数:わかりやすいアプローチ』メリーランド州ランハム:Rowman & Littlefield Publishers, Inc. ISBN 0-912675-07-1。