“由二项式展开,有整系数形式的恒等式 $$ f(X+Y)=f(X)+f'(X)Y+Y^2g(X,Y), \qquad g\in\mathbb Z p[X,Y]. $$ 这里没有除以阶乘,因此对…”
形式陈述
输入为不全为零的两个整数;算法返回它们的非负最大公因数。若第二项为零,直接返回第一项的绝对值。否则,对当前整数
且
反复用
对两个非零输入,除法步数为
直觉
算法每次换一对更小的数,却保留完整的共同约数信息。若
余数满足
例子与边界
计算
最后一个非零余数为
这样既求得最大公因数,也得到 Bézout 系数。若原输入是
零输入也与终止状态相接:
推论与应用
求出最大公因数后,将分子、分母同时除以它,就得到最简分数。扩展版本还能求模逆:若
这些逆元用于解线性同余、构造整数中国剩余定理中的坐标选择器,并参与 RSA 的指数计算。沿余数序列保留的线性关系还用于有理重构。把整数绝对值换成其他严格下降的量,同样的算法思路便推广到欧几里得整环,包括域上的一元多项式环。
保留各次带余除法的商,还能得到原有理数的简单连分数:上例的商依次为
参考资料
- Kenneth Ireland and Michael Rosen, A Classical Introduction to Modern Number Theory, 2nd ed., Springer, 1990,Ch. 1, Euclidean algorithm and continued remainders。
- Ivan Niven, Herbert S. Zuckerman, and Hugh L. Montgomery, An Introduction to the Theory of Numbers, 5th ed., Wiley, 1991,Ch. 1, Euclidean and extended Euclidean algorithms。