- 在线时间
- 7 小时
- 最后登录
- 2024-8-19
- 注册时间
- 2023-11-2
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 58 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 23
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 12
- 主题
- 6
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   18.95% TA的每日心情 | 郁闷 2023-12-11 09:00 |
|---|
签到天数: 7 天 [LV.3]偶尔看看II
 |
二次剩余值的关联计算(上)3 s% R+ i* T. X; m
, u5 E4 v, M4 l
一、 二次剩余中\frac{1}{2} 相关值的计算:
' S& _7 b, n* \. H( [* G7 ~/ n7 e1 g 对于完全平方公式:$ k- B* A* c: X- Z/ h; \% K- p
(1/2 -m)^2 = 1/4 -m+m^2 = 1/4 +m(m-1) (m≥1) (1-1)9 t8 K8 d* g- \1 c
/ u: `: B% K2 W o$ n1 F 在n为奇数时, 上式的同余可以分为:. _ o v* [3 q) N- h1 g
① 当n=4k-1时,对(1-1)求同余得:
' }% S! j0 c; ?' w, _' }2 M' s (1/2-m)^2 ≡ (2k-m)^2 ≡ k+m(m-1) (mod n) (1-2)2 T+ K( n" `, b5 a+ ]% ~% v: n
② 当n=4k+1时, 对(1-1)求同余得:
& K% e$ [8 M$ F# ?, R) _5 s/ Y% H (1/2 -m)^2 ≡ (2k+1-m)^2 ≡ -k+m(m-1) ≡ n-k+m(m-1) (mod n) (1-3)7 u$ h4 X3 c; U4 {6 C" _$ s
$ k1 t4 g# A& W- [* W7 `& b* p
为以后叙述方便,我们对 1/2-1 1/2-2 ... 1/2-m (m >=1) 这类数称为二次剩余的后序序列, 即1/2 减小的方向的数列.
! i/ S7 r) T% Y4 D5 b9 _' }/ H% m9 W! [
二次剩余后序序列的二次剩余值有个特点, 与k(k>0)值相关, 是k值与两个连续整数积的和,与k值同奇同偶。
4 a5 O; @. {+ F5 N& [0 ^2 v$ n 如n=299=4*75-1 k=75 2k=150 , 二次剩余后序序列为:: S7 Q" v+ K* |
(150-1)^2 ≡ 75+1*(1-1) ≡ 75 +0 ≡ 75 (mod 299) => 149^2 ≡ 75 (mod 299) 2 y; @; z, y3 C+ X- t2 J) b
(150-2)^2 ≡ 75+2*(2-1) ≡ 75 +2 ≡ 77 (mod 299) => 148^2 ≡ 77 (mod 299)
7 b! \9 W! R h9 t% L2 C5 I3 S (150-3)^2 ≡ 75+3*(3-1) ≡ 75 +6 ≡ 81 (mod 299) => 147^2 ≡ 81 (mod 299)
* O8 u/ `$ [9 |' B
0 M3 A* @; W' p9 `, o3 l .
6 q8 m4 ]. O7 C .
4 O) Q/ Y' |0 x3 i1 o, L: e 根据后序序列,可以得到一个分解整数的方法:
/ p4 R9 l w8 ^7 ^- q 设n为奇合数, 如果 c^2-k=m(m-1) m>0 => (2k-m)^2 ≡ c^2 (mod n) , 或者
' ]; ?8 A7 ]. i9 b+ Z* k. T5 y c^2-k=m(m-1) => 4c^2-4k+1=4m(m-1)+1 => (2c)^2 ≡ (2m-1)^2 (mod n) ; A4 d3 \, p1 J5 M, `) g
上述等式,由费马分解即可得到n的因子, 不过效率较低. e5 |% H) _5 `, L
例1: n=299-4*75-1 , k=75
; O% f1 B% F( H 根据后序序列,大于75且与75同奇同偶的完全平方:9^2-81
2 r2 J# A7 D4 s! I 81-75=6=2*3 为连续两个整数积,在后序序列上+ k( j5 w3 u0 x! N& t4 Y& r; y
∴ (150-3)^2≡81 (mod 299) => 147^2≡81 (mod 299)6 r2 e E' {4 Q6 {* Q1 s/ ^
或者 (2*9)^2≡(2*2+1)^2 (mod 299) => 18^2≡5^2(mod 299)
& D! A, x3 f6 x
* U( P6 V& Q- b/ i6 f' |9 P 二、连续两个整数积的分解方法
: R( L5 q7 v8 E9 ]% f* E( O, e 1、分解方法介绍
% k+ M, m# y0 {! I 例2: n=299=4*75-1
; ~6 K$ O, Q3 F; I7 e4 v 25^2 ≡ 27 (mod 299) =>
# @) X1 ~0 i4 u6 e G7 U! I. ^; w 25^2 ≡ 25+2 (mod 299) => 0 K- q1 C. o) l3 B4 X. E
25^2-25-2 ≡ 0 (mod 299) => $ _( \$ h0 M. j8 w' B. }# A6 t4 Y
(25-2)(25+1) ≡ 0 (mod 299) =>
) J$ Y9 n$ n4 J* J/ e: k. A 23*26 ≡ 0 (mod 299)
+ C+ D5 ?5 l$ }7 @4 b( h (23,299)=23 (26,299)=13 299=13*23
. L7 o- G9 A7 _4 J3 ^ h1 Y# L: L8 U! v! B" Y/ S) A1 o
分解方法: 设n为奇合数, a^2 ≡ b (mod n) , 如果 b=a+i(i+1) (i ≥ 0 ) , 则可得到:
]: \$ S4 s: }: R3 `. K a^2 ≡ b (mod n) => % n o6 r* g+ v: `) d. H" E
a^2-b-i(i+1) ≡ 0 (mod n) =>
; _* J; f" F, I; c7 g (a-(i+1))(a+i) ≡ 0 (mod n)
K# i- _* R Z& j5 ]6 ] (a-(i+1),n)>1 (a+i , n)>1 即可分解n
; _/ P. s' x2 v6 x% ~& M; N, {2 k X2 a+ Y0 [- d0 O
2、分解方法的另一个解释 / M7 q3 c4 V' ?2 V. ?
设n为奇数, a^2 ≡ b(mod n), 如果m=a, 则由(1-1)公式得: 7 ~* n5 D B9 Z G& A6 b
(1/2 -a)^2 ≡ 1/4 +a^2-a (mod n) => 8 j1 }3 t9 X2 b6 p' k
(1/2 -a)^2 ≡ 1/4 +b-a (mod n) (2-1)
# i2 j+ j, e' c7 V5 N
1 R+ h( D) L- Y8 x& g ① n=4k-1 , 2-1式得:8 O& }0 z6 K7 F; F1 b
(2k-a)^2 ≡ k+b-a(mod n) (2-2)
( Z9 Z+ S3 y5 N ① n=4k+1 , 2-1式得: t5 ?' q- h" p6 c
(2k+1-a)^2 ≡ n-k+b-a (mod n) (2-3)
! [, [ X# S, s9 P, W) ^& j1 `; J f( w
从(2-1(式, 可知二次剩余的计算, 在[1,1/4]范围内, 计算出[1,n-1]的二次剩余值.
6 J7 F; H K* h' ?: L1 e1 d 在例2中, 按(2-2)式的计算, 可得:
8 X& r7 |% l; j# C5 y# \ (150-25)^2 ≡ 75+27-25 (mod 299) => 125^2 ≡ 77 (mod 299) 9 V1 c% I+ a7 w1 b) C- ^
所以, a^2 ≡ b (mod n) ,如果b=a+i(i+1) ,其相对1/2的剩余值在后序序列上. B# X% t8 a) k
( @3 p/ _2 P( I. @ M9 T 三、1/j (j >=3)的计算方法 % w$ U4 d3 @, q$ |
上面的是计算 1/2, 即j=2, 如果j>2时, 有如下的1/j计算方法:0 e9 z5 _8 m8 A, A7 b
(1/j ± ij)^2 = (ij)^2 ± 2i + (1/j)^2 (i >= 1 ) (j ≥3) (3-1)
( x5 L# G0 i4 [7 S. F' C
0 B. K1 p- c! t" f- | 而对于\frac{1}{j}相邻, 有两种计算,
) ~3 Q* j* Y5 b2 P5 A1 J: q 1) 1/j 1+1/j 2+1/j ... t+1/j (t<j) " {2 W3 m3 V' ]3 O. f5 a6 i
2) t-1/j ... 1-1/j 1/j 1+1/j ... t+1/j (t < j/2) 5 h+ G+ _+ ~+ A
t+1/j= (1+tj)/j = m/j , m=1+tj. T m/ {& K1 g" G; p6 A5 {0 C
( M1 Q( \) \8 ^1 S- C/ _ 按m/j , (3-1)式变成: 1 g7 P8 i9 ^8 b9 @8 x
(m/j± ij )^2 = (ij)^2 ± 2mi + (m/j )^2 (i≥ 1 ) (j ≥ 3) (3-2)
) O% n1 I$ Z( `$ H0 s# c6 b, f$ U! n6 k& P
例3: n=299 \frac{1}{3} ≡ 100 (mod 299) 100^2 ≡ 133 (mod 299)
. J5 }3 i* R0 E) P; m (100-3)^2 ≡ 3^2-2+133 (mod 299) => 97^2 ≡ 140 (mod 299)3 N3 d# M" p: E7 ~* W* E# r
(100+3)^2 ≡ 3^2+2+133 (mod 299) => 103^2 ≡ 144 (mod 299)" G/ L# g8 x3 E4 a8 _
1+1/3=4/3 ≡ 1+100=101 (mod 299) 101^2 ≡ 35 (mod 299)
% }: Y5 h( C8 Y. H (101-3)^2 ≡ 3^2-2*4+35 (mod 299) => 98^2 ≡ 36 (mod 299) `$ g m/ B) W" f/ g
(101+3)^2 ≡ 3^2+2*4+35 (mod 299) => 104^2 ≡ 52 (mod 299) - e y; z; v6 w
1-1/3=-2/3 ≡ 1-100=-99 (mod 299) 99^2 ≡ 233 (mod 299) % ?" H, L# f A) c
(99-3)^2 ≡ 3^2-2*(-2)+233 (mod 299) => 96^2 ≡ 246 (mod 299)
6 U: k7 n, N$ \( b5 u (101+3)^2 ≡ 3^2+2*(-2)+233 (mod 299) => 102^2 ≡ 238 (mod 299) " D3 e7 A& H( L) o( J4 _7 i
按2+1/3也能得到相同结果,这里不在验证.
4 |, E( Y# }: t* T5 Q: ]
' X. \' b) ]# ?) {6 v% H3 r 当然如果j=2s, 即为偶数, 可以计算一半的值, (3-2)式得 :
; v1 l; c/ J, K7 `/ K3 F: A: F (m/j ± i*s)^2=(is)^2±mi+(m/j)^2 (i ≥ 1) (j ≥ 3) (3-3) 6 a: e; }* R3 p8 V
更一般的公式: 当为 g/j g <j/2 , (g, j)=1, 这里就不再给出.' v- b1 k/ g1 I: P
; R& d; A6 W" C4 m
|
zan
|