- 在线时间
- 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
 |
二次剩余值的关联计算(上)% ^( U8 H3 _# m" g1 `* B7 ~
$ \* o! R/ L! Y3 z
一、 二次剩余中\frac{1}{2} 相关值的计算:
# N5 E6 g5 n$ O } 对于完全平方公式:5 \! N9 t1 N! o k) w8 a
(1/2 -m)^2 = 1/4 -m+m^2 = 1/4 +m(m-1) (m≥1) (1-1)1 Y& u) h% i) W7 k. u
t3 I: _+ }! _! _/ M) W) d 在n为奇数时, 上式的同余可以分为:/ ]0 Z4 G# L D' c
① 当n=4k-1时,对(1-1)求同余得:
l$ M1 g! s5 [$ E1 z* k2 P# ~. ~# h9 K (1/2-m)^2 ≡ (2k-m)^2 ≡ k+m(m-1) (mod n) (1-2)
! O* X3 U0 L/ x4 o$ }5 i5 b ② 当n=4k+1时, 对(1-1)求同余得:
2 D) P: O1 [7 I* O (1/2 -m)^2 ≡ (2k+1-m)^2 ≡ -k+m(m-1) ≡ n-k+m(m-1) (mod n) (1-3)# o2 W0 B3 Y# ?0 u# K! k
) V/ l" Y5 Z* @8 D! U
为以后叙述方便,我们对 1/2-1 1/2-2 ... 1/2-m (m >=1) 这类数称为二次剩余的后序序列, 即1/2 减小的方向的数列.
* j$ X, P+ o% e. ?9 \# _7 p3 g
& m* t+ l" P' N; K 二次剩余后序序列的二次剩余值有个特点, 与k(k>0)值相关, 是k值与两个连续整数积的和,与k值同奇同偶。
- s: q, k( \, A5 j0 ^; \# f& Q" M 如n=299=4*75-1 k=75 2k=150 , 二次剩余后序序列为:
( U+ q. H8 @& V (150-1)^2 ≡ 75+1*(1-1) ≡ 75 +0 ≡ 75 (mod 299) => 149^2 ≡ 75 (mod 299) % @$ T' l( Q1 x6 u8 P0 B" I7 i& y5 g
(150-2)^2 ≡ 75+2*(2-1) ≡ 75 +2 ≡ 77 (mod 299) => 148^2 ≡ 77 (mod 299)
. B2 b; `* F* t2 J. b* }0 J (150-3)^2 ≡ 75+3*(3-1) ≡ 75 +6 ≡ 81 (mod 299) => 147^2 ≡ 81 (mod 299) 5 @$ F1 K+ q( z' c
# K! I- G8 ^' c/ Z: A3 X
.
, @0 T- B/ O; v) C) X9 b: c! i C .2 ]# l$ d& ?, {4 ]! x+ I2 J( Y/ h
根据后序序列,可以得到一个分解整数的方法:. ~* o1 h9 g. @2 U. }4 q
设n为奇合数, 如果 c^2-k=m(m-1) m>0 => (2k-m)^2 ≡ c^2 (mod n) , 或者
2 z: W: ~/ o6 X1 I$ N c^2-k=m(m-1) => 4c^2-4k+1=4m(m-1)+1 => (2c)^2 ≡ (2m-1)^2 (mod n) , ^8 p* T+ {" t! {
上述等式,由费马分解即可得到n的因子, 不过效率较低.
. O$ v5 J% j; m/ {; H6 W 例1: n=299-4*75-1 , k=75
: x4 Z5 t4 Y# x/ ^ 根据后序序列,大于75且与75同奇同偶的完全平方:9^2-812 U1 y. K) ?4 ]
81-75=6=2*3 为连续两个整数积,在后序序列上
$ Q/ n8 I$ K: J. D! j8 ~: K ∴ (150-3)^2≡81 (mod 299) => 147^2≡81 (mod 299)
" }; m8 q' f! j 或者 (2*9)^2≡(2*2+1)^2 (mod 299) => 18^2≡5^2(mod 299). q( ^- B( _3 C! Q2 h! N: S; y7 u
* D2 K# Z4 j. M+ b' ` 二、连续两个整数积的分解方法
! Q t4 I- Y8 l. n- K( M 1、分解方法介绍
' [6 ~, A& q9 P4 |6 |3 o 例2: n=299=4*75-18 K1 M+ M8 Z2 K9 z
25^2 ≡ 27 (mod 299) => , o0 i. D5 f/ R- L
25^2 ≡ 25+2 (mod 299) => 2 S' f( H/ P0 w: n+ u
25^2-25-2 ≡ 0 (mod 299) =>
4 K* i) k$ i |& ^ (25-2)(25+1) ≡ 0 (mod 299) => % E- Q) p" K" L9 e6 v6 _
23*26 ≡ 0 (mod 299) $ [ o$ O- j D$ {6 p8 K
(23,299)=23 (26,299)=13 299=13*23. |- b+ N8 z# {* m I3 ~
2 I8 `; q5 z2 K& k" | 分解方法: 设n为奇合数, a^2 ≡ b (mod n) , 如果 b=a+i(i+1) (i ≥ 0 ) , 则可得到:
! y" D( O( r2 G+ u a^2 ≡ b (mod n) =>
$ e2 e% W+ ^8 E% X: R0 ?5 j a^2-b-i(i+1) ≡ 0 (mod n) =>
0 A/ Z3 g1 r, @# U (a-(i+1))(a+i) ≡ 0 (mod n)
* T4 s$ w: G! L" w/ ~' `* j; p8 ? (a-(i+1),n)>1 (a+i , n)>1 即可分解n
2 w+ r4 G0 B1 s1 f6 e% e+ ^ K) ~5 ^, c5 J0 E
2、分解方法的另一个解释 8 Q, t! X, z+ W; Z5 f3 h# |; M; t
设n为奇数, a^2 ≡ b(mod n), 如果m=a, 则由(1-1)公式得: 4 p4 s! j" k4 x/ l
(1/2 -a)^2 ≡ 1/4 +a^2-a (mod n) => ) T _% i* \; F& g9 M9 L' o% Z
(1/2 -a)^2 ≡ 1/4 +b-a (mod n) (2-1)
3 b0 J9 I# m5 v
7 w2 ^6 `0 B3 b2 Z; g ① n=4k-1 , 2-1式得:
9 x! o* q; c# h4 s% {* G (2k-a)^2 ≡ k+b-a(mod n) (2-2)( J" j5 l: Q4 p7 q5 x6 A U
① n=4k+1 , 2-1式得:
8 t. Q. U! ?# i+ U2 t2 p (2k+1-a)^2 ≡ n-k+b-a (mod n) (2-3)
8 \ k4 Y) V; o ]1 `7 C/ X+ e# q& @# u4 l9 T T" {8 _% o0 f7 J
从(2-1(式, 可知二次剩余的计算, 在[1,1/4]范围内, 计算出[1,n-1]的二次剩余值.
) ?1 n3 ^9 u% _' _ 在例2中, 按(2-2)式的计算, 可得:
& a5 z8 P2 V3 U% i. b" w (150-25)^2 ≡ 75+27-25 (mod 299) => 125^2 ≡ 77 (mod 299) ; ^/ B, K) C" j/ d% e
所以, a^2 ≡ b (mod n) ,如果b=a+i(i+1) ,其相对1/2的剩余值在后序序列上.
4 v! _4 ^, g- {' K. T
) a2 l5 a$ c' D" Z1 g" y 三、1/j (j >=3)的计算方法 B# A. D% m! u' z( _. F
上面的是计算 1/2, 即j=2, 如果j>2时, 有如下的1/j计算方法:2 Z8 Z4 U. ?1 D; J
(1/j ± ij)^2 = (ij)^2 ± 2i + (1/j)^2 (i >= 1 ) (j ≥3) (3-1)
' x$ K5 V2 ?$ u9 _$ ?) L8 p Q9 o' `6 x4 n! P( o; L
而对于\frac{1}{j}相邻, 有两种计算,
$ U, d0 g* u$ G, i0 z/ c 1) 1/j 1+1/j 2+1/j ... t+1/j (t<j)
2 x r5 x8 `/ y+ p: q# o 2) t-1/j ... 1-1/j 1/j 1+1/j ... t+1/j (t < j/2)
2 O& ~( Q) Z! p t+1/j= (1+tj)/j = m/j , m=1+tj r5 D7 i4 M3 `
4 O! U# I+ @! { 按m/j , (3-1)式变成: 2 A( F7 O8 ?6 v2 t' O( x
(m/j± ij )^2 = (ij)^2 ± 2mi + (m/j )^2 (i≥ 1 ) (j ≥ 3) (3-2)
' v0 V' f \6 F7 D0 G% k' v: n& s) U! z
例3: n=299 \frac{1}{3} ≡ 100 (mod 299) 100^2 ≡ 133 (mod 299)
! g; B6 \0 {! w$ W. S% M (100-3)^2 ≡ 3^2-2+133 (mod 299) => 97^2 ≡ 140 (mod 299)
+ j* b$ s6 W2 F% W (100+3)^2 ≡ 3^2+2+133 (mod 299) => 103^2 ≡ 144 (mod 299)
' S! k6 Y- n7 n# F0 p/ ?0 f! _ 1+1/3=4/3 ≡ 1+100=101 (mod 299) 101^2 ≡ 35 (mod 299)) f m3 D1 M/ V/ f) j0 V8 _
(101-3)^2 ≡ 3^2-2*4+35 (mod 299) => 98^2 ≡ 36 (mod 299)
5 c1 I3 \$ L6 x; k; @ (101+3)^2 ≡ 3^2+2*4+35 (mod 299) => 104^2 ≡ 52 (mod 299) 0 ]: }9 [( a4 \) _7 H
1-1/3=-2/3 ≡ 1-100=-99 (mod 299) 99^2 ≡ 233 (mod 299)
7 d% p0 D2 g* e; F (99-3)^2 ≡ 3^2-2*(-2)+233 (mod 299) => 96^2 ≡ 246 (mod 299) 7 B% N, X9 y- W4 }. v4 \' r% ~
(101+3)^2 ≡ 3^2+2*(-2)+233 (mod 299) => 102^2 ≡ 238 (mod 299)
4 B- B% u* N$ P* e 按2+1/3也能得到相同结果,这里不在验证.! A. ^2 d8 d: F5 S' S/ \" S3 `5 o' T
. J2 o: [( J# d# z" w; o- V# F 当然如果j=2s, 即为偶数, 可以计算一半的值, (3-2)式得 :
5 Z8 G: F7 }6 I5 D7 a" y2 @$ H4 l* S- W (m/j ± i*s)^2=(is)^2±mi+(m/j)^2 (i ≥ 1) (j ≥ 3) (3-3) ! u8 _6 P1 G S/ f7 b1 O* ?
更一般的公式: 当为 g/j g <j/2 , (g, j)=1, 这里就不再给出.0 m3 K; h3 X( [% h& ~% y& L: |7 N
; V) U: [1 ^6 N0 m- w
|
zan
|