Loading web-font TeX/Math/Italic
横画面推奨!
モバイル機器の場合、数式が見切れる場合があります。

2022年8月21日

ユークリッドの互除法 最大公約数を求める方法

 ユークリッドの互除法とは、2つの整数の最大公約数を見つけるための方法で、以下の手順で見つけます。

整数ABの最大公約数を見つけるには、
  1.  ABの大きい方を小さい方で割り、余りr_1を求めます。
  2.  ABの割る数になった方をr_1で割り、余りr_2を求めます。
2.のように割る数を余りで割ることを繰り返し、余りが0になったときの割る数がABの最大公約数となります。

 例として168792の最大公約数を求めてみます。
まずは792\div168を計算すると
792\div168=4\ 余り120
となります。

次は割る数の168を余りの120で割って
168\div120=1\ 余り48


となります。

割る数を余りで割ることを繰り返すと
\begin{align*}120\div48&=2\ 余り24\\[1em]48\div24&=2\ 余り0\end{align*}
24で割ったとき余りが0になるので168792の最大公約数は24であるとわかります。

 おおまかな最大公約数が求められる仕組みは以下のようになります。
 整数ABの最大公約数をGとすると、
\begin{equation}A=Ga,\ B=Gb\quad(a,b:互いに素な整数)\end{equation}
となります。
ABで割ったとき、商がk_1、余りがr_1であったとすると
A=Bk_1+r_1

と書くことができ、(1)より左辺がGの倍数ならば右辺もGの倍数でなければならないこと、BGの倍数であることからr_1もまたGの倍数であることがわかります。
また、Bで割ったときの余りなので0\leqq r_1<|B|となります。
 次にBr_1で割ったときのことを考えると、商がk_2、余りがr_2であるとすると
B=r_1k_2+r_2
となり、上記よりBr_1Gの倍数なので、r_2もまたGの倍数ということになります。
また、r_1で割ったときの余りなので0\leqq r_2<r_1となります。

 このことから互除法の手順を繰り返すと余りはGの倍数かつ前の手順による割り算の余りより小さい(ただし、0以上の)整数となるので、いずれ余りは0になります。
n回目の余りr_n0になったとすると、このときの割る数は1つ前の手順での割り算での余りr_{n-1}でこれが最大公約数Gとなります。


 ここで最大公約数以外で割り切れてしまうことはないのか?と思うかもしれませんが、最大公約数でしか割り切れないことは以下のように確かめることができます。
 上記と同じような流れで整数ABの最大公約数をGとして、ABで割ったときの商がk、余りがrであったとすると(1)より
\begin{align*}A&=Bk+r\tag{*}\\[0.5em]r&=Bk-A\\[0.5em]&=G(bk-a)\end{align*}
となり、余りrGの倍数、すなわちGを約数に持つことがわかります。
このことからGA,B,rの公約数であることがわかります。
 次にBrの最大公約数をG以外の整数G'であると考えると、(1)のように
B=G'b',\ r=Gr'\quad(b',r':互いに素な整数)
と書くことができます。これを(*)に代入すると
A=G'b'k+G'r'=G'(b'k+r')
となり、G'Aの約数でもあるから、G'もまたA,B,rの公約数であることがわかります。

ここで、GG'についてG>G'であるとすると、G'Brの最大公約数であるにも関わらず、より大きいGという公約数があるということになり矛盾します。
今度はG<G'であるとすると、GABの最大公約数であるにも関わらず、より大きいG'という公約数があるということになり矛盾します。

したがって、G\neq G'という仮定が間違っていることよりG=G'であり、GA,B,rの最大公約数であるということがわかります。

 この結論を互除法で登場したすべての割り算に対して適用すれば、0であるr_nを除くA,B,r_1,r_2,\cdots,r_{n-1}の最大公約数はGなので、Gより大きい数で割り切れることはなく、またr_1,r_2,\cdots,r_{n-1}Gの倍数なのでGより小さい数はそもそも登場しないため、互除法で余りが0になるのは必ず割る数r_{n-1}Gのときであることがわかります。
Share:
share
◎Amazonのアソシエイトとして、当サイト「数学について考えてみる」は適格販売により収入を得ています。
Powered by Blogger.

PR

blogmura_pvcount
ブログランキング・にほんブログ村へ