- 在线时间
- 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
 |
二次剩余值的关联计算(上)
8 N8 t$ `2 M0 U! w4 t6 V" n" B9 _! D. U( A
一、 二次剩余中\frac{1}{2} 相关值的计算:
8 k2 R! `4 T& C0 N3 a7 D" q 对于完全平方公式:
7 w$ `. w+ \5 k' i* _2 B7 h (1/2 -m)^2 = 1/4 -m+m^2 = 1/4 +m(m-1) (m≥1) (1-1)
6 H1 w9 O* A6 P q0 V3 l, o) D" j2 @6 T
在n为奇数时, 上式的同余可以分为:
9 V7 n# ^, C. U. m- a; K: _$ U ① 当n=4k-1时,对(1-1)求同余得:
8 ~# C8 ?! j! z+ Q (1/2-m)^2 ≡ (2k-m)^2 ≡ k+m(m-1) (mod n) (1-2)) t9 _7 J2 k9 C0 H0 T9 J q
② 当n=4k+1时, 对(1-1)求同余得: + X5 t* h1 Y& H6 V* C5 w" e9 T
(1/2 -m)^2 ≡ (2k+1-m)^2 ≡ -k+m(m-1) ≡ n-k+m(m-1) (mod n) (1-3)
0 S9 w4 A/ M- F1 J; E9 R3 Y7 v4 Q8 R/ H- j/ ^
为以后叙述方便,我们对 1/2-1 1/2-2 ... 1/2-m (m >=1) 这类数称为二次剩余的后序序列, 即1/2 减小的方向的数列. [3 O& L7 m9 e4 I7 Y$ d
2 H7 J. y; o' W0 _! _6 h1 W
二次剩余后序序列的二次剩余值有个特点, 与k(k>0)值相关, 是k值与两个连续整数积的和,与k值同奇同偶。8 h+ _! j2 w$ _
如n=299=4*75-1 k=75 2k=150 , 二次剩余后序序列为:" ^, ~* A8 k' i! H& s4 Y7 a# f3 q8 I1 j
(150-1)^2 ≡ 75+1*(1-1) ≡ 75 +0 ≡ 75 (mod 299) => 149^2 ≡ 75 (mod 299)
' m# E+ c: \* X (150-2)^2 ≡ 75+2*(2-1) ≡ 75 +2 ≡ 77 (mod 299) => 148^2 ≡ 77 (mod 299)
/ y; I: @" G' `! _- L, L2 x (150-3)^2 ≡ 75+3*(3-1) ≡ 75 +6 ≡ 81 (mod 299) => 147^2 ≡ 81 (mod 299)
$ o0 I5 v! d* F7 E' \( @1 o$ Z6 v! a5 a
.+ T* ?9 v5 u% J& [( h3 @" C
.- } W& `- |) _4 I2 q: S
根据后序序列,可以得到一个分解整数的方法:
1 C- L e; x8 C' ~( z4 [ 设n为奇合数, 如果 c^2-k=m(m-1) m>0 => (2k-m)^2 ≡ c^2 (mod n) , 或者
6 i; D: V+ L% m" p* {& k2 m c^2-k=m(m-1) => 4c^2-4k+1=4m(m-1)+1 => (2c)^2 ≡ (2m-1)^2 (mod n)
: y q4 z2 w; G4 s 上述等式,由费马分解即可得到n的因子, 不过效率较低.
" l) m3 ^/ j1 q9 b9 z 例1: n=299-4*75-1 , k=75
5 B: P2 B2 r' ?* G: } 根据后序序列,大于75且与75同奇同偶的完全平方:9^2-81
" J: v4 i% \+ r& P 81-75=6=2*3 为连续两个整数积,在后序序列上
% Q$ Y1 c- N# Z- J7 v& J, C$ T0 Z ∴ (150-3)^2≡81 (mod 299) => 147^2≡81 (mod 299)
" S0 j! Y3 l$ l0 q# O. u( e 或者 (2*9)^2≡(2*2+1)^2 (mod 299) => 18^2≡5^2(mod 299): z9 F( p7 U( |( K/ x5 T
. P" u+ ^) i2 Q- D# h+ q6 } 二、连续两个整数积的分解方法
/ j( l& R) s* J ]* g 1、分解方法介绍4 A( Z/ M: W3 f u# v
例2: n=299=4*75-1
' O1 {7 C$ a* ~7 v6 @ 25^2 ≡ 27 (mod 299) => ; t; ^1 Z, i- ^
25^2 ≡ 25+2 (mod 299) =>
3 A8 ^+ v/ R3 p3 G2 e& z 25^2-25-2 ≡ 0 (mod 299) =>
9 |) |4 ]$ ^- Z (25-2)(25+1) ≡ 0 (mod 299) =>
2 t6 J* J( i' [" F6 w- V: V9 C 23*26 ≡ 0 (mod 299) . G" J7 M* ]( T3 D* \
(23,299)=23 (26,299)=13 299=13*23
( _) o' A) L/ F7 ~5 _$ z- s- \6 y
分解方法: 设n为奇合数, a^2 ≡ b (mod n) , 如果 b=a+i(i+1) (i ≥ 0 ) , 则可得到:
( P! Z6 X+ v/ @" t) M a^2 ≡ b (mod n) => ) d- ^( W' h! q8 i! m2 \; _
a^2-b-i(i+1) ≡ 0 (mod n) => & t. N0 ?, U: L, F3 a
(a-(i+1))(a+i) ≡ 0 (mod n)
5 r* t2 G6 Z# \% Z (a-(i+1),n)>1 (a+i , n)>1 即可分解n
$ q: A0 a" i' M$ t8 I. Y' W1 v( S* u1 a4 e: }% o, V
2、分解方法的另一个解释
) z0 ?. Y3 ], v+ T 设n为奇数, a^2 ≡ b(mod n), 如果m=a, 则由(1-1)公式得: 0 q0 u& P: P8 M: K( ~# I( p$ O
(1/2 -a)^2 ≡ 1/4 +a^2-a (mod n) => , U E% e' U6 A& d. ?' g! t5 q) @; M7 [
(1/2 -a)^2 ≡ 1/4 +b-a (mod n) (2-1) 6 N- u9 f9 G+ W/ h
3 X% V9 H( {% }6 r ① n=4k-1 , 2-1式得:' F4 N/ ?9 R3 Y9 `6 s
(2k-a)^2 ≡ k+b-a(mod n) (2-2); \4 R- `% L3 |5 _
① n=4k+1 , 2-1式得:/ P6 v3 C5 n5 l, l9 Q, N" w
(2k+1-a)^2 ≡ n-k+b-a (mod n) (2-3)6 b9 \. I7 Z- Y, V+ {9 H) S
5 x9 j; E i1 O" M
从(2-1(式, 可知二次剩余的计算, 在[1,1/4]范围内, 计算出[1,n-1]的二次剩余值. 0 y: n ]0 C7 k M. p8 e7 U' V
在例2中, 按(2-2)式的计算, 可得: " n. q$ F0 p/ x/ C7 w9 f9 `
(150-25)^2 ≡ 75+27-25 (mod 299) => 125^2 ≡ 77 (mod 299) 0 u+ j. O+ {6 L
所以, a^2 ≡ b (mod n) ,如果b=a+i(i+1) ,其相对1/2的剩余值在后序序列上." x. r g3 V. \3 i- i" ~
% Q4 a9 |( W" @. A# E 三、1/j (j >=3)的计算方法 ( t2 o+ u* J2 w6 j7 n% y
上面的是计算 1/2, 即j=2, 如果j>2时, 有如下的1/j计算方法:
# ?3 m( B4 u* X; Q0 ` (1/j ± ij)^2 = (ij)^2 ± 2i + (1/j)^2 (i >= 1 ) (j ≥3) (3-1)
1 X' E5 k6 S$ I; f) G1 T1 \8 F6 s
- ?( M5 B3 l8 @' r7 m 而对于\frac{1}{j}相邻, 有两种计算,
- s+ N& `8 C h! H% i8 w+ ~7 W3 ?! y3 ? 1) 1/j 1+1/j 2+1/j ... t+1/j (t<j) : g, N5 C e; t/ O' q" i
2) t-1/j ... 1-1/j 1/j 1+1/j ... t+1/j (t < j/2) 9 x" c% u {, q
t+1/j= (1+tj)/j = m/j , m=1+tj
3 L( U. B- ?' N6 t z6 S6 s& M
: s) T( B% B! Z( K* s# m I 按m/j , (3-1)式变成: 8 A- j) l4 H! `5 ?: a
(m/j± ij )^2 = (ij)^2 ± 2mi + (m/j )^2 (i≥ 1 ) (j ≥ 3) (3-2)
# O1 m/ n V2 m4 H& n+ ?+ r7 e' W# E% {; f8 s
例3: n=299 \frac{1}{3} ≡ 100 (mod 299) 100^2 ≡ 133 (mod 299) 9 w: Z2 E' ]7 t0 A h
(100-3)^2 ≡ 3^2-2+133 (mod 299) => 97^2 ≡ 140 (mod 299)
1 S! J" x8 X4 P$ {1 m0 N) ~ (100+3)^2 ≡ 3^2+2+133 (mod 299) => 103^2 ≡ 144 (mod 299)8 j, B3 a) z3 g1 z- b
1+1/3=4/3 ≡ 1+100=101 (mod 299) 101^2 ≡ 35 (mod 299)
' u$ ^" M. o# k! K, z9 c# r (101-3)^2 ≡ 3^2-2*4+35 (mod 299) => 98^2 ≡ 36 (mod 299)
4 ^! N' Q7 p2 n; b6 x8 ` (101+3)^2 ≡ 3^2+2*4+35 (mod 299) => 104^2 ≡ 52 (mod 299) ^' b- F+ Q; b, i \7 x% W: q
1-1/3=-2/3 ≡ 1-100=-99 (mod 299) 99^2 ≡ 233 (mod 299)
4 \! n# ^) g, g: F# z (99-3)^2 ≡ 3^2-2*(-2)+233 (mod 299) => 96^2 ≡ 246 (mod 299)
x+ r2 ^3 z2 g" t (101+3)^2 ≡ 3^2+2*(-2)+233 (mod 299) => 102^2 ≡ 238 (mod 299) , v0 H' m* v$ g8 n/ n& t+ }- b; l
按2+1/3也能得到相同结果,这里不在验证.# ?& a8 W; U' w' l
; G1 R2 B+ s3 K1 C8 |5 F% e1 O
当然如果j=2s, 即为偶数, 可以计算一半的值, (3-2)式得 :
+ X) Y" ~6 _; b8 F6 b! e+ t (m/j ± i*s)^2=(is)^2±mi+(m/j)^2 (i ≥ 1) (j ≥ 3) (3-3) 8 p1 R( g7 \/ I% o, [: c x
更一般的公式: 当为 g/j g <j/2 , (g, j)=1, 这里就不再给出.
7 P& A* q6 E4 L% B& Z) I# _8 ^ _( A. u7 | E
|
zan
|