151017 初版 151018 更新

ディオファントス方程式 45x + 32y = 4 を解く。
45 と 32 で 45のほうが大きいので
45x = 4 - 32 y と変形する。
左辺は 45 の倍数
右辺は 32 で割って 4 余る数。
45の倍数を それぞれ 32 で割った余り を考える。
45の倍数を それぞれ 32 を法としてみる という。
45の倍数を それぞれ mod 32 でみる という。
45の倍数
45, 90. 135. 180. …①
それぞれ 32 で割った余り を考える。
13, 26, 7, 20, …②
手早く 数列 ② を求めるには,
45 を 32 で割った余り 13 の倍数を mod 32 でみればよい。
さらにいえば,
13 を初項として, 13 ずつ加えていって,32 を超えたら32 を引くという操作を繰り返せばよい。
(初項 13, 公差 13 の等差数列を mod 32 でみる)
4になるか 1 になるかでやめる。
安心してください。多くとも31回のうちに見つかります。
(数列に出てくる数は 0 から 31 までだから)
13, 26, 7, 20, 1
よって,x = 5
45・5 + 32y = 1 より, y = -7
したがって,45・20 + 32・(-28) = 4
一般解は,
x = 32k + 20,  y = -45k - 28  (k は整数)