剩余定理的电枢语言描述

参考

初等数论简明教程.csdn
电枢公式--电枢绕线的规律.csdn

约定

本文默认在集合 N M N_M NM中讨论问题。

  • f ( a j ) f(a_j) f(aj):集合 { a 1 , . . . a s } {\{a_1,...a_s\}} {a1,...as} 所有元素均符合 f ( a j ) f(a_j) f(aj)
  • f ( a i , a j ) f(a_i,a_j) f(ai,aj):集合 { a 1 , . . . a s } {\{a_1,...a_s\}} {a1,...as}的任意有序对均符合 f ( a i , a j ) f(a_i,a_j) f(ai,aj)
  • ( b m ∣ M ) (\dfrac{b}{m}|M) (mb∣M)= { t m + b ∣ 0 ≤ t m + b < M } , m ∣ M \{tm+b |0 \le tm+b<M\}, m|M {tm+b∣0≤tm+b<M},m∣M
  • ( b 1 m 1 ∣ ) , ( b 2 m 2 ∣ ) , . . . ( b s m s ∣ ) (\dfrac{b_1}{m_1}|),(\dfrac{b_2}{m_2}|),...(\dfrac{b_s}{m_s}|) (m1b1∣),(m2b2∣),...(msbs∣)是一个电枢组(省略了 M M M)
  • ( b 1 k 1 ∣ ) , ( k 2 k 2 ∣ ) , . . . ( b t k t ∣ ) (\dfrac{b_1}{k_1}|),(\dfrac{k_2}{k_2}|),...(\dfrac{b_t}{k_t}|) (k1b1∣),(k2k2∣),...(ktbt∣)是另一个同解电枢组,
    满足 k j ∣ m j k_j|m_j kj∣mj 和 [ k j ] = [ m j ] = M [k_j]=[m_j]=M [kj]=[mj]=M
  • m 1 , m 2 , . . . m s m_1,m_2,...m_s m1,m2,...ms 是每个电枢的阶。
    b 1 , b 2 , . . . b s b_1,b_2,...b_s b1,b2,...bs是每个电枢上的一个固定槽
  • D = ( m 1 , m 2 , . . . m s ) = ( m j ) 是最大公约数 D=(m_1,m_2,...m_s)=(m_j)是最大公约数 D=(m1,m2,...ms)=(mj)是最大公约数
  • M = [ m 1 , m 2 , . . . m s ] = [ m j ] 是最小公倍数 M=[m_1,m_2,...m_s]=[m_j]是最小公倍数 M=[m1,m2,...ms]=[mj]是最小公倍数
    D D D阶电枢是最大公约电枢
    M M M阶电枢是最小公倍电枢
  • M i = M m i M_i=\dfrac{M}{m_i} Mi=miM是电枢 m i m_i mi的补绕法
  • M i ′ M_i' Mi′是电枢 m i m_i mi的补逆(补逆也是个绕法)
  • k 是 M 的一个因子 , K 是 m 的一个倍数 k是M的一个因子,K是m的一个倍数 k是M的一个因子,K是m的一个倍数
  • 电枢组的解: 电枢组合并成M阶电枢后,那个唯一直达 b 1 , . . . b s b_1,...b_s b1,...bs的槽位绕法c叫做电枢组的解。

电枢的合并

电枢的合并满足交换律和结合律

两个电枢的合并就是解两个同余方程

x=c 就是这两个同余方程组的解

( b i m i ∣ ) 和 ( b j m j ∣ ) (\dfrac{b_i}{m_i}|)和(\dfrac{b_j}{m_j}|) (mibi∣)和(mjbj∣)是电枢组中的两个电枢,如果 [ m 1 , m 2 ] [m_1,m_2] [m1,m2]阶电枢和其上的一个槽 c c c;

满足 ( b i m i ∣ ) ⋂ ( b j m j ∣ ) = ( c [ m 1 , m 2 ] ∣ ) (\dfrac{b_i}{m_i}|)\bigcap(\dfrac{b_j}{m_j}|)=(\dfrac{c}{[m_1,m_2]}|) (mibi∣)⋂(mjbj∣)=([m1,m2]c∣),称作电枢 m i m_i mi和 m j m_j mj合并成 [ m 1 , m 2 ] [m_1,m_2] [m1,m2];

合并运算记作:
( b i m i ∣ ) ⋀ ( b j m j ∣ ) (\dfrac{b_i}{m_i}|) \bigwedge (\dfrac{b_j}{m_j}|) (mibi∣)⋀(mjbj∣)

( b m ∣ ) (\dfrac{b}{m}|) (mb∣)是带有结构的集合,如果用 ⋂ \bigcap ⋂表示电枢的合并,则会失去它的结构意义,故用合取符号 ⋀ \bigwedge ⋀表示电枢的合并。

电枢的扩张和收缩

( b m ∣ ) (\dfrac{b}{m}|) (mb∣)是电枢组里的一个电枢,更改m,会让集合 ( b m ∣ ) (\dfrac{b}{m}|) (mb∣)变大或变小。

电枢的扩张

将m替换为m的因子k, 则集合 ( b m ∣ ) (\dfrac{b}{m}|) (mb∣)变大

电枢的收缩

将m替换为m的倍数K, 则集合 ( b m ∣ ) (\dfrac{b}{m}|) (mb∣)变小

收缩和扩张的关系

( b K ∣ ) ⊆ ( b m ∣ ) ⊆ ( b k ∣ ) (\dfrac{b}{K}|) \subseteq (\dfrac{b}{m}|) \subseteq (\dfrac{b}{k}|) (Kb∣)⊆(mb∣)⊆(kb∣)

b K ≤ b m ≤ b k \dfrac{b}{K} \le \dfrac{b}{m} \le \dfrac{b}{k} Kb≤mb≤kb

原版的剩余定理

{ x ≡ b 1 ( m o d m 1 ) x ≡ b 2 ( m o d m 2 ) ⋮ x ≡ b s ( m o d m s ) \begin{cases} x \equiv b_1 \pmod{m_1}\\ x \equiv b_2 \pmod{m_2}\\ \vdots\\ x \equiv b_s \pmod{m_s} \end{cases} ⎩ ⎨ ⎧x≡b1(modm1)x≡b2(modm2)⋮x≡bs(modms)

( m i , m j ) ∣ ( b i − b j ) (m_i,m_j)|(b_i-b_j) (mi,mj)∣(bi−bj)    ⟺    \iff ⟺ 方程组对模 M M M有唯一解c , x ≡ c ( m o d M ) x \equiv c \pmod M x≡c(modM)

如果M内存在两个解,则得到两解之差是M的倍数的矛盾

定理0(等价的电枢版剩余定理)

这个定理给出了解存在的判定方法

x=c 就是同余方程组的解

b 1 , b 2 , . . . b s b_1,b_2,...b_s b1,b2,...bs直达最大公约电枢D同一槽e    ⟺    \iff ⟺

最小公倍电枢 M M M中存在唯一 一个槽c直达 b 1 , b 2 , . . . b s b_1,b_2,...b_s b1,b2,...bs。

定理1(互质电枢之间的合并)

目标是找到c 和 e

c = ∑ i = 1 n b i M i M i ′ ( m o d M ) c=\displaystyle\sum_{i=1}^{n} b_iM_iM_i' \pmod M c=i=1∑nbiMiMi′(modM)
e = b j ( m o d D ) e=b_j \pmod D e=bj(modD)

方程 M i M i ′ ≡ 1 ( m o d m i ) M_iM_i'\equiv1 \pmod{m_i} MiMi′≡1(modmi) 中 M i ′ 的解法 M_i'的解法 Mi′的解法

参考初等数论简明教程.csdn中的一次同余方程

定理1.1 (槽的遍历)

当槽 b j b_j bj取遍 N m j N_{m_j} Nmj,则e取遍 N D N_D ND并且c取遍 N M N_M NM

定理2(非互质电枢之间的合并)

m 1 , . . . m s m_1,...m_s m1,...ms这些电枢如果不互质,则将每个电枢进行扩张,

电枢扩张后每个电枢的阶会变小,直到这些阶互质。

电枢组 m 1 , . . . m s m_1,...m_s m1,...ms 扩张到 k 1 , . . . k s k_1,...k_s k1,...ks ( k j ∣ m j k_j|m_j kj∣mj)

只要保持 [ m 1 , . . . m s ] = [ k 1 , . . . k s ] [m_1,...m_s]=[k_1,...k_s] [m1,...ms]=[k1,...ks]则两个电枢组的解不变。

证明

P1: ( b m j ∣ ) ⊆ ( b k j ∣ ) (\dfrac{b}{m_j}|) \subseteq (\dfrac{b}{k_j}|) (mjb∣)⊆(kjb∣)

P2: ⋂ j = 1 k ( b m j ∣ ) \bigcap_{j=1}^{k}(\dfrac{b}{m_j}|) ⋂j=1k(mjb∣) ⊆ \subseteq ⊆ ⋂ j = 1 k ( b k j ∣ ) \bigcap_{j=1}^{k}(\dfrac{b}{k_j}|) ⋂j=1k(kjb∣)

P3: 因为上式两边都是单点集,所以两边相等

P4: ⋂ j = 1 k ( b m j ∣ ) \bigcap_{j=1}^{k}(\dfrac{b}{m_j}|) ⋂j=1k(mjb∣) = = = ⋂ j = 1 k ( b k j ∣ ) \bigcap_{j=1}^{k}(\dfrac{b}{k_j}|) ⋂j=1k(kjb∣)

定理3(元素个数)

∣ ( b m ∣ ) ∣ = M m |(\dfrac{b}{m}|)|=\dfrac{M}{m} ∣(mb∣)∣=mM

例题

电枢合并的好处在于剩余问题可以逐步合并得到

更块的方法是将电枢扩张到互质的电枢组

计算量主要在计算电枢的补逆 M i ′ 上 M_i'上 Mi′上

计算:

( 2 6 ∣ ) ⋀ ( 4 8 ∣ ) (\dfrac{2}{6}|)\bigwedge(\dfrac{4}{8}|) (62∣)⋀(84∣)
D = ( 6 , 8 ) = 2 D=(6,8)=2 D=(6,8)=2
M = [ 6 , 8 ] = 24 M=[6,8]=24 M=[6,8]=24

P1: D |4-2 → \to → 有解

P2: ( 2 6 ∣ ) (\dfrac{2}{6}|) (62∣)={2,8,14,20}

P3: ( 4 8 ∣ ) (\dfrac{4}{8}|) (84∣)={4,12,20}

P4: ( 2 6 ∣ ) ⋀ ( 4 8 ∣ ) (\dfrac{2}{6}|) \bigwedge (\dfrac{4}{8}|) (62∣)⋀(84∣)= ( 20 24 ∣ ) (\dfrac{20}{24}|) (2420∣)

P5: ( 2 6 ∣ ) (\dfrac{2}{6}|) (62∣) 扩张为 ( 2 3 ∣ ) (\dfrac{2}{3}|) (32∣)={2,5,8,11,14,17,20,23}

P6: ( 2 3 ∣ ) (\dfrac{2}{3}|) (32∣) 和 ( 4 8 ∣ ) (\dfrac{4}{8}|) (84∣) 已经是互质版的电枢组了

相关推荐
我是发哥哈2 小时前
深度评测:五款主流AI培训平台的课程交付能力对比
大数据·人工智能·学习·机器学习·ai·chatgpt
摇滚侠2 小时前
DSL 学习 ElasticSearch 主要就是学习 DSL 查询语言
学习·elasticsearch·jenkins
AI周红伟3 小时前
三年狂赚1.75亿!卖课,才是中国AI最容易赚钱的生意
人工智能·深度学习·学习·机器学习·copilot·openclaw
永远不会的CC3 小时前
Hello-Agents 初识智能体(实现一个简单旅游推荐智能体)
人工智能·学习·旅游
东京老树根3 小时前
SAP学习笔记 - BTP CAP开发06 - Customize Criticality,Map Page,Value help
笔记·学习
Bechamz5 小时前
大数据开发学习Day25
java·大数据·学习
zhangrelay5 小时前
云课实践速通系列-基础篇汇总-必修-通识基础和专业基础-2026--工科--自动化、电气、机器人、测控等
linux·笔记·单片机·学习·ubuntu·机器人·自动化
计算机安禾5 小时前
【计算机网络】第5篇:网桥学习与生成树算法——环路拓扑中的路径收敛问题
学习·计算机网络·算法
知识分享小能手6 小时前
R语言入门学习教程,从入门到精通,R语言局部整体型数据可视化(10)
学习·信息可视化·r语言