- 在线时间
- 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
 |
二次剩余值的关联计算(上)% E* C- V, A3 k3 Z& S
7 W) k( o& ~+ ^- o2 N
一、 二次剩余中\frac{1}{2} 相关值的计算:
+ U5 _8 K0 W4 y 对于完全平方公式:
& n- ^3 G+ E2 A) s3 L7 ]5 | (1/2 -m)^2 = 1/4 -m+m^2 = 1/4 +m(m-1) (m≥1) (1-1). ?0 e- P* y" E0 @' V) i) U0 C- K
, w& |1 ?( c$ n6 E
在n为奇数时, 上式的同余可以分为:& F9 ]% p2 K; l; d5 l' r
① 当n=4k-1时,对(1-1)求同余得: ( O# F4 _" U" q/ K5 Y/ _! X
(1/2-m)^2 ≡ (2k-m)^2 ≡ k+m(m-1) (mod n) (1-2)- h: u- \9 L( G
② 当n=4k+1时, 对(1-1)求同余得:
) u- m$ Y2 x5 K4 j8 P+ c$ O (1/2 -m)^2 ≡ (2k+1-m)^2 ≡ -k+m(m-1) ≡ n-k+m(m-1) (mod n) (1-3)4 |- c8 q4 S) G* e- E# s" L5 }
% F5 t3 u' p9 P# D5 M' ^8 B$ L$ y$ I 为以后叙述方便,我们对 1/2-1 1/2-2 ... 1/2-m (m >=1) 这类数称为二次剩余的后序序列, 即1/2 减小的方向的数列.
4 E" x- h" R7 g2 N! r
, n! p r5 N4 t6 X/ J% y7 \! A( _ 二次剩余后序序列的二次剩余值有个特点, 与k(k>0)值相关, 是k值与两个连续整数积的和,与k值同奇同偶。$ J L3 }4 b$ h1 g
如n=299=4*75-1 k=75 2k=150 , 二次剩余后序序列为:% E/ G) W8 h4 c
(150-1)^2 ≡ 75+1*(1-1) ≡ 75 +0 ≡ 75 (mod 299) => 149^2 ≡ 75 (mod 299)
1 w; P) |8 a- ?2 W* G X! [2 K (150-2)^2 ≡ 75+2*(2-1) ≡ 75 +2 ≡ 77 (mod 299) => 148^2 ≡ 77 (mod 299)
+ K3 M" x* ?$ M: r2 b D! U (150-3)^2 ≡ 75+3*(3-1) ≡ 75 +6 ≡ 81 (mod 299) => 147^2 ≡ 81 (mod 299) & Y: G8 F# y- {: W# t
* `$ w- S& S% }( q6 s
.% u }# \- q7 W h$ f2 J! m
.9 _( b7 s S" b. d
根据后序序列,可以得到一个分解整数的方法:
. u( h# h% H8 \* Z0 Y+ _1 [5 D+ [ 设n为奇合数, 如果 c^2-k=m(m-1) m>0 => (2k-m)^2 ≡ c^2 (mod n) , 或者
: V" G' A! _1 [ q- N& a( x c^2-k=m(m-1) => 4c^2-4k+1=4m(m-1)+1 => (2c)^2 ≡ (2m-1)^2 (mod n)
; _8 K' }) P, ^; N; Z 上述等式,由费马分解即可得到n的因子, 不过效率较低.% U& F) t; O* {- x7 e' y$ _- m
例1: n=299-4*75-1 , k=75% f3 j' T" h' a3 ]" E" {. S
根据后序序列,大于75且与75同奇同偶的完全平方:9^2-81
% U+ b" s! }/ D/ E7 j" l 81-75=6=2*3 为连续两个整数积,在后序序列上9 z7 R. s1 B- A
∴ (150-3)^2≡81 (mod 299) => 147^2≡81 (mod 299), w1 L+ X6 h* c- [" i! K, W, R6 ~
或者 (2*9)^2≡(2*2+1)^2 (mod 299) => 18^2≡5^2(mod 299)
" g2 ~" m0 O/ a; _) [1 J/ R2 \8 @% t; \% C3 P! o3 U. k) a
二、连续两个整数积的分解方法' U: d& s5 T5 t, g9 J5 m" d
1、分解方法介绍
4 x' A$ F5 {& d8 Z" s0 m) L 例2: n=299=4*75-1
7 F; j2 J4 s" B$ R2 N 25^2 ≡ 27 (mod 299) => 9 B2 E* t" W( v
25^2 ≡ 25+2 (mod 299) => ' I5 ?7 S! N$ C. k2 x
25^2-25-2 ≡ 0 (mod 299) => * I. y2 j6 ^1 y( ^
(25-2)(25+1) ≡ 0 (mod 299) =>
& {! k- i4 |! D7 N1 Q2 c1 m; S 23*26 ≡ 0 (mod 299) / G" }! k. V: r1 T* D+ ^
(23,299)=23 (26,299)=13 299=13*23
! `) ^9 J8 j5 M
* |! n) [, q4 @' L) o$ L9 i 分解方法: 设n为奇合数, a^2 ≡ b (mod n) , 如果 b=a+i(i+1) (i ≥ 0 ) , 则可得到:
q8 Z# C, I* B- v9 ]; t a^2 ≡ b (mod n) => . L' Y* ^0 s7 i, i. ]
a^2-b-i(i+1) ≡ 0 (mod n) => $ E8 D" k) p1 o& y4 `' H" P
(a-(i+1))(a+i) ≡ 0 (mod n)
, S2 B T9 ], a6 ] (a-(i+1),n)>1 (a+i , n)>1 即可分解n! ]! z6 c: O; H7 n4 r
1 K7 Y' P* W, O; m3 f' `2 E
2、分解方法的另一个解释 & q e8 A3 e- J' e1 { Z
设n为奇数, a^2 ≡ b(mod n), 如果m=a, 则由(1-1)公式得:
9 X8 [( n& O/ j (1/2 -a)^2 ≡ 1/4 +a^2-a (mod n) => 2 W2 B) V. n" _8 |$ R
(1/2 -a)^2 ≡ 1/4 +b-a (mod n) (2-1)
+ A: o3 m S( K. P3 H6 P. l! ` $ c; Q" F, z( {; v' [( h/ u( X- }2 w
① n=4k-1 , 2-1式得:
# L3 v' V6 W$ c+ b6 z2 u (2k-a)^2 ≡ k+b-a(mod n) (2-2)
6 ^2 V: Z+ _8 _, f$ ?# B! W* a ① n=4k+1 , 2-1式得:
" s' [ k8 Q# j7 T1 l: h6 a, S7 J (2k+1-a)^2 ≡ n-k+b-a (mod n) (2-3)- R1 G: f: L l! \
5 w9 _& ?$ L/ z/ z 从(2-1(式, 可知二次剩余的计算, 在[1,1/4]范围内, 计算出[1,n-1]的二次剩余值.
6 K2 L9 T- \8 | 在例2中, 按(2-2)式的计算, 可得: $ t7 T* e0 J5 Q3 ?3 q, S
(150-25)^2 ≡ 75+27-25 (mod 299) => 125^2 ≡ 77 (mod 299)
' e, a: E1 N7 d h 所以, a^2 ≡ b (mod n) ,如果b=a+i(i+1) ,其相对1/2的剩余值在后序序列上.
5 L! V4 d4 ]! C5 [, Y/ I |0 P% \
三、1/j (j >=3)的计算方法
, J; S. t' z7 G 上面的是计算 1/2, 即j=2, 如果j>2时, 有如下的1/j计算方法:
7 g- v0 @; u) o" }+ O( _$ Y# W (1/j ± ij)^2 = (ij)^2 ± 2i + (1/j)^2 (i >= 1 ) (j ≥3) (3-1)
' Q1 I# f: N" u7 p1 y8 S( s5 a/ v: z/ d
而对于\frac{1}{j}相邻, 有两种计算, 8 [$ ~- I! j$ T% d- G
1) 1/j 1+1/j 2+1/j ... t+1/j (t<j)
' j1 n0 S2 v8 h: t 2) t-1/j ... 1-1/j 1/j 1+1/j ... t+1/j (t < j/2) ! @( j5 C: u8 n1 h+ Z
t+1/j= (1+tj)/j = m/j , m=1+tj! k, O' Z t3 G2 _5 U- M. Z5 Z: [
( g6 U) n q6 P' S 按m/j , (3-1)式变成: 9 j/ d* M0 I, y5 |
(m/j± ij )^2 = (ij)^2 ± 2mi + (m/j )^2 (i≥ 1 ) (j ≥ 3) (3-2)2 i ?6 H( Q( f- x
& j( Q0 K/ v& j; x$ c: O 例3: n=299 \frac{1}{3} ≡ 100 (mod 299) 100^2 ≡ 133 (mod 299) 0 k" I1 g3 q D
(100-3)^2 ≡ 3^2-2+133 (mod 299) => 97^2 ≡ 140 (mod 299)
; y. }8 s7 c0 V/ S' [4 s6 N! V8 ] (100+3)^2 ≡ 3^2+2+133 (mod 299) => 103^2 ≡ 144 (mod 299). [ \0 J$ ^ [6 F3 C' ` l
1+1/3=4/3 ≡ 1+100=101 (mod 299) 101^2 ≡ 35 (mod 299)1 Q+ P9 y0 h9 |: j4 R
(101-3)^2 ≡ 3^2-2*4+35 (mod 299) => 98^2 ≡ 36 (mod 299)
: {- v1 N7 d0 d4 e4 P' z6 Q (101+3)^2 ≡ 3^2+2*4+35 (mod 299) => 104^2 ≡ 52 (mod 299)
$ `5 T J0 N4 w* s 1-1/3=-2/3 ≡ 1-100=-99 (mod 299) 99^2 ≡ 233 (mod 299)
8 g# s9 A; O1 u. Z (99-3)^2 ≡ 3^2-2*(-2)+233 (mod 299) => 96^2 ≡ 246 (mod 299) 9 t1 q( Q& A: T3 A" z
(101+3)^2 ≡ 3^2+2*(-2)+233 (mod 299) => 102^2 ≡ 238 (mod 299)
9 U5 B6 m6 P" D* ^' z: v5 O 按2+1/3也能得到相同结果,这里不在验证.+ i2 L" n! g& b2 q
: G3 W" l$ O- j8 l
当然如果j=2s, 即为偶数, 可以计算一半的值, (3-2)式得 :
v5 A" U4 v3 D: L (m/j ± i*s)^2=(is)^2±mi+(m/j)^2 (i ≥ 1) (j ≥ 3) (3-3) # G% x+ c$ ?( c( F4 t
更一般的公式: 当为 g/j g <j/2 , (g, j)=1, 这里就不再给出.9 y7 L+ d/ f) b+ a7 J1 D& y
n6 j8 P$ [2 M8 S
|
zan
|