- 在线时间
- 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
 |
二次剩余值的关联计算(上)/ Z- F# a, U* Y$ B3 p
3 C1 r$ z; R+ S7 ?* i- Q) X
一、 二次剩余中\frac{1}{2} 相关值的计算:. K& X' d5 Z( a. s& L$ u' x! F8 L6 u7 @
对于完全平方公式:
* b& Z% u# F1 J. p (1/2 -m)^2 = 1/4 -m+m^2 = 1/4 +m(m-1) (m≥1) (1-1)/ |* g$ ^9 G( x+ Q* Y- r$ B2 A
& p) g& O; {, E$ o
在n为奇数时, 上式的同余可以分为:: P. R7 ]$ k/ a$ P8 B' x3 z+ r
① 当n=4k-1时,对(1-1)求同余得:
" Y5 C0 t) l% R/ k8 Y, A/ K (1/2-m)^2 ≡ (2k-m)^2 ≡ k+m(m-1) (mod n) (1-2)
- h6 W# B0 p4 s4 J9 m ② 当n=4k+1时, 对(1-1)求同余得:
$ {6 V0 f4 I7 v9 ] (1/2 -m)^2 ≡ (2k+1-m)^2 ≡ -k+m(m-1) ≡ n-k+m(m-1) (mod n) (1-3)8 o4 C$ k4 J7 ?" ~, J3 B5 |
: j& t' o7 p1 I$ o
为以后叙述方便,我们对 1/2-1 1/2-2 ... 1/2-m (m >=1) 这类数称为二次剩余的后序序列, 即1/2 减小的方向的数列.+ x3 |+ B$ Z2 \0 |% a4 i. P3 [
5 x3 C6 y! n* e B- G 二次剩余后序序列的二次剩余值有个特点, 与k(k>0)值相关, 是k值与两个连续整数积的和,与k值同奇同偶。' G) V |. _, K
如n=299=4*75-1 k=75 2k=150 , 二次剩余后序序列为:2 {9 z% }% J4 \/ K
(150-1)^2 ≡ 75+1*(1-1) ≡ 75 +0 ≡ 75 (mod 299) => 149^2 ≡ 75 (mod 299) & ? v# P8 E/ o& i" \% ]* ^( d4 H* w5 f6 w
(150-2)^2 ≡ 75+2*(2-1) ≡ 75 +2 ≡ 77 (mod 299) => 148^2 ≡ 77 (mod 299)
4 g' m' z, i" v0 g (150-3)^2 ≡ 75+3*(3-1) ≡ 75 +6 ≡ 81 (mod 299) => 147^2 ≡ 81 (mod 299) ) C3 t# N7 i& v
) t% O# f6 w/ a# s( h& C$ l
.
6 b/ q' i: K5 Y: z3 H8 L: | .7 e% g( w4 p; z5 M" ^
根据后序序列,可以得到一个分解整数的方法:
5 B/ K) n5 {- @& A; ~/ \ 设n为奇合数, 如果 c^2-k=m(m-1) m>0 => (2k-m)^2 ≡ c^2 (mod n) , 或者
/ m8 g; ^9 e- F5 p0 K c^2-k=m(m-1) => 4c^2-4k+1=4m(m-1)+1 => (2c)^2 ≡ (2m-1)^2 (mod n) 4 M/ p; m9 l- y8 n) O9 Z
上述等式,由费马分解即可得到n的因子, 不过效率较低.
% |1 t/ U9 J8 v; D6 M s 例1: n=299-4*75-1 , k=753 k# X- B! d+ q6 e/ F4 C7 u
根据后序序列,大于75且与75同奇同偶的完全平方:9^2-81
" e' V3 O3 S% Q# x 81-75=6=2*3 为连续两个整数积,在后序序列上
# f& u' a& ~8 d; @* M ∴ (150-3)^2≡81 (mod 299) => 147^2≡81 (mod 299)0 S) P6 }6 x9 O8 F3 t8 V
或者 (2*9)^2≡(2*2+1)^2 (mod 299) => 18^2≡5^2(mod 299)' f! Q! d5 e7 s& v( _' K
. v/ D3 h; j* D* q$ m: S
二、连续两个整数积的分解方法
) X* X8 O' T) x/ A p7 g3 Z 1、分解方法介绍
5 }% ?$ Z9 J, @5 x) g 例2: n=299=4*75-1
( ~; u1 Q, k1 ~& V3 i; | 25^2 ≡ 27 (mod 299) =>
8 K3 d9 d0 R: g) d# H 25^2 ≡ 25+2 (mod 299) =>
% J0 S) f; i8 `: n* p 25^2-25-2 ≡ 0 (mod 299) => & }1 G% G' E+ [5 X8 B* R. H' c: q
(25-2)(25+1) ≡ 0 (mod 299) =>
9 G# b, v* A* i6 {( W 23*26 ≡ 0 (mod 299)
. ? _- }5 U$ I; j& C* u (23,299)=23 (26,299)=13 299=13*23
0 I9 ^: D. I6 K; j+ E* `
# }# m# R1 J2 _* O8 ]& y4 Y% Q4 k/ W 分解方法: 设n为奇合数, a^2 ≡ b (mod n) , 如果 b=a+i(i+1) (i ≥ 0 ) , 则可得到:+ [* w* Q: w5 J: n4 i* L
a^2 ≡ b (mod n) => 2 ~/ p) [) D. z
a^2-b-i(i+1) ≡ 0 (mod n) => - a* E2 f' t, G/ t1 j: t( A
(a-(i+1))(a+i) ≡ 0 (mod n) 6 ?& D3 @2 e3 }- b+ {
(a-(i+1),n)>1 (a+i , n)>1 即可分解n
! K- T+ W9 v# D( i- @
/ f$ n/ [/ k5 B8 [4 E2 _ 2、分解方法的另一个解释
! R- @7 p/ R3 R% S. G4 f 设n为奇数, a^2 ≡ b(mod n), 如果m=a, 则由(1-1)公式得: 2 J7 W( n7 o/ f& A- c# ~
(1/2 -a)^2 ≡ 1/4 +a^2-a (mod n) =>
( f5 _1 m. D, e, ]" j7 a$ l (1/2 -a)^2 ≡ 1/4 +b-a (mod n) (2-1) 2 @) c8 e; d7 X& |) J) L& i4 X
. f6 B9 P& q R# V" C( P# m5 U
① n=4k-1 , 2-1式得:! K* z% I$ E+ R9 h- P
(2k-a)^2 ≡ k+b-a(mod n) (2-2)7 g0 R, b% S" t3 ^7 }# B
① n=4k+1 , 2-1式得:3 }! n H+ z1 L6 M/ K! V' _( G
(2k+1-a)^2 ≡ n-k+b-a (mod n) (2-3)
% b8 I: B$ ?6 I5 H8 I1 m; W6 E4 @+ T
3 b' K5 g4 D9 v. }( Q( y/ o. k" D( @ 从(2-1(式, 可知二次剩余的计算, 在[1,1/4]范围内, 计算出[1,n-1]的二次剩余值.
7 i& {- h3 v, _ r5 x 在例2中, 按(2-2)式的计算, 可得: 9 O: ]1 v7 R% N* m7 [( p
(150-25)^2 ≡ 75+27-25 (mod 299) => 125^2 ≡ 77 (mod 299)
1 s- E0 |0 F' P& o1 f( M& O 所以, a^2 ≡ b (mod n) ,如果b=a+i(i+1) ,其相对1/2的剩余值在后序序列上.0 J" P. S8 X; e( D8 T/ X
) \, e; j0 d" M$ O4 g( H4 G
三、1/j (j >=3)的计算方法
3 k) r F7 k1 i% D9 z) o! ~2 l3 R 上面的是计算 1/2, 即j=2, 如果j>2时, 有如下的1/j计算方法:
* e* {7 L9 W* {3 U (1/j ± ij)^2 = (ij)^2 ± 2i + (1/j)^2 (i >= 1 ) (j ≥3) (3-1)
: I* P4 ?2 b: u5 J' `0 j8 S! k4 y5 _- T) K5 o. _2 g
而对于\frac{1}{j}相邻, 有两种计算, 9 a \5 ?+ E8 I9 }
1) 1/j 1+1/j 2+1/j ... t+1/j (t<j)
~( B" B, W: X6 m# a 2) t-1/j ... 1-1/j 1/j 1+1/j ... t+1/j (t < j/2)
+ q+ q( c3 r7 ?. N/ ^2 O5 k6 z8 N t+1/j= (1+tj)/j = m/j , m=1+tj' B% x$ o6 w! Z5 n: S$ I! m
( A+ @% V, P/ k: W4 b 按m/j , (3-1)式变成: # P# [$ q& l3 L2 U: R' c
(m/j± ij )^2 = (ij)^2 ± 2mi + (m/j )^2 (i≥ 1 ) (j ≥ 3) (3-2)
0 ]' S# ]7 A4 G2 j. h8 W
# R/ f1 M& m0 s; o2 C 例3: n=299 \frac{1}{3} ≡ 100 (mod 299) 100^2 ≡ 133 (mod 299)
. ]+ b8 C. t' i; B$ `: X8 i (100-3)^2 ≡ 3^2-2+133 (mod 299) => 97^2 ≡ 140 (mod 299)
% ]1 R, l4 d. _8 d8 j/ O+ T; q (100+3)^2 ≡ 3^2+2+133 (mod 299) => 103^2 ≡ 144 (mod 299)6 p$ y! _- ~$ L, x
1+1/3=4/3 ≡ 1+100=101 (mod 299) 101^2 ≡ 35 (mod 299)+ s5 x3 q( k+ W) B3 n2 {
(101-3)^2 ≡ 3^2-2*4+35 (mod 299) => 98^2 ≡ 36 (mod 299) - D: b+ ]# V B3 u# g, w0 m7 ~
(101+3)^2 ≡ 3^2+2*4+35 (mod 299) => 104^2 ≡ 52 (mod 299)
" Y& W9 D- | B 1-1/3=-2/3 ≡ 1-100=-99 (mod 299) 99^2 ≡ 233 (mod 299)
! {3 n- k* l+ I# {& L$ K (99-3)^2 ≡ 3^2-2*(-2)+233 (mod 299) => 96^2 ≡ 246 (mod 299) ! ?9 c8 i- A, e# C* n1 l
(101+3)^2 ≡ 3^2+2*(-2)+233 (mod 299) => 102^2 ≡ 238 (mod 299) + ]/ Q8 Z7 g9 \( b8 x7 O
按2+1/3也能得到相同结果,这里不在验证.4 e' G( ^% `: q7 {
9 I0 k0 i% @3 P
当然如果j=2s, 即为偶数, 可以计算一半的值, (3-2)式得 :
" p/ {$ w/ s, M4 W% T$ X' x (m/j ± i*s)^2=(is)^2±mi+(m/j)^2 (i ≥ 1) (j ≥ 3) (3-3) . O0 k* w: X- E1 i
更一般的公式: 当为 g/j g <j/2 , (g, j)=1, 这里就不再给出.
# k# F" ?. A0 b2 d+ G, b" ~2 K) J# B0 ~7 P4 G+ v( b8 h
|
zan
|