数学切り抜き帳 |
|
互除法 ― ユークリッドの算法 |
|
桜花学園大学教授 岩井 齊良 |
2つの自然数 A,B の最大公約数を求める方法として次の計算法が知られている. A を B で割った余りに置き換える B を A で割った余りに置き換える A を B で割った余りに置き換える B を A で割った余りに置き換える …… この操作を続けると,A,B の値はどんどん小さくなり,ついには余りが 0となり,この操作は続けられなくなる.このとき, 最後の自然数(0 が現れる1つ手前の数)が A,B の最大公約数である この方法を互除法またはユークリッドの算法という. 算法というのは,
問題を解決する定型的な手法・技法
のことをいう(広辞苑). 例題1 A=1000,B=310 の最大公約数を求めよ.
最大公約数は 10 である.
類題 次の自然数の最大公約数を求めよ. 互除法は,通常はこのように「最大公約数を求める方法」として知られているが,われわれは互除法を「ある数列を作り出す方法」と考えよう. α,βは与えられた自然数とする.そこで,α0=α,α1=βとおき, α1 > α2 > α3 > α4 > …… となるので,ある時点でαk= 0 となる. このとき,次の関係式が成り立つ. α0=α1θ1+α2, 0<α2<α1
この状況を次の図式で表すことにする.
この図で,最初の部分
は, α0 をα1 で割ったときの商がθ1で余りが α2である ことを示している.
A=BQ+R という関係式があると, A, B の公約数は R の約数であり,B,R の公約数は A の約数である.
したがって, (A,Bの公約数)=(B,Rの公約数) となる. (A,Bの最大公約数)=(B,Rの最大公約数) となる. A=BQ+R のとき, (A,B)=(B,R) このことを,上の関係式にあてはめると, α0=α1θ1+α2 → (α0,α1)=(α1,α2) また,最後の関係から, (αν−1,αν)=αν (α0,α1)=(α1,α2)=(α2,α3)=……=(αν−1,αν)=αν つまり,最後の自然数が最初の2数 α0=α,α1=β の最大公約数であることが示された.
最大公約数は 4 ここできまる数列 α0,α1,α2,α3,……,αν−1,αν,0 を(自然数の組 α,βに対し)互除法できまる数列と呼ぼう. |