同余方程和同余方程组
(1)知识支持:
定义1:(何为同余?)
设 m ≠ 0,若 m | a-b,即 a-b = km,则称 m 为模,a 同余于 b 模 m ,b 是 a 对模 m 的剩余,记作
a ≡ b (mod m);
因为 m | a-b = (-m) | a-b,所以以后总假设 m ≥ 1。
定义2:(何为逆元)
给定整数 a,m,且 Gcd(a,m)=1,存在一个整数 x 使得同余式 ax ≡ 1 (mod m)成立,x 称作 a 模 m 的逆元,记作 a-1。
定义3:(何为完全剩余系)
一组数 y1,y2,.....ym 称为模 m 的完全剩余系,当且仅当对任意的整数 a 有且仅有一个 yj 使得同余式 a ≡ yj (mod m)成立。
简言之,对于任意 i,j ∈ [1,m],且i ≠ j,有 m%yi ≠ m%yj。
定义4:(何为既约剩余系)
模 m 的既约剩余系是 m 的完全剩余系中与 m 互素的数构成的子集,模 m 的既约剩余系的个数记为 φ(m)。
例如, m = 10,φ(10) = 4,集合 { 1,3,7,9 } 中的每个元素与10互素,并且任何两个元素模 10 不同余, { 1,3,7,9 } 就成为模 m 的一个既约剩余系。
定理1:
如果集合 { r1,r2,.....,rφ(n) } 是一个模 n 的既约剩余系,并且 Gcd(a,n) = 1,那么集合 { ar1,ar2,.....,arφ(n) }也是一个模 n 的既约剩余系。
性质1:
· a+c ≡ b+c (mod m);
· a-c ≡ b-c (mod m);
· ac ≡ bc (mod m);
性质2:
如果 ac ≡ bc (mod m) 那么 a ≡ b (mod m/(m,c) )。
证明如下:
(2)一元线性同余方程
定义1:
形如 ax ≡ b(mod m)的同余式被称为一元线性同余方程,其中 a,b 是整数,m 为正整数,x 为未知数。
定理1:
如果 Gcd(a,m) | b,则 ax ≡ b(mod m) 有 Gcd(a,m)个模 m 不同余的解,反之,无解。
证明:
ax ≡ b(mod m) 等价于 ax-b=my ,即 ax-my = b,由拓展欧几里得知方程 ax-my = b 有整数解
当且仅当 Gcd(a,m) | b;
假设(x0,y0)为 ax-my=b 的一组解,那么由拓展欧几里得知
x=x0+k*(m / Gcd(a,m) );
不妨设 x1=x0+k1*(m / Gcd(a,m) ) , x2=x0+k2*(m / Gcd(a,m) );
如果x1 ≡ x2(mod m),那么有
k1*(m / Gcd(a,m) ) ≡ k2*(m / Gcd(a,m) ) (mod m);
假设 d=m/Gcd(a,m),那么有
k1 ≡ k2(mod m / Gcd( d,m) );
而 Gcd(d,m) = d,所以 m / Gcd(d,m) = m / d = Gcd(a,m);
因此 k1 ≡ k2(mod Gcd(a,m) );
所以 ax ≡ b(mod m) 有Gcd(a,m)个模m不同余的解,其解为
x=x0+k*(m / Gcd(a,m) );
(k取0,1,2,....,Gcd(a,m)-1)