∀a,b∈z,d=gcd(a,b)//gcd是最大公约数
关于x,y的线性不定方程:(裴蜀等式)ax+by=c有整数解(x,y)<=>d|c,有解时有无穷个解
通解为(m0x0+kb/d,m0y0-ka/d) (k∈z)
或者(c/d*x0+kb/d,c/d*y0-ka/d) (k∈z)
其中 ax+by=c,(x0,y0)为ax0+by0=d=gcd(a,b)的特解,m0=c/d
<=>表示等价于,d|c表示d整除c或者c%d==0
接下来给出证明(喜欢看纸质版最后有手写的证明)
-----------------------------------------------------------------
先证明ax+by=gcd(a,b)有解
证明:
∵d=gcd(a,b)
∴d|a,d|b
d|(ax+by)
设s是a,b的线性组合中最小的正元素,则∃x,y∈z,使s=ax+by∈z
设q=a/b (a/b和int除以int计算方式相同)
r=a%s=a-qs=a-q(ax+by)=(r-qx)a-by
∴r也是a,b的线性组合
又∵r=a%s
∴0<=r<s(因为取余的结果必然小于模的数)
又∵s是s是a,b的线性组合中最小的正元素
∴r比线性组合中最小正元素的还小,r=0
∴s|a
同理可证s|b
∴s是a,b的公约数
又∵d是a,b的最大公约数
∴d>=s
∵d|(ax+by),s=ax+by
∴d|s
∴s>=d
又∵d>=s
∴s=d=gcd(a,b)
ax+by=s
ax+by=gcd(a,b)有解
---------------------------------------------
接着证明gcd(a,b)|c<=>ax+by=c有整数解
证明:充分性:d=gcd(a,b)
设ax+by=gcd(a,b)解为(x0,y0)
∵d|c
∴∃k∈z,使得c=kd
∵ax0+by0=d
∴kax0+kby0=kd=c
∴ax+by=c的解为(kx0,ky0)
必要性:ax1+by1=c
设d=gcd(a,b)
∴d|a,d|b
∴d|(ax1+by1)
∴d|c
∴gcd(a,b)|c
∴gcd(a,b)|c<=>ax+by=c有整数解
------------------------------------------
最后证明有无穷解以及通解形式
证明:设ax0+by0=d,c=m0d
am0x0+bm0y0=m0d=c
a(m0x0+kd/d)+b(m0y0-kd/d) (k∈z)
=am0x0+akb/d+bm0y0-bka/d
=am0x0+bm0y0
=c
即ax+by=c的通解为
(m0x0+kb/d,m0y0-ka/d) (k∈z)
或者(c/d*x0+kb/d,c/d*y0-ka/d) (k∈z)也就是证明了无穷解
其中 ax+by=c,(x0,y0)为ax0+by0=d=gcd(a,b)的特解,m0=c/d
--------------------------------------------------------------
以前研究时手稿