数论:不定方程

数论:不定方程

最普通的不定方程是这样的:

\[ax+by=c \]

对于不定方程的整数解,有一个结论:只要c能被gcd(a,b)整除,那么方程有整数解.

为了表示清楚,设gcd(a,b)=q,a=qn,b=qm,c=qo.

这时设a,b,c符合条件,那么n,m,o都是整数,且n,m互质.

对于m,n,一定可以有两个整数u,v,符合nu+mv=1.

也就是说,对于某一个u,符合nu%m=1,此时nu/m=v.并且在1<=u<m时,u唯一.

这时a+b=nq+mq=q(n+m).

只要x=u,y=v,那么方程左边就是nqu+mqv=q(nu+mv)=q.

只要将x和y同时乘c/q,那么方程左边就等于q(c/q)=c.

此时方程有整数特解x=uc/q,y=vc/q.当然,这里的u,v,q是我们自己定义的变量.

q=gcd(a,b),u=(a/q)的逆元(%n),v=(b/q)的逆元(%m).

这时就可以写出完整公式:

\[\binom{x=\frac{ua}{q}}{y=\frac{cb}{q}} \]

只要有一组特解,就能求出所有解.

因为x每次增加m,那么xa就增加ma,又因为ma=mnq=[a,b],所以x增加m,ax就增加[a,b]

所以对x来说,每个m是一循环,因为每个增加[a,b]都可以被b整除,所以当特解x增加m时,y只要减少n就能使by减少x,使等式仍然成立.

m=b/gcd(a,b)

n=a/gcd(a,b)

所以就有了通过特解求所有整数解的公式:(t为任意整数)

\[\binom{x=x_0+\frac{bt}{q}}{y=y_0-\frac{at}{q}} \]

这便是解二元一次不定方程的方法了.

posted @ 2020-02-24 20:01  Wild_Donkey  阅读(611)  评论(0编辑  收藏  举报