Euclid算法

本文介绍了欧几里得定理及其推论,阐述了如何利用辗转相除法求最大公约数,并通过广义欧几里得除法详细解释了这一过程。同时,给出了算法的应用实例,展示了如何通过线性组合表示除法结果。内容涵盖了数论中的基本概念和计算技巧。
摘要由CSDN通过智能技术生成

1.Euclid定理

概念:

定理: 对任意的 a , b , q ∈ Z a,b,q \in Z a,b,qZ,有 ( a , b ) = ( a , b = q a ) (a,b)=(a,b=qa) (a,b)=(a,b=qa)
             ( a , b ) = ( a , b − a ) (a,b)=(a,b-a) (a,b)=(a,ba),所以求 ( a , b ) (a,b) (a,b)时可以连续地用 a 、 b a、b ab中的大的减去小的,直到得到 0 0 0,由 ( a , 0 ) = ∣ a ∣ (a,0)=|a| (a,0)=a得到结果。


定理: m , n , t ∈ Z , m > 0 , n > 0 m,n,t \in Z,m>0,n>0 m,n,tZ,m>0,n>0,则 ( t n − 1 , t m − 1 ) = t ( m , n ) − 1 (t^n-1,t^m-1)=t^{(m,n)}-1 (tn1,tm1)=t(m,n)1


推论: t n − 1 ∣ t m − 1 t^n-1|t^m-1 tn1∣tm1当且仅当 n ∣ m n|m nm


定理: m , n , q m,n,q m,n,q是正整数,则 ( x q m − x , x q n − x ) = x q ( m , n ) − x (x^{q^m}-x,x^{q^n}-x)=x^{q^{(m,n)}}-x (xqmx,xqnx)=xq(m,n)x


推论: m 、 n 、 q m、n、q mnq是正整数,则 x q n − x ∣ x q m − x x^{q^n}-x|x^{q^m}-x xqnxxqmx,当且仅当 n ∣ m n|m nm

例题:
例1:
在这里插入图片描述


例2:
在这里插入图片描述


例3:
在这里插入图片描述

2.广义Euclid除法

概念:
定义: 广义Euclid除法也称为辗转相除法,用于求两个正整数的最大公因子。设 a , b a,b a,b是两个正整数,不妨假定 a > b a>b a>b,记 r − 1 = a , r 0 = b r_{-1}=a,r_0=b r1=a,r0=b,反复用带余数除法,有 r − 1 = q 1 r 0 + r 1 0 < r 1 < r 0 ⋅ ⋅ ⋅ r n − 2 = q n r n − 1 + r n 0 < r n < r n − 1 r n − 1 = q n + 1 r n + r n + 1 r n + 1 = 0 r_{-1}=q_1r_0+r_1 \quad 0<r_1<r_0 \\ \cdot\cdot\cdot \\ r_{n-2}=q_nr_{n-1}+r_n \quad 0<r_n<r_{n-1}\\r_{n-1}=q_{n+1}r_n+r_{n+1} \quad r_{n+1}=0 r1=q1r0+r10<r1<r0rn2=qnrn1+rn0<rn<rn1rn1=qn+1rn+rn+1rn+1=0因此, r n + 1 < r n < r n − 1 < ⋅ ⋅ ⋅ < r 0 = b r_{n+1}<r_n<r_{n-1}<\cdot\cdot\cdot <r_0=b rn+1<rn<rn1<<r0=b,所以经过有限步后必有 r n + 1 = 0 r_{n+1}=0 rn+1=0。此时 r n = ( a , b ) r_n=(a,b) rn=(a,b),这是因为 ( a , b ) = ( r − 1 , r 0 ) = ⋅ ⋅ ⋅ = ( r n − 1 , r n ) = ( r n , r n + 1 ) = ( r n , 0 ) = r n (a,b)=(r_{-1},r_0)=\cdot\cdot\cdot=(r_{n-1},r_n)=(r_n,r_{n+1})=(r_n,0)=r_n (a,b)=(r1,r0)==(rn1,rn)=(rn,rn+1)=(rn,0)=rn由上还可得 r n = r n − 2 − q n r n − 1 r n − 1 = r n − 3 − q n − 1 r n − 2 ⋅ ⋅ ⋅ r 1 = r − 1 − q 1 r 0 r_n=r_{n-2}-q_nr_{n-1} \\ r_{n-1}=r_{n-3}-q_{n-1}r_{n-2} \\ \cdot\cdot\cdot \\ r_1=r_{-1}-q_1r_0 rn=rn2qnrn1rn1=rn3qn1rn2r1=r1q1r0依次将后一项带入前一项,最终 r n r_n rn可由 r − 1 = a , r 0 = b r_{-1}=a,r_0=b r1=a,r0=b的线性组合表示。

例题:
例1:
在这里插入图片描述

广义Euclid除法还有一个递推式,暂时不会用到,如果以后用的话来补

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值