初等數論 1.7 Euclid算法

引理:若e,dZe,d\in\Z,且e=dq+re=dq+r,其中q,rZq,r\in\Z.則(e,d)=(d,r)(e,d)=(d,r).
定理(Euclid算法):設a,bZ+a,b\in\Z^+aba\ge b,令r0=a,r1=br_0=a,r_1=b滿足ab>0a\ge b>0,連續使用帶餘除法,得到rj=rj+1qj+1+rj+2r_j=r_{j+1}q_{j+1}+r_{j+2}0<rj+2<rj+1(j=0,1,2, ,n2),rn+1=00<r_{j+2}<r_{j+1}\quad (j=0,1,2,\cdots,n-2),\quad r_{n+1}=0,則(a,b)=rn(a,b)=r_n,它是最後一個非零餘數.

證明:令r0=a,r1=br_0=a,r_1=b滿足ab>0a\ge b>0,用帶餘除法: r0=r1q1+r20r2<r1r_0=r_1q_1+r_2 \quad 0\ge r_2<r_1 r1=r2q2+r30r3<r2r_1=r_2q_2+r_3 \quad 0\ge r_3<r_2 \vdots rj2=rj1qj1+rjj2rj<rj+1r_{j-2}=r_{j-1}q_{j-1}+r_j \quad j-2\ge r_j<r_{j+1} \vdots rn2=rn1qn1+rnn2rn<rn+1r_{n-2}=r_{n-1}q_{n-1}+r_n \quad n-2\ge r_n<r_{n+1} rn1=rnqnr_{n-1}=r_nq_n 序列a=r0r1>r2>0\displaystyle a=r_0\ge r_1>r_2>\cdots\ge 0包含的項數不會超過aa,由引理和數學歸納法,(a,b)=(r0,r1)=(r1,r2)==(rn1,rn)=(rn,0)=rn\displaystyle (a,b)=(r_0,r_1)=(r_1,r_2)=\cdots=(r_{n-1},r_n)=(r_n,0)=r_n.
因此(a,b)=rn\displaystyle (a,b)=r_n.

用相反的步驟可以求出a,ba,b的Bezout係數.

(a,b)=ma+nb(a,b)=ma+nb,對於tZ,(a,b)=(m+tb)a+(nta)b\displaystyle \forall t\in\Z,\quad (a,b)=(m+tb)a+(n-ta)b,所以a,ba,b的Bezout係數不是唯一的.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章