数学剩余系

数学剩余系相关定理:

k0= mq {...}

k1=1+mq{...}

k2=2+mq{...}

....

km-1=m-1+mq{...}

定义k0,k1,k2,k3...km-1叫做模m剩余类.如果在模m的剩余类k0,k1,k2,k3...km-1中各取一个数,例如aiΕki ,i=0,1,2,3...m-1.那么称a0,a1,a2,a3...am-1称为模m的一个完全剩余系。

定理1:设mΕZ+,k0,k1,k2,k3...km-1叫做模m剩余类,则有

  (1)每一个数必包含在某一类Ki里,其中0≤i≤m-1.

  (2)两个整数a,bΕ Ki的充分必要条件是a=b(mod m).

推论1.1:m个整数作成模m的一个完全剩余系的充分必要条件是两两对模m不同余。最常用的完全剩余系是0,2,3,4...m-1,他们称为模m的非负最小完全剩余系。

定理2:b是整数,(a,m)=1,如果a0,a1,a2,a3...am-1是模m的完全剩余系,则aa0+b,aa1+b,...aam-1+b也是完全剩余系。

定理3:设m1,m2Ε Z+,(m1,m2)=1,而x1,x2分别通过模m1,m2的完全剩余系,则m2x1+m1x2通过m1m2的完全剩余系。

推论3.1:设m1,m2Ε Z+, aΕ Z,(a,m1)=1,且X={x1,x2,x3...xm1},Y={y1,y2,y3...ym2}分别是通过模m1,m2的完全剩余系,则R={ax+m1y|xEX,yEY}是模m1m2的完全剩余系。

 

简化剩余系:

定义欧拉函数Φ(a)是定义在正整数集上的函数,Φ(a)等于序列0,1,2,3,...,a-1中与a互素的整数的个数。

于是:因为0,1,2,3,...,m-1中与m互素的数个数是Φ(m)个,所以模m的剩余类中有Φ(m)个与模m互素的剩余类。

定义在Φ(m)个与模m互素的剩余类中各取一个数,称为这Φ(m)个数为模m的一个简化剩余系。

 

转载于:https://www.cnblogs.com/liugl7/p/4973209.html

### 剩余中求解逆元的方法 在数学剩余中,逆元是指在一个特定数 \( m \) 下,存在一个整数 \( b \),使得 \( a \cdot b \equiv 1 \ (\text{mod} \ m) \)[^1]。这意味着当两个数相乘后再取 \( m \),其结果等于 1。 #### 使用扩展欧几里得算法求解逆元 如果已知 \( a \) 和 \( m \) 是互质的关(即它们的最大公约数为 1),那么可以通过扩展欧几里得算法来找到这样的 \( b \)。具体来说,方程 \( a \cdot x + m \cdot y = 1 \) 的解可以转化为寻找满足条件的 \( x \) 和 \( y \)[^2]。其中,\( x \) 就是我们要找的逆元。 以下是基于 C++ 实现的一个简单例子: ```cpp #include <bits/stdc++.h> using namespace std; // 扩展欧几里得函数 int exgcd(int a, int b, int& x, int& y){ if(b == 0){ x = 1; y = 0; return a; } int gcd = exgcd(b, a % b, y, x); y -= (a / b) * x; return gcd; } int main(){ int a, m; cin >> a >> m; int x, y; int gcd = exgcd(a, m, x, y); if(gcd != 1){ // 如果最大公因数不是1,则无解 cout << "-1" << endl; }else{ // 调整x使其成为正数并处于范围[0,m-1] int res = ((x % m) + m) % m; cout << res << endl; } } ``` 这段代码通过 `exgcd` 函数实现了扩展欧几里得算法,并最终输出了 \( a \) 关于 \( m \) 的逆元[^3]。 #### 注意事项 需要注意的是,在应用上述方法之前应确认 \( a \) 和 \( m \) 是否互素;如果不是的话,则不存在相应的乘法逆元。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值