Professional Documents
Culture Documents
Tzanakis Number Theory Textbook
Tzanakis Number Theory Textbook
-
22-5-2012
1.1 . . . . . .
1.2 .
1.3 >
1.4 . . . . . . . .
1.5 . . . . .
1.6
> 1 .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
5
11
12
17
19
>
2.1 < .
2.2 . . . . . .
2.3 V . . . . . . . .
2.4 < RSA
2.5
> 2 . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
25
25
27
32
35
37
.
.
.
.
.
41
41
41
43
44
49
.
.
.
.
.
53
53
54
59
64
66
5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 . . . . . . . . . . . . . . . . . . . . . . . . .
5.3
> 5 . . . . . . . . . . . . . . . . . . . . . .
69
69
75
81
.
.
.
.
.
.
>
3.1 . . . . . . . . . . . . . . . . . . .
3.2 > . . . . . . . .
3.3 . . . .
3.4
3.5
> 3 . . . . . . .
4.1 < . . . .
4.2 Legendre . . . . . . .
4.3 Jacobi . . . . . . . . .
4.4 > x2 b (mod m)
4.5
> 4 . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Z . N.
, , N {0} N0 .
Q. > ,
a/b a, b b , 0.
[]. >
[] < [] + 1.
1.1
, .
, , . _ a, b,
b , 0 a/b , , c Z,
a = bc, b|a
.
< b a.
< b a.
< a b ( b).
< a b ( b).
< a b.
! b|a b/a. <
(b a), ( b/a).
3
1.
4
1.1.1 > :
. 1|a a.
. b|0 b , 0.
. _ b, c , 0 c|b b|a, c|a.
0 r < b .
a b . < q
() a b r .
> (q, r)
.
^ q = [ ba ]. , , q ab < q+1,
bq a < bq + b. , , a = bq + r
r 0 r < b.
_ (q1 , r1 )
(q, r), bq1 + r1 = a = bq + r, b(q1 q) = r r1 . _ r1 , r,
b |r r1 |,
b |r r1 |, 1.1.1.
>
, |r r1 | r r1
, b, ,
1.2
, 0 r, r1 < b.
r1 = r, q1 = q. ...
, b = 2, r 0 1.
, a = 2q a , , a =
2q + 1 a .
!
. , 21 4
21/4=5.25, () 21 4 5
( 1). 0
. ^, 12 4 12/4=3, ()
12 4 3.
1.2
a, b. a, b
, a b.
> 1.1.1
a, b ,
a, b , , , min(|a|, |b|). ,
a, b , ,
a, b (a, b), ,
, (a, b).
<
= {ax + by | x, y Z} .
:
1. , , , , .
2. ,
1
:
|a|, |b| .
, |a| = a 1 + b 0 a > 0 |a| = a (1) + b 0 a < 0
b.
, , d
, .
d , = dZ.
, d , 2, , dn n Z.
^, dZ.
> , , m
m d: 1.1.2, m = dq + r
1
Z.
1.
0 r < d. , 2 d
d(q) . V, , m , , 1 ,
m qd , , r . <, r > 0,
d, d.
, r = 0, m = dq dZ dZ.
< d a, b. , ,
d a, b,
( 1.1.1).
, , a .
> = dZ,
, a dZ, , a d , d
a.
> b.
c a, b d.
, d , x0 , y0 Z,
d = ax0 + by0 . a = a1 c, b = b1 c, d = c(a1 x0 + b1 y0 ),
c|d.
, , |c| d (
1.1.1), , d a, b
a, b.
,
1.2.1 ^ d a, b. :
. a, b
d.
. < x0 , y0 , d = ax0 + by0 .
< a1 , a2 , . . . , an
(a1 , a2 , . . . , an ) ,
a1 , . . . , an . < , :
(a1 , a2 , a3 ) = ((a1 , a2 ), a3 )
(a1 , a2 , a3 , a4 ) = ((a1 , a2 , a3 ), a4 )
..
.
(a1 , . . . , an1 , an ) = ((a1 , . . . , an1 ), an )
, ,
a1 , . . . , an . 13. >,
14
,
1.2.1.
V (a1 , a2 , . . . , an ) = 1, a1 , a2 , . . . , an
. < a1 , a2 , . . . , an
, , , n = 2, .
1.2
, 10,12,15 ,
( ) 1. V, , ,
(10, 12) = 2, (10, 15) = 5 (12, 15) = 3. , ,
a1 , a2 , . . . , an , .
1.2.2 >
. _ b|a (a, b) = |b|.
. _ a = bq + c a, b
b, c , (a, b) = (b, c).
. c, (ca, cb) = |c|(a, b)
!
a b
(a, b)
. _ c a, b, ,
. , =
c c
|c|
, c = (a, b) a/(a, b) b/(a, b)
.
. _ (a, b) = 1 c , (ac, b) = (c, b).
. _ (a, b) = 1 b|ac, b|c.
. _ a1 , . . . , an
b1 , . . . , bm , (a1 an , b1 bm ) = 1.
> . < |b| , , b , , a, a, b.
. a, b a bq,
c = (1)a + qb (. 1.1.1), b, c.
> , b, c qb + c = a,
a, b.
. ^ (a, b) = d. > |c| c d a, |c|d
ca , , cb. < |c|d , , ca, cb,
( 1.2.1) (ca, cb). , ,
(ca, cb) |c|d. , 1.2.1
x0 , y0 , ax0 + by0 = d, (ca)x0 + (cb)y0 = cd.
, , (ca, cb),
(ca, cb) cd, |c|d. , (ca, cb)
|c|d = |c|(a, b) , (. 1.1.1).
. > ac a bc b,
|c|( ac , bc ) = (a, b), , .2
. ^ (c, b)|(ac, b). , (c, b) c, b ac, b, (ac, b) ( 1.2.1).
, 15.
1.
1.2.3 ^ a b > 0. r0 = a, r1 = b, s1 = s0 = 1.
i = 1, 2, . . . qi+1 , ri+1 , ,
ri1 ri (. 1.1.2). :
. b = r1 > r2 > r3 > i = n 2 rn+1 = 0.
b
+ 2 rn = (a, b).
n n < 2 log
log 2
. i = 1, . . . , n si = si2 si1 qni+2 . , (a, b) =
asn1 + bsn .
1.2
(n 1). :
a = r0 = r1 q2 + r2 = bq2 + r2 , 0 < r2 < r1 = b
b = r1 = r2 q3 + r3 , 0 < r3 < r2
r2 = r3 q4 + r4 , 0 < r4 < r3
..
..
.
.
ri1 = ri qi+1 + ri+1 , 0 < ri+1 < ri
..
..
.
.
rn3 = rn2 qn1 + rn1 , 0 < rn1 < rn2
rn2 = rn1 qn + rn , 0 < rn < rn1
rn1 = rn qn+1 + 0
< rn = (rn1 , rn ) (.
1.2.2). 1.2.2 ,
:
(rn , rn1 ) = (rn1 , rn2 ) = (rn2 , rn3 ) = = (r4 , r3 ) = (r3 , r2 ) = (r2 , r1 ) = (r1 , r0 ) =
(b, a).
>, = , =
. n
.
. i = 0, 1, . . . , n rn = si rni+1 + si1 rni (),
i: i = 0 s0 rn+1 + s1 rn =
1 0 + 1 rn = rn . ^, , 0 i < n,
i + 1, , rn = si+1 rni + si rni1 .
,
si+1 = si1 si qni+1 (. s1 , s2 , . . .) rni1 = rni qni+1 + rni+1
( , , i n i).
1.
10
a, b, ( b) 300
, 2000 n.
> 2000 .
. < ,
1.2.3: ^ (7168, 917).
1.2.3 .
7168
917
749
168
77
14
(= ) 7, (7168, 917) =
7.
,
, ,
,
,
.
=
=
=
=
=
=
917 7 + 749
749 1 + 168
168 4 + 77
77 2 + 14
14 5 + 7
72+0
7168
917 749
749 168 1
168 77 4
77 14 2
14 7 5
0 2
917
7
q
s 1
2
-1
5 2
6 -13
4
1
58 -71
7
555
1.3 >
1.3
11
>
a, b. a, b
, a b.
a, b (.. |ab|)
, a, b
[a, b].
1.3.1 ^ a, b . :
. V a, b , ,
|ab|
nab
n Z. , [a, b] =
. ^, (a, b) = 1,
(a, b)
(a, b)
[a, b] = |ab|.
. a, b
[a, b].
. _ (a, b) = 1 a, b m,
ab m.
: _ a1 , . . . , an
m, a1 an m.
> . ^ m a, b.
> a|m,
m = ak k Z. ^ d = (a, b) a = da1 , b = db1 .
>
1.2.2 (a1 , b1 ) = 1. < b|m
ak/b Z, a1 k/b1 Z, , b1 |a1 k. , 1.2.2
b1 |k, k = nb1 n Z. ^, ,
m = ak = ab1 n = a(db1 )n/d = n(ab)/d.
> ,
n(ab)/d a, b. , n(b/d)a.
> d|b,
a.
> , n(a/d)b,
b.
, , a, b , nab/d
n,
a, b |ab|/d.
. ^ d = (a, b).
> , a, b
nab/d, ab/d = [a, b]. ^, a, b
[a, b].
> , n[a, b] [a, b].
n[a, b] = nab/d = n(b/d)a = n(a/d)b,
a b.
. (), [a, b] = |ab|, , (), m [a, b],
, ab.
^ a1 , . . . , an
1.
12
m. > , a = a1 , b = a2 , m a1 a2 . < a3 , ,
a1 a2 , a1 , a2 (. 1.2.2).
^, , a = a3 b = a1 a2 , m, ab = a1 a2 a3
m. > ,
m a1 a2 an . ...
a1 , . . . , an1 , an
,
a1 , . . . , an1 , an [a1 , . . . , an1 , an ]. <
, ,
[a1 , a2 , a3 ] = [[a1 , a2 ], a3 ]
[a1 , a2 , a3 , a4 ] = [[a1 , a2 , a3 ], a4 ]
..
.
[a1 , . . . , an1 , an ] = [[a1 , . . . , an1 ], an ]
, , ,
a1 , . . . , an1 , an . . 26.
1.4
,
. _ , ,
n, 1, n n.
n.
< 1.4.1 < n 0, 1
1 n. < n
0, 1 .
1 Z Z,
Z. , n (,
) , , n (, ).
, 7 13 ,
.
> , 10 , ,
1, 10 5.
1.4.2 . m , 0, 1, 1
m . ^, 1 , ,
.
. _ p a , ,
1.4
13
20 :
.
14
1.
b1 = p.
V p :
, (,
, p ) p = a1 a2 , 1 < a1 , a2 < p. , , p|a1 a2 ,
p|a1 p|a2 .
.
> () , p, (m)
, m p < |m|.
1, , ()
|m|
p
q, , ,
. ^, q| mp mp |m ( m mp
), q|m. < p ,
m p q, p |m|
,
p
.
. < P . ^ P =
o
{p1 , . . . , pk }. m = p1 pk + 1, ,
1, , () , , q.
q < P. , , q
pi {p1 , . . . , pk }, q|(p1 pi pk ). V q|m, ( 1.1.1) d|m
(p1 pk ) = 1, .
...
>. > () ,
n > 2. , , n > 2, ,
n. ^ . . n = 50.
2,3,. . . ,50. 2 , ,
4,6,. . . ,48,50. < , 2,
3. , ,
6,9,. . . ,45,48. 6 2
3, . : <
, 3, , , 5.
, , 10,15. . . ,45,50.
^ , ,
.
50 , , ,
, 50. , , ;
, 17, ;
^! 1.4.2 , ,
2, 3, 5, 7.
,
50 , ,
50 = 7.071 . . .. ^, n = 50,
1.4
15
7, :
2
3 4
5 6
7 8 9
10 11
12 13
14
15
16 17
18 19
20
21
22 23
24
25
26
27
28 29
30 31
32
33
34
35
36 37
38
39
40 41
42 43
44
45
46 47
48
49
50
, , ,
.
1.4.3 >. n > 1
: n = p1 pk . <
, : _ n = q1 q` q1 , . . . , q`
, k = ` q1 , . . . , q` , , p1 , . . . , pk .
> n ,
.
1.4.2 n p1
n = p1 n1 . _ n1 = 1, n = p1 n
. , 1 < n1 < n n1 p2 ,
n1 = p2 n2 , n = p1 p2 n2 . n2 = 1, n = p1 p2
n . , 1 < n2 < n1 < n n2
p3 , n2 = p3 n3 , n = p1 p2 p3 n3 . ^ ,
i n = p1 p2 pi ni , n > n1 > n2 > ni > 0. ^,
, i = k nk = 1,
, n = p1 pk .
.
^ n = q1 q` q1 , . . . , q` . ` k. ^ q1 |p1 pk , ,
1.4.2, q1 , , p1 , . . . , pk , ,
, p1 .
> , p1 , ,
1, , q1 = p1 . ,
p1 p2 pk = n = q1 q2 q` p1 = q1 p2 pk = q2 q` . : < q2 p2 pk ,
, , , p2 , . . . , pk .
, q2 = p2 ... _ ` > k, , k
1 = qk+1 q` , . ^,
` = k q1 = p1 , q2 = p2 , . . . qk = pk . ...
n , 0, 1 , ,
, n, :
1.4.3 n = p1 p2 . . . pk , p1 , . . . , pk
, , , . < ,
n = qa11 qamm , : () q1 , . . . , qm
. () m k ai 1 i = 1, . . . , m.
1.
16
, n = qa11 qamm n,
q1 , n , qb1 |n, n = qb1 c,
c, qa11 qa22 qamm = qb1 c. ^, , b > a1 , ,
qa11 , ,
q1 ,
q1 1.4.3,
.
^ , , n
p, p n, v p (n), : v p (n) =
n = 0 v p (n) = a ( 0) pa p, n.
, v2 (1200) = 4, v3 (1200) = 1, v5 (1200) = 2, v7 (1200) = 0.
:
qa11
n = q1 1 q2 2
qmqm
(n)
, , ,
,
1. (1.1) n
n.
< , :
_ Q, = a/b v p () =
v p (a) v p (b). < ,
. 30.
: < (1.1),
n .
< ,
, .
1.4.4
. ^ a, b b , 0. , b
a , , v p (b) v p (a) () p.
. _ a = p1s1 pmsm a, ,
a pt11 ptmm , 0 ti si i = 1, . . . , m.
, a (s1 + 1) (sm + 1).
1.5
17
si ri
(i = 1, . . . , m) ,
c = 1
p1 , . . . , pm , , c . ,
b (. ),
a = b(cp1s1 r1 pmsm rm ) .
, b|a.
. < a
. V
a, : t1 s1 + 1 (
0 t1 s1 ), t2 s2 + 1 ,. . . , tm sm + 1
, pt11 ptmm (s1 + 1)(s2 + 1) (sm + 1)
,
. ...
.. 31 32
1.5
< (
1.4.3) . >
, , x2 + y2 = z2
x, y, z. (x, y, z) .
, ,
.
1.5.1 _ a, b, c , (a, b) = 1 ab = cn ,
n 2, c1 , c2 a = cn1 , b = cn2 c1 c2 = c.
> _ a = 1 b = 1, . , a b. p1 , . . . , pk
() a q1 , . . . , q`
() b. < (a, b) = 1
, pi q j . >, ab = cn
, c
1.
18
p1 , . . . , pk , q1 , . . . , q` . ^, c
c = pr11 prkk q1s1 q`s` , ,
ns`
nrk ns1
1
ab = cn = pnr
1 pk q1 q` .
(1.2)
> , a pi
q j , b q j
pi . , ,
rk n
nrk
r1
n
1
a = pnr
1 pk = (p1 pk ) = c1
ns`
s` n
s1
n
1
b = qns
1 q` = (q1 q` ) = c2
, (1.2), c1 c2 = c. ...
^ (x, y, z) . (x, y) = d,
x = dX, y = dY 1.2.2 (X, Y) = 1.
>
x2 + y2 = z2 , , X 2 + Y 2 = (z/d)2 .
, . , , 11
z/d , Z. <, ,
x = dX , y = dY , z = dZ , (X, Y) = 1 ,
X2 + Y 2 = Z2
(1.3)
.
:
(X, Z) = 1 (Y, Z) = 1.
X, Y . , ,
X 2 + Y 2 4k + 2, , ,
4, .
, , , , X
Y . , Z . >,
X, Y, Z,
X, Y, Z .
(1.3) (Z Y)(Z + Y) = X 2 .
> Z + Y, Z Y
(Z Y, Z + Y) = 1.
1.5.1 (ZY)(Z+Y) = X 2 (
X, Z + Y, Z Y ) Z + Y = a2 , Z Y = b2
X = ab, a, b (a, b) = 1.
Z, Y Z = (a2 + b2 )/2 Y = (a2 b2 )/2.
2, a = A + B b = A B,
A, B , , (
).
1.6 > 1
19
1.6
> 1
>
1. _ d ax + by a0 x + b0 y (d, ab0 a0 b) = 1,
d x, y.
2.
> :
+ = , + = ,
+ = .
3. ^ n 1.
> :
{d : 1 d n
d|n} = {
n
: 1dn
d
d|n}
4.
> , ,
8 1 4 1.
5.
> , ,
3, 3 1.
20
1.
6.
> , 7,
7 1 6.
7.
> , , . >,
3. ,
n, n(n + 1)(2n + 1) 6.
8. () _ a, b (a, b) = 1,
(a + b, a b) = 1.
() _ a, b , (a + b)/2 (a b)/2 ,
, , (, )
, ab
) = 1.
. ^, , (a, b) = 1, ( a+b
2
2
9. ^ a, b , . < a1 = a,
b1 = b k = 2, 3, . . ., ,
_ ak1 : ak = ak1 /2, bk = bk1 .
_ bk1 : ak = ak1 , bk = bk1 /2.
_ ak1 bk1 : ak = min(ak1 , bk1 ), bk = |ak1 bk1 |/2.
> : () k = 1, 2, 3, . . ., ak , bk
, , .
() _ k 2 ak1 bk1 , 0, ak + bk < ak1 + bk1 .
() k 2, (ak , bk ) = (ak1 , bk1 ).
()< n 2, an bn = 0 an , bn
a, b.
<
1001 4151.
10. ^ ab = mn , , ,
(m, n) = 1.
> k Z, a = km b = kn.
, ab11 = ba22 , k, ` Z,
ka1 = `a2 kb1 = `b2 .
11.
> , n 2 n-
, , , . > :
_ n- ,
. , n-
.
12. ( ) ^ an xn + a1 x + a0 , n 2 an , 0. <
, k`
((k, `) = 1).
> `|an k|a0 . , ,
, an = 1, , , ,
, .
1.6 > 1
21
<
, .
13. a1 , . . . , an1 , an , n 3 : d2 =
(a1 , a2 ), dk+1 = (dk , ak+1 ) 2 k n 1. k
dk a1 , . . . , ak , ,
, dk = (a1 , . . . , ak ).
14. ^ d = (a1 , a2 , . . . , an ) (n 2). :
(1) a1 , a2 , . . . , an d.
(2) < x1 , x2 , . . . , xn , d = a1 x1 + a2 x2 + an xn .
15. 1.2.2, c
a, b;
16. < , a, b, x0 , y0 ,
ax0 + by0 = (a, b). >,
,
a, b (. 1.2.3).
a, b n q2 , q3 , . . ., r2 , r3 , . . .,
1.2.3 (.
). <:
P1 = q2 , P2 = q2 q3 + 1 , Pk = qk+1 Pk1 + Pk2 k = 3, . . . , n
Q1 = 1 , Q2 = q3 ,
Qk = qk+1 Qk1 + Qk2 k = 3, . . . , n
P Pk1
k1
()
> k
= (1) k = 2, . . . , n. , Q Q
k
k1
, (Pk , Qk ) = 1 k = 1, . . . , n.
()
> , k = 1, . . . , n 1
Pk rk+2 + Pk+1 rk+1 = a
, k = n 1 a = rn Pn b = rn Qn .
>
1.2.3 rn = (a, b). < , 1.2.2
(), rn = (a, b).
() () () aQn1 bPn1 = (1)n (a, b).
() a = 7168 b = 917
, , (),() ():
k=
qk+1 =
Pk =
Qk =
rk+1 =
6=n
1.
22
17.
> 1.2.3 d = (654321, 123456) , , x0 , y0 , 654321x0 + 123456y0 = d. ,
16, x0 , y0 .
(x0 , y0 ) .
29
18. ^ n 2 n .
> , n, ,
.
> ,
, n n.
19. _ (a, b) = 1 m, n 1, (am , bn ) = 1, :
a, b
, .
20. ( b- ). ^ b > 1.
a . >
a b, a = ba1 +d0 , 0 d0 < b.
> ,
k = 1, 2, . . . a b, ak =
k1
X
bak+1 + dk , 0 dk < b.
> , k 1 a =
di bi + ak bk
i=0
k = n 1, an = 0.
a d0 + d1 b + + dn1 bn1 ,
0 dk < b k = 0, . . . , n 1 dn1 > 0. (
) a b-
b. , b = 10 10- a.
21. ^ a = bq + r a, b, r > 0 ( q, r
, , a b,
) n .
> s, ,
na 1 = (nb 1)s + nr 1. 4 :
1. (na 1, nb 1) = (nb 1, nr 1).
2. (na 1, nb 1) = nd 1, d = (a, b).
22. < (182, 422) (2311, 3701).
23. (399, 703) ( )
399 703.
24. < 547x + 632y = 1,
398x + 600y = 2 922x + 2163y = 7,
1.2.3.
4
1.6 > 1
23
a1
b1
a2
,
b2
, p v p (a1 ) v p (b1 ) =
10.
31.
>
Y
(a, b) =
pmin(v p (a),v p (b)) ,
p
[a, b] =
(a, b)[a, b] = ab.
32. ^ !p k < p.
>
p
p.
k
24
1.
<:
> v p ! ! p p1
p
.
=
k
k k1
v p .
33. , ,
C D, X 4 +
Y 2 = Z 2 X ( ), X ( ).
34. , ,
( 1.4.1)
4k + 3.
> ,
6k + 5.
2
>
, m, n 1
2.1
<
- < 2.1.1 ^ m 2. a, b:
1. m|(b a).
2. < k, b = a + km.
3. a m b m.
V ,
ab
(mod m)
a b m a b modulo m. <
m a b (mod m), a, b
m. 1 m
.
1
> ,
, , . < modulo , (),
(. , . ) ,
modulo.
25
26
2. >
2.2
27
. _ a b (mod m) k ,
ka kb (mod m), , m kb ka = k(b a). , ,
, m|(b a).
. < f (x1 , . . . , xn )
kx1e1 xnen . > ( ), , , kae11 aenn
kbe11 benn (mod m). , , a1 b1 (mod m),. . . , an bn
(mod m), , , , : ae11 be11 (mod m),. . . ,
aenn benn (mod m). , ae11 aenn be11 benn (mod m)
, , k, kae11 aenn kbe11 benn (mod m).
^ a b (mod m) k . <
, k(ba)
, , km|(kb ka),
ba
m
km
ka kb (mod km).
. ^ a b (mod m) d a, b,
m. a = da1 , b = db1 a1 b1 (mod m).
> m b a = d(b1 a1 ),
(m, d) = 1, , 1.2.2 m|(b1 a1 ),
, a1 b1 (mod m).
. < m|(b a).
> d|m, d|(b a), a b (mod d).
.
> , b = a + km k, ,
1.2.2. ...
2.2
> - 2.1.1 , a
a0 {0, 1, . . . , m 1}, a a0 (mod m). , a0 a m. , ,
m ,
, m modulo
m. < a m a mod m , ,
. ^, a b (mod m) a mod m = b mod m. ^, , a0 a m, a mod m = a0 mod m, , m 0 mod m, 1 mod m, . . . , m 1 mod m. .
^ m = 12. < 45 ( )
a, a 45 (mod 12),
45 mod 12 ={. . . , 51, 39, 27, 15, 3, 9, 21, 33, 45, 57, . . .}
={45 + 12k : k Z} .
_ , , .
, m a1 , . . . , am ,
m. V
2. >
28
( modulo) m. ,
{0, 1, . . . , m 1},
. V ,
,
{
m
m
m
m
+ 1, + 2, . . . , 0, 1, . . . , 1, } ,
2
2
2
2
m3 m1
m1 m3
,
, . . . , 1, 0, 1, . . . ,
,
},
2
2
2
2
m .
. , m = 12 {5, 4, . . . , 4, 5, 6}
m = 11 {5, 4, . . . , 4, 5}. , , , . . ., m = 6,
{12, 4, 62, 11, 9, 83} ,
12 0 , 4 4 , 62 2 , 11 1 , 9 3 , 83 5
(mod 6) ,
0,1,. . . 6.
2.2.1 _ {a1 , a2 , . . . , am } m,
b m c ,
{ba1 +c, ba2 +c, . . . , bam +c} , ,
m.
>
> ba1 + c, ba2 + c, . . . , bam + c
m, a1 , a2 , . . . , am
m. , i , j bai + c
ba j + c (mod m), , c c (mod m)
bai ba j (mod m) ,
2.1.2, b, m,
ai a j (mod m), . ...
_ a m b a mod m.
> 2.1.2
(b, m) = (a, m) = 1. ^, m m,
m. , m. _ m
,
m. ,
( modulo) m. ^, , m = 10
{15, 11, 22, 33, 11, 12, 23, 6, 14, 100} (
10), , {11, 33, 11, 23},
2.2
29
. _ m = pa11 pak k m,
(m) = m(1
1
1
) (1 ) = pa11 1 pak k 1 (p1 1) (pk 1) .
p1
pk
1, (1) = 1.
> . ^ M N m
n, .
S = {mx + ny : x N y M}
S .
(i) _ x1 , x2 N, y1 , y2 M x1 , x2 y1 , y2 , mx1 + ny1 . mx2 + ny2
, , 1, . . . , m 1, m,
m.
2
2. >
30
(mod mn). , , , x1 , x2 .
x1 . x2 (mod n), x1 , x2 N. _
mx1 + ny1 mx2 + ny2 (mod mn), mx1 + ny1 mx2 + ny2
(mod n) ( 2.1.2), mx1 mx2 (mod n), ny1
0 ny2 (mod n).
> (m, n) = 1, , m, x1 x2
(mod n), , .
(ii) S mn. , mx + ny S .
(y, m) = 1 (n, m) = 1, ,
1.2.2, (mx+ny, m) = (ny, m) = 1.
> , (mx+ny, n) = 1, (mx+ny, mn) = 1.
(iii) S x (n) y (m) ,
S (n)(m). V (i),
mn, , (ii) mn,
mn.
(iv) mn
mn S . , (iii)
S , ,
. ^, , k mn
m` k, ` = 0, 1, . . . , n 1. 2.2.1,
n, `0
m`0 k 0 (mod n). z
m` nz = k, ` = `0 .
1.2.2 (`, n) = (m`, n) = (m` nz, n) = (k, n) = 1, `
n x0 N.
> , (z, m) = (nz, m) = (m` nz, m) = (k, m) = 1,
z m y0 M. ^ ` x0 (mod n),
( 2.1.2) m` mx0 (mod mn) , , z y0
(mod m), nz ny0 (mod nm). , m` nz mx0 + ny0
(mod mn), , k mx0 + ny0 (mod mn), mx0 + ny0 S .
, , S (m)(n)
mn.
> mn (mn) . ^, (m)(n) = (mn).
. ,
, . <,
m, ,
(m) = (pa11 ) (pak k )
(2.1)
(pa ) p a 1. ,
, :
pa pa .
, , pa , ,
p. p pa
p, 2p, 3p, . . . , (pa1 1)p, , pa1 1. ^,
, pa
2.2
31
(mod m) .
...
, , 2.2.4
, . < ,
a r (mod m), 0 r < m, , a m
r. < 2.1.1
r m r.
.
17437932971 57624.
2. >
32
, ,
17437932971 150743
(mod 57624) .
1507
15076
15079
150718
150721
150742
150743
15072
23713 1507
86112
44857 8611
99552
46369 8611
67632
42337 1507
=
=
=
=
=
=
=
=
2271049
35735491
74149321
386263627
99102025
399283459
45738169
63801859
23713
8611
44857
9955
46369
6763
42337
12091
(mod
(mod
(mod
(mod
(mod
(mod
(mod
(mod
57624)
57624)
57624)
57624)
57624)
57624)
57624)
57624)
, 12091.
2.3
, 43 b0 + 2b1 + 22 b2 +
23 b3 , bi 0 1. b0 , b1 , b2 , . . . (bits)
. , 43 :
> 43 , b0 = 1. , 43 = 1 + 2b1 + 22 b2 + 23 b3 + ,
= b1 + 2b2 + 22 b3 + , , 21 , b1 = 1.
21 = 431
2
, 10 = 211
= b2 + 2b3 + , b2 = 0, 10 . :
2
5 = 10
=
b
+
2b
3
4 + , b3 = 1. ,
2
43 (b0 , . . . , b5 ) = (1, 1, 0, 1, 0, 1) 43 = (101011). ,
b0 , b1 , . . . , bk N, N =
(bk . . . b1 b0 ). < .
.
[a]m
a m > 1. <, [a]2 0,
a 1, a . >, , B
,
B
B
B2
=
B1
2
B
2
2.3 V
33
.
N.
> bI , I = 0, 1, 2, . . . N.
I B.
I0 : BN
B > 0
h i
bI = [B]2 : B B2
I I+1
< , ,
,
:
^ aN m, , , [aN ]m . ^
N = (bn . . . b1 b0 ) bi
. >, , ,
k, Dk+1 Ak .
> 0: <
b0 ,
20
D0 = [a ]m = [a]m ,
[a]m
A0 = [ab0 ]m =
b0 = 1
b0 = 0
k: ^
b0 , . . . , bk ,
Dk = [a2 ]m ,
Ak = [a(bk ...b1 b0 ) ]m
_ bk N, Ak = [aN ]m -.
,
k + 1: <
k+1
[Dk+1 Ak ]m bk+1 = 1
bk+1 , Dk+1 = [a2 ]m = [D2k ]m , Ak+1 = [a(bk+1 bk ...b1 b0 ) ]m =
Ak
bk+1 = 0
. , a, b,
, m a b, , [ [a]m [b]m ]m . > 0 [a]m , [b]m < m,
,
m2 , m. , (log m)1.585 .
. , ,
2. >
34
, m
m.
> , ,
, k
k + 1 , , ,
, , , . ^, N = (bn . . . b1 b0 ),
2n, , . V, N 2n ,
N
, ,
n log
log 2
h
i
N
aN (mod m) , , 2 log
log 2
.
< .
.
m > 1, a , 0, N 1.
> [aN ]m , , aN m.
A, B D.
> : A 1, D a, B N.
B > 0
B , A A D
D D2 , B bB/2c.
A
, a43 ,
,
:
A
1
a
a3
a3
a11
a11
a43
D
a
a2
a4
a8
a16
a32
a64
B
43
21
10
5
2
1
0
2.4
35
< RSA
RSA,
70 Rivest, Shamir, Adleman3 .
.
. , 01,
02,. . . , 24 25 ,
4 . ^, 4
4
= (1615, 1105, 1215, 1825, 1601, 1907, 1725, 1601, 1319, 2413) ,
1615 , 1105 , ... 1825
( 18) ( 25)
.
, ,
, (n, e). >, n = pq,
p , q , 2525 (=
4 ) e
(n) = (p 1)(q 1). p, q .
, . (n, e) , :
a
ae mod n.
, ,
.
,
(n, e) = (49144364409017, 1365911). 4
a , a1365911 mod 49144364409017. ^,
.
3
4
> RSA
> <.
2. >
36
mod 49144364409017 :
16151365911
11051365911
12151365911
18251365911
16011365911
19071365911
17251365911
16011365911
13191365911
24131365911
30709871603611
41273825308431
9164816839987
12180136144268
14492511666169
47865660368437
37381475485785
41273825308431
42843960910675
26456721815013
^,
10 . < d
(n, e), . > n
3295321 14913377, (n) = (3295321 1) (14913377
1) = 49144346200320. , , (e, (n)) = 1,
1.2.1, d, y, de + y(n) = 1, de 1 (mod (n)).
, , 1 d < (n), d
(n), . <
d si 1.2.3,
, , log2 n.
d, d =
12848342058791, (n, e) . ,
a ( )
ae b (mod n) (. . , a = 1615 b = 30709871603611), ,
2.2.4, bd aed a (mod n), ,
bd mod n 4 a. ^,
(. )
30709871603611d 1615 ,
41273825308431d 1105 , . . .
2.5 > 2
37
, n 5 , ,
, 150 ( ).
n,
, , !
2.5
> 2
,
, : _
, , a0 , a1 , . . . , an ,
a0 + 10a1 + 10n an .
1.
> , x , x2 1 (mod 4) x2 1 (mod 8). >,
y , y2 0 (mod 4), 8, y2 0 (mod 8) y2 4 (mod 8).
2. 1 : _ x2 +y2 = z2 (x, y) = 1,
, x, y ( ).
3. 1 : _ x2 + 3y2 = z4
(x, y) = 1, x y 4.
4. 1 : _ p
( ) (.. 29 = 52 + 22 ),
p 1 (mod 4). ^, 4k + 3
.
5.
> , x, 3, x2 1 (mod 3).
, p
x, y, p = x2 + 3y2 , p 1 (mod 6).
6.
> , x x3 0 1 (mod 9). ,
x3 + 2y3 = 5z3
x, y, z (x, y) = 1.
<. _ x3 + 2y3 = 5z3 (x, y) = 1, x3 + 2y3 5z3 (mod 9),
x, y 3.
7.
> , n, 5n3 + 7n5 12.
8. 3 9. ,
, ,
. , 54678
5 + 4 + 6 + 7 + 8 = 30.
> , 3 (,
5
< !
38
2. >
9)
3 (, 9). ,
54678 9 3, 3 30
9.
<. 10 1 (mod 3) 10 1 (mod 9). ^, , a0 , a1 , . . . , an
, ,
, 3 9.
9. 4 25.
> ,
4 (, 25)
,
( 10) 4 (, 25).
10. 8 125.
> ,
8 (, 125)
,
( 10) 8 (, 125).
11. 11.
> ,
11 ,
, . ,
9056781 11
81 + 67 + 05 + 09 11.
12. 11.
> ,
11
11 a0 a1 + a2 a3 + , a0
, a1 , a2 . . .
, 9876781 11
1 8 + 7 6 + 7 8 + 3 = 4, , 7 (4 = 11(1) + 7).
13. ^ p.
. ^ a {1, . . . , p 1}. 1.2.1
, , a0 {1, . . . , p 1},
aa0 1 (mod p). , , a0 = a
a = 1 a = p 1.
. ^ p 5. 1 2 (p 2)(p 1) ,
(), a {2, . . . , p 2} a0 {2, . . . , p 2}
aa0 1 (mod p). (p 1)! 1 (mod p).
, Wilson,
p = 2, 3.
> : _
p (p 1)! 1 (mod p), p .
2.5 > 2
39
15.
> , a|b, (a)|(b).
16. ^ n 3 k .
> ,
k1
n , 4, 2 |n ,
n, 2k |n.
17.
> , x, (x) = x/2,
x = 2a , a 1.
18.
> , x (x) = (2x),
x.
19. x, (x) = 12.
20. ^ n 1. d n
A(d) = {k : 1 k n
(k, n) = d} .
()
> A(d) ( dn ) .
<. 1 k n (k, n) = d
( dk , dn ) = 1.
k
d
k
d
n
d
() _ d1 , d2 n, A(d1 ) A(d2 ) = .
() () ()
X n
X
( ) = n ,
(d) = n .
d
d|n
d|n
<. . . . . . . 3 1.
23. ^ p . , Fermat
: a a p a (mod p),
p a. , 32
1, (a + b) p a p + b p (mod p),
a, b. >, p a p + b p 0
(mod p) a p + b p 0 (mod p2 ).
40
2. >
24. 749 , .
25. > ,
13370 23.
26. ^ (91,25). < .
, , ; ,
, -. ^, ,
, : (8,1,25,5,11,8,24,. . . ).
3
>
, m 1
3.1
3.2
>
3. >
42
a
b
m
m
x (mod ) x0 mod , d ax b
d
d
d
d
(mod m)
m
m
(3.1)
x0 , x0 + , . . . , x0 + (d 1) .
d
d
> _ ax b (mod m) , , x1 Z ax1 b
(mod m), , 2.1.2, (ax1 , m) = (b, m).
> , ,
d|(ax1 , m), d|b.
> , d|b.
>
1.2.1 x0 , y0 , ax0 + my0 = d. ,
db ,
b
b
a(x0 ) + m(y0 ) = b ,
d
d
, , , ax1 b (mod m), x1 = x0 db
, ax b (mod m) .
^ ax b (mod m), , , , d|b. a, b, m da , db , md , , ,
, da x db (mod md ) , ,
, x0 mod md .
>, , , , .
, x1 mod md , , ,
a
b a
x0 x1
d
d d
(mod
m
).
d
2.1.2 da , ( da , md ) = 1,
x0 x1 (mod md ).
, x1 mod m ax b (mod m). ,
x1 mod md da x db (mod md ), ,
x0 mod md , ,
x1 x0 (mod md ). ^, `, x1 = x0 +` md . >
` d ` = qd + j, 0 j d 1. ,
x1 = x0 + j md + qm x0 + j md (mod m), , x1 mod m
(3.1).
(3.1) . ,
, x0 + j1 md x0 + j2 md (mod m) 0 j1 < j2 < d.
> j1 md j2 md (mod m) ,
md (. 2.1.2), j1 j2 (mod d). <
, , d|( j2 j1 ), , 0 < j2 j1 < d.
...
, ax b (mod m)
1.2.3. , ax b (mod m)
1 a < m. > ,
, m a a
3.3
43
b . _ (n + 1)-
0, ,
1.2.3, rn d
a, b. _ d b, . _ ,
, d|b. 1.2.3, msn1 + asn = d,
!
b
m
a b
sn
(mod ) ,
d d
d
d
, 3.2.1,
x0 =
b
sn
d
(3.2)
d (3.1).
. 917x 42 (mod 7168). 1.2.3 (917, 7168) = 7
7|42, 7 , 3.2.1.
, , s1 , s0 , s1 , . . ., 7168 917.
si .
s6 = 555. ^, 3.2.1
),
(3.2), x0 = 6 555 = 3330 258 (mod 1024) (1024 = 7168
7
7168
x 258 + k 7 , k = 0, 1, . . . , 6, ,
x 258 , 1282 , 2306 , 3330 , 4354 , 5378 , 6402
3.3
(mod 7168) .
> : V
1000 . _
15, 11 ` 8, 5
13, 12. >
;
.
3.3.1 . ^ m1 , . . . , mk
1 . ,
a1 , . . . , ak , x,
x a1
(mod m1 ) ,
x a2
(mod m2 ) , . . . , x ak
x m1 m2 mk .
(mod mk )
(3.3)
3. >
44
> M = m1 m2 mk i = 1, . . . , k, Mi = M/mi .
>
mi m j
1.2.2 (mi , Mi ) = 1. ^, 3.2.1,
Ni , Mi Ni 1 (mod mi ). <
x0 = M1 N1 a1 + M2 N2 a2 + + Mk Nk ak
, i = 1, . . . , k, x0 ai (mod mi ). ,
M1 , . . . , Mk , , M j j , i
mi , , mi . ^,
x0 Mi Ni ai 1 ai (mod mi ). ^, x = x0
(3.3).
^, , x = x1 (3.3). , i = 1, . . . , k,
x1 ai x0 (mod mi ), mi |(x1 x0 ) 1.3.1,
(m1 m2 mk )|(x1 x0 ), , x1 x0 (mod m1 m2 mk ). ...
. ,
. ,
x < 1000,
x 11
(mod 15) ,
x5
(mod 8)
x 12
(mod 13) .
M1 = 8 13 = 104,
M2 = 15 13 = 195, M3 = 15 8 = 120. >, 104N1 1 (mod 15), 195N2
1 (mod 8), 120N3 1 (mod 13) :
(1)N1 1 (mod 15), 3N2 1 (mod 8), 3N3 1 (mod 13). <
, ,
3.2. , N1 = 1, N2 = 3, N3 = 4
x0 = 104 (1) 11 + 195 3 5 + 120 (4) 12 = 3979, , x 3979
(mod 15 8 13). , x = 3979 + 1560k , 0 < x < 1000,
3979 < 1560k < 4979, k = 3 x = 3979 + 3 1560 = 701.
3.4
> , p.
, , f (x) 0 (mod p) g(x) 0
(mod p), , g(X) , , p 1.1 , f (X) x p x,
f (X) = (X p X)h(X) + g(X), g(X)
p 1. , Fermat ( 2.2.4), ,
1
> ,
.
3.4
45
(3.4)
, , (3.4)
gn (X), gn1 (X) . . . g1 (X).
gn (X) , an , r1 , . . . , rn ,
, gn1 (X), . . . , g1 (X) bn1 , . . . , b1 .
X n , X n1 , . . . , X, X 0 . X n
an .
> X n1
an1 = bn1 + X n1 gn (X) ,
bn1 , , , ,
gn1 (X) .
> X n2
an2 = bn2 + X n2 gn (X)
+ X n2 gn1 (X) .
2
^, , n , , , n
. , Z p ( F p ,
).
3. >
46
(mod pa ) ,
(3.5)
, , p
f (X) p. < a 2. ,
, (3.5)
a, .
<
, ,
.
< , f (k) (X) k- f (X). 3 , f (1) (X) f 0 (X).
Taylor 4 . x0 ,
f (X) = f (x0 ) + f 0 (x0 )(X x0 ) +
1
1 (2)
f (x0 )(X x0 )2 + f (k) (x0 )(X x0 )k + ,
2!
k!
, k
f (X), f (k) (X) . >,
1
f (k) (X) .
k!
< f (X) = an X n + + a1 X + a0 ,
, nan X n1 +(n1)an1 X n2 + 2a2 X +a1 ,
...
4
< Taylor
,
> .
3
3.4
47
, , x x0 (mod pa )
(3.5), x x0 (mod pa1 )
f (x) 0
(mod pa1 ) .
(3.6)
(mod pa ) ,
(3.7)
1 (k)
f (x0 )yk pk(a1) ,
k!
p k(a 1) a pk(a1) .
, f (x) 0 (mod pa )
f 0 (x0 )y
f (x0 )
pa1
(mod p) ,
, , , f (x0 ) 0
(mod pa1 ). < y y0 mod p,
3.2.1. ^, y y = y0 + zp,
x x = x0 + (y0 + zp)pa1 x0 + y0 pa1 (mod pa ),
pa .
. V , (3.7).
f (x0 ) 0 (mod pa ) f 0 (x0 ) 0 (mod p),
0 pa , y. _ y = zp + y0 ,
y0 y p, ,
x x = x0 + (y0 + zp)pa1 x0 + y0 pa1 (mod pa ), ,
y0 = 0, 1, . . . , p 1, pa (3.5).
. < .
3. >
48
...
f (x) = x5 + 2x4 + 2x3 + 6x2 52x 49 0
(mod 73 ) .
f (x) 0 (mod 7)
, 0 mod 7, 2 mod 7, 3 mod 7 5 mod 7.
^ x 2 (mod 7). < f 0 (2) 0 (mod 7) f (2) 0
(mod 72 ), 2 mod 7 f (x) 0
(mod 72 ), , ,
2 + 7y0 mod 72 , y0 = 0, . . . , 6, ,
x 2, 9, 16, 23, 30, 37, 44
(mod 72 ) .
(mod 73 )
3.5 > 3
49
, 3.3.1, x0 mod m.
, x0 k- (x1 , . . . , xk ).
f (x) 0 (mod m) S 1 S k , , |S 1 | |S k |.
. f (x) = x4 + x3 13x2 + 10x + 55 0
(mod m), m = 24 33 113 . f (x) 0 (mod 24 )
15 mod 16. < f (x) 0 (mod 33 ) : x 1, 10, 19 (mod 27).
< f (x) 0 (mod 113 ) , , , 1265 mod 1331.
, f (x) 0 (mod m) 1 3 1 = 3,
< ,
x 15
x 15
x 15
(mod 1331)
(mod 1331)
(mod 1331)
> ,
, x 461791, 270127, 78463 (mod 24 33 113 ).
3.5
> 3
3. ^
f (X) =132X 17 + 4X 16 + 15X 15 + X 14 + 11X 13 + 2X 12 + 5X 11 + 3X 10
+ 1001X 9 + X 8 + 1234X 7 + 2X 6 + 1821X 5 + 13X 4 + 111X 3
+ 12X 2 + 17X + 1 .
> f (x) 0 (mod 7),
g(X), 7, , g(x) 0 (mod 7)
f (x) 0 (mod 7).
3. >
50
4.
2x + 11y 5
(mod 493) ,
3x 7y 1
(mod 493) .
>
f (X) = (X 1)(X 2) (X (p 1)) X p1 + 1
p 2 f (x) 0 (mod p) p 1
. V,
(X 1)(X 2) (X p + 1) = X p1 s1 X p1 + s p2 + s p1
3.4.1,
s1 s2 s p2 0
(mod p)
(p 1)! 1
(mod p) .
<
Wilson, 13
2.
7. ^ p .
. ^ f (X) = X n + an1 X n1 + + a1 X + a0 , 1 n < p.
>
, f (x) 0 (mod p) n
: X p X
f (X)
p.
<: ^ X p X = f (X)g(X) + r(X) degr(X) < n. , g(X) p n. ,
, x1 , . . . xn p f (xi ) 0 (mod p)
i = 1, . . . , n, r(xi ) 0 (mod p) i = 1, . . . , n. , r(X) p, , f (k)g(k) 0
(mod p) k = 0, 1, . . . , p 1. _ f (k) 0 (mod p) n
k, . . . . g(X) p n.
. ^ a . 0 (mod p) n > 1 p 1.
>
p1
n
n
x a (mod p) , , a 1 (mod p).
, ,
n.
3.5 > 3
51
<: .
p1
p1
X p X =X(X p1 1) = X(X p1 a n + a n 1)
p1
p1
p1
n p1
n
n
n
=X (X ) a + a 1 = (X n a)( ) + (a n 1)X ,
( ) , .
< X p X
X n a , ().
8. < . < m 2
, , ,
, m.
a1 mod m 1a mod m , ,
a0 mod m, aa0 1 (mod m).
ba1 mod m, a1 b mod m ba mod m, , ,
a0 b mod m.
> :
()
()
()
()
()
b
c (mod m) b ac (mod m).
a
b1 b2
(mod m)
(mod m).
a1 a2
a1 a2
a1 a2 a1 a2
n, (a1 )n (an )1 (mod m). an mod
m (a1 )n mod m.
1
p1
0 (mod p2 ).
<: 8 , ,
p2 . g(X) = (X 1)(X 2) (X
p + 1) ; < g(p) 6.
52
3. >
4
, p, q .
4.1
<
^ m > 1 a m. _ x2 a (mod m)
, a m ,,
m. _ a b (mod m), b
m , , a
m. . . .
, .
, m = p, , a p x0 mod p x2 a
(mod p), x0 mod p , , ,
x0 mod p. , , (a, p) = 1, x0 . 0 (mod p).
> ,
p , 2x0 . 0 (mod p), x0 . x0 (mod p). > ,
3.4.1 x2 a (mod p) , ,
, , , .
4.1.1 ^ p.
. V p
,
12 , 22 , . . . , (
p1
2
p1 2
) .
2
(4.1)
. ^ (a, p) = 1. _ a p,
a
p1
2
(mod p) ,
53
(4.2)
4.
54
, a ,
a
p1
2
(mod p) .
(4.3)
> . (4.1) , ,
. >, . ,
1 ` < k p1
k2 `2 (mod p), p
2
k + ` k `, ,
p.
, R p,
k (4.1) rk R ,
, rk .
> , r R
. k {1, . . . , p 1}, k2 r (mod p). _
, r (4.1)
1 k p1
2
, 1 p k p1
r k2 (p k)2 (mod p).
2
. _ a , x0 , a x02
(mod p) , , (x0 , p) = 1. ^, Fermat (
2.2.4),
a
p1
2
(x02 )
p1
2
= x0p1 1
(mod p) .
, , a
(4.1), (4.2),
x
p1
2
(mod p)
(4.4)
.
> 3.4.1,
p1
2
, , (4.1), ,
(4.4). , , , a
, a mod p (4.4)
> ,
Fermat, a p1 1 0 (mod p) ,
p
a(p1)/2 1, a(p1)/2 + 1. a mod p
(4.4), , . ^,
, , , (4.3). ...
4.2
Legendre
,
, p.
4.2 Legendre
55
Legendre a p :
!
a p
a
1
=
1 a p.
p
Legendre
.
!
!
1
a2
= 1. ,
= 1.
4.2.1 .
p
p
!
!
b
a
=
.
. _ a b (mod p),
p
p
!
p1
a
.
a 2 (mod p).
p
!
p1
1
.
= (1) 2 .
p
, -1 p 1 (mod 4) p 3 (mod 4).
!
!
!
!
a1 a2
ak
a1 a2 . . . ak
=
.
.
p
p
p
p
> () () .
(). Legendre
4.1.1.
(). ().
(). > ()
!
!
!
p1
p1
p1
a
a
a1 ak
1
k
(a1 ak ) 2 = a1 2 ak 2
(mod p) .
p
p
p
1,
, 2, . ...
, p0 = p1
. R =
2
0
0
{p , . . . , 1, 1, . . . , p } . ^, ,
k {1, 2, . . . , p0 }, (ak, p) = 1, ka
R. < R k rk , k {1, 1}
rk {1, . . . , p0 }. ^,
1 a 1 r1
2 a 2 r2
..
.
p a p0 r p0
0
(mod p)
(mod p)
(4.5)
(mod p) .
4.
56
> , r1 , r2 , . . . , r p0 . , 1
k < ` p0 . , , ka . `a (mod p), , rk = r` ,
, k , ` 1 -1.
ka `a (mod p), , (k + `)a 0 (mod p) , , ,
(a, p) = 1 , 2 k + ` < p 1.
(4.5)
0
(1 2 p0 )a p (r1 r2 r p0 )1 2 p0
(mod p) .
, , r1 , r2 , . . . , r p0
1, 2, . . . , p0 , , r1 r2 r p0 = 1 2 p0
, p,
0
a p 1 2 p0
(mod p) .
4.2.1
ap , , , 1 -1.
^, ( 2)
!
a
= 1 2 p 0 ,
(4.6)
p
, .
, , R, [] {}
, , , = [] + {}.
, R b Z, [b + ] = b + [].
^ a, p. _ 1 k p0 ,
# " " #
( )#
" # " ( )#
"
ak
ak
ak
ak
2ak
= 2
+2
=2
+ 2
.
p
p
p
p
p
_ vk ak p, , ,
{ akp } = vpk [0, 0.5),
(0.5, 1), vk < p0 vk > p0 , . _ ,
, vk p0 k = 1, vk > p0 k = 1.
" ( )#
ak
0 k = 1
2
=
1 k = 1 .
p
^, ,
"
#
2ak
k = (1)[
k = 1
k = 1 ,
2ak
p ]
4.2 Legendre
57
(4.6)
!
P p0 2ak
a
(4.7)
= (1) k=1 [ p ] .
p
(4.7)
Gauss ,
, .
4.2.2 .
!
p2 1
2
= (1) 8 .
p
(4.8)
, 2 p p
8n 1 p 8n 3.
> a,
p. (4.7) a+p
a. >,
2
4.2.1. ^ ,
!
! a+p a+p
P p0 (a+p)k
4
2a + 2p
2a
=
= 2 = 2 = (1) k=1 [ p ]
p
p
p
p
= (1)
= (1)
P p0
P p0
[ ak ]+ k=1
k=1 p
P p0
2
[ ak ]+ p 81
k=1 p
(4.9)
_ a = 1, -1
( 4.9) 0, [k/p] = 0 k = 1, . . . , p0 , (4.8).
,
(8n 1)2 1
= 8n2 2m ,
8
(8n 3)2 1
= 8n2 6n + 1 , ,
8
2
8n 1 8n 3. ...
4.2.3 Gauss.
_ p, q ,
!
!
p1 q1
q
p
= (1) 2 2
.
p
q
,
p
!
q
q
=
p
p
q
, , p, q 1
p q 3
(mod 4) .
(4.10)
(mod 4)
4.
58
> (4.10) :
! !
q p
0 0
= (1) p q ,
p q
(4.11)
, p0 , q0 = q1
.
2
(4.9) (4.8) , a = q,
!
P p0 h qk i
q
= (1) k=1 p
p
, , p, q,
!
Pq0 h p` i
p
= (1) `=1 q .
q
, (4.11)
# X
#
q0 "
p0 "
X
p
q
k +
` = p0 q0 .
p
q
`=1
k=1
(4.12)
< ,
. , x0y,
,
, ,
.
: y=
q
x.
p
(4.13)
,
(x, y) x p0 y q0 . 8. ^
q
k. < [ k]
p
, x = k
p
. 9. <, `, [ `]
q
,
y = ` . 10. ^,
(4.11)
,
x = p0 y = q0 . 11. V
, , (x, y) x {1, . . . , p0 } y {1, . . . , q0 },
p0 q0 (4.11).
...
4.3 Jacobi
59
( 4.2.1-)
1811
1811
1811
!
527
=(1)
( 4.2.2)
1811
!
!
17
31
=
( 4.2.1-)
1811
1811
!
!
1811
1811
=
( 4.2.3)
17
31
!
!
13
9
( 4.2.1-)
=
17
31
!
13
=(+1)
( 4.2.1-)
31
!
31
=
( 4.2.3)
13
!
5
=
( 4.2.1-)
13
!
13
=
( 4.2.3)
5
!
2
=
( 4.2.1-)
5
!
!
1
2
( 4.2.1-)
=
5
5
=(+1)(1) = 1
( 4.2.1- 4.2.2)
, , x2 1054 (mod 1811) .
4.3
Jacobi
P, Q , (P, Q) = 1
, , , ,
60
4.
, , ,
527
1811 . , 527 ,
,
100, , , ;
, , , , , 100, 300 ,
, . <
Legendre Jacobi,
Legendre.
^ P = p1 pn P . p1 , . . . , pn , , . a
P
!
!
a
a
a
=
P
p1
pn
Jacobi a P.
P = p1 , , P , Jacobi a P
Legendre a P.
< Legendre,
4.2.1, Jacobi.
!
!
1
a2
= 1. ,
= 1.
4.3.1 .
P
P
!
a
b
. _ a b (mod P),
=
.
P
P
a a . . . a a a a
1 2
k
1
k
2
.
=
.
P P
P
!P
1
P1
.
= (1) 2 .
P
, -1 P 1 (mod 4) P 3 (mod 4).
. > :
!
2
P2 1
= (1) 8 .
P
, 2 P P 8n 1
P 8n 3.
. _ Q (P, Q) = 1,
:
!
Q
P
P1 Q1
= (1) 2 2
.
P
Q
4.3 Jacobi
61
,
P
Q , , P, Q 1
=
P
P
P Q 3 (mod 4) .
Q
Q
(mod 4)
2|ai i
mod 4
(1 + a1 )(1 + a2 ) (1 + an ) 1 + (a1 + a2 + + an )
(4.14)
mod 16 4|ai i
(1 + a1 )(1 + a2 ) (1 + an ) = 1 +
ai +
1in
ai a j +
1i< jn
ai a j ak +
1i< j<kn
, 1 ,
4,
16 .
() (4.14), ai = pi 1,
P 1 = p1 p2 pn 1 = (1 + (p1 1)) (1 + (p2 1)) (1 + (pn 1)) 1
(1 + (p1 1) + (p2 1) + + (pn 1)) 1 (mod 4)
(p1 1) + (p2 1) + + (pn 1) (mod 4) ,
pn 1
P 1 p1 1 p2 1
+
+ +
(mod 2) .
2
2
2
2
4.2.1-,
!
!
!
p1 1
pn 1
1
1
1
P1
2
2
2
(1) = (1)
(1)
=
=
.
p1
pn
P
(4.15)
() (4.14), ai = p2i 1 0
(mod 4),
P2 1 = (p1 p2 pn )2 1 = 1 + (p21 1) 1 + (p22 1) 1 + (p2n 1) 1
1 + (p21 1) + (p22 1) + + (p2n 1) 1 (mod 16)
(p21 1) + (p22 1) + + (p2n 1)
(mod 16) ,
4.
62
1
p2n 1
P2 1 p21 1 p22 1
+
+ +
(mod 2) .
8
8
8
8
4.2.2,
!
!
!
p2 1
p2
2
2
2
P2 1
n 1
1
8
8
8
(1)
= (1)
(1)
=
=
.
p1
pn
P
()
(1)
P1 Q1
2 2
!
P
,
=
P
Q
Q
(4.16)
(1)
pi 1 q j 1
2 2
!
!
qj
pi
=
pi
qj
(i = 1, . . . , n , j = 1, . . . m) ,
4.2.3. , i {1, . . . , n} j
{1, . . . , m}.
(4.15) Q,
P 1 Q 1 X pi 1 X q j 1 X pi 1 q j 1
2
2
2
2
2
2
i
j
i, j
(mod 2) ,
,
(1)
P1 Q1
2 2
Y q j ! pi !
=
(1)
=
pi
qj
i, j
i, j
!
!
Y Y qj
pi
=
pi
qj
j
i
!
Y qj P
=
P
qj
j
!
Q P
=
.
P
Q
Y
pi 1 q j 1
2 2
...
> . < 1054
, 1811
, , , 2. Jacobi. , ,
1
, a, 8|(a2 1).
4.3 Jacobi
63
.
, , Jacobi
.
4.3.1 .
!
!
!
2
527
1054
=
()
1811
1811
1811
!
527
=(1)
( )
1811
!
1811
=
( )
527
!
230
=
( )
527
!
!
115
2
( )
=
527
527
!
115
=(+1)
( )
527
!
527
=
( )
115
!
48
=
( )
115
!
!
!
16
3
1
( )
=
115
115
115
!
3
=
( -)
115
!
115
( )
=
3
!
1
=
( )
3
=1
( )
= 1. , ,
, P pai = 1, x2 a
(mod pi ) .
> , , x2 a (mod P)
. _ Pa = 1 P ,
x2 a (mod P) !
,
pi P pai = 1, ,
! _
a
P
4.
64
x2 a (mod P),
4.4
a
P
= 1.
> x2 b (mod m)
3 f (x) 0 (mod m)
f (X) Z[X].
f (X) , f (X) = X 2 b.
, m
1
(4.17)
m = 2a pa11 pak k
m ,
p1 , . . . , pk .
a 0, k 0, , .
, ,
x2 b (mod m)
(4.18)
(mod pa ) ,
p , a 1, (b, p) = 1
(4.19)
x2 b (mod 2a ) ,
a 1 , b .
(4.20)
(4.19) ,
, bp = 1 1, . 18.
< (4.20) .
4.4.1 > (4.20).
a = 1, .
a = 2, , , b 1 (mod 4). _
, 2.
a 3, , , b 1 (mod 8). _
, 4.
65
>, , xa mod 2a , ,
x xa , xa + 2a1
(mod 2a ) .
(4.21)
> a = 1, 2 . ^, , a 3.
_ x, (4.20), x2 b (mod 8).
(mod 2k+1 ) .
> , 2k
, , 2k 2 k + 1,
xk2 b
+ xk y 0
2k
(mod 2) .
> xk , , ,
y
b xk2
2k
(mod 2) .
^, x = xk + 2k1 y y = 0 1,
, ,
x2 b (mod 2k+1 ).
, a 3 xa mod 2a
(4.20), (4.21) , , , ,
x, ,
.
(4.20), xa mod 2a ,
. <, ,
. , xa xa + 2a1 (mod 2a ),
xa 2a2 (mod 2a1 ) , xa .
(4.21).
, x2 b (mod 2a ) (a 3) xa2 b (mod 2a ), (x + xa )(x xa )
0 (mod 2a ).
> 8 1,
(x + xa )/2 (x xa )/2 . _ ,
x + xa 2, 4, ,
x xa 2a1 , x = xa + 2a1 y,
x xa (mod 2a ) x xa + 2a1 (mod 2a ), y
4.
66
, .
_ (x xa )/2 , , ,
x xa xa + 2a1 (mod 2a ). ...
4.4.1 ,
(4.18).
4.4.2 > (4.18),
m (4.17),
:
!
b
= 1 i = 1, . . . , k
pi
(mod 4)
b 1
(mod 8)
a = 2
a 3
, , ,
2k , a = 0 1,
4.5
2k+1 , a = 2,
2k+2 , a 3.
> 4
1. <
p, p,
p = 17 p = 19, .
;
2.
> , ,
: _ , {1, 1} (mod p), = .
3.
> 4.1.1 7 ()
3.
4. ^ N = x2 + y2 , x, y ,
.
> N 4k + 1.
5. ^ N = x2 2y2 , x, y ,
x .
> , p N,
p 8k + 1 8k + 7.
6. ^ N = x2 + 2y2 , x, y ,
x .
> , p N,
p 8k + 1 8k + 3.
4.5 > 4
67
7. < 137 . , p = 13 a = 7:
(4.5) (6 mod 13),
(4.6) (4.7).
> p = 19 a = 5.
8. _ p, q ,
x, y, 1 x p0 1 y q0 , y = qx/p.
9. q = 23, p = 17 k = 1, 2, . . . , p0 = 8, ,
q
4.2.3 [ k]
p
, x = k
(4.13).
10. q = 23, p = 17 ` = 1, 2, . . . , q0 = 11, ,
p
4.2.3 [ `]
q
, y = `
(4.13).
11. q = 23 p = 17
4.2.3 (4.11)
,
x = p0 y = q0
12. < p = 104779 . < ap a =
194, 120400, 18660, 14530, 1821000 Jacobi.
p
13.
> , p > 3, 3
= 3 .
>
p
p 3k + 2
x2 + 3y2 , x, y (x, 3y) = 1.
14. ^ P > 1 . ^ P0 , P,
P.
> , a
a
a
P, P = P0 .
15. ^ P0 = p1 pn , p1 , . . . , pn
.
b
> , n, b, P0 = 1.
<.
k
k + 1, : ^ c,
c
d
p1 p
=
1
d,
pk+1 = 1. b,
k
b c (mod p1 pk ) b d (mod pk+1 ) b, ,
b
p1 pk pk+1 = 1.
4.
68
16. ^ P > 1 .
b, P,
b
= 1 , , , R
P
P,
Xa
=0.
P
aR
<. {ab : a R} , , .
> , Jacobi,
,
.
17. ^ x2 b (mod m) b, m
p. ^ b = pb1 , m = pm1 .
>
x, , p , ,
x = px1 , px12 b1 (mod m1 ).
, :
(i) _ (p, m1 ) = 1, x12 b01 (mod m1 ), b01
(b01 , m1 ) = (b, m)/p.
(ii) _ (p, m1 ) = p p|b1 , x12 b2 (mod m2 ),
b2 = b1 /p, m2 = m1 /p (b2 , m2 ) = (b, m)/p2 .
(iii) _ (p, m1 ) = p p b1 , .
18. () ^ p, b p a 1.
2
3.4.2,
x b
b
b
a
(mod p ) , p = 1 , p = 1.
() ^ m > 1 m = pa11 pak k m. ^ b
m.
, ,
x2 b (mod m) : pbi = 1 i = 1, . . . , k.
, , ,
,
2k .
19. ^ 18, :
x2 6
(mod 433 ) ,
x2 1
(mod 55 ) ,
x2 6
(mod 433 52 ) .
, p .
5.1
70
5.
r . ^, r = 0, r|k.
. ^ k `, ak a` (mod m) ak` 1
(mod m).
> (), k ` 0 (mod m).
. _ ak a` (mod m) 0 k < ` r 1, , ()
r|(` k), , 1 ` k < r. , k 0.
k i (mod r) i {0, 1, . . . , r 1} , , ak ai (mod m).
...
_ ordm (a) = (m), a m.
5.1.2 < m a m ,
, a, a2 , . . . , a(m)
m.
> ^ a m, ordm (a) = (m).
>
(m)
2
(m)1
5.1.1, 1 a , a, a , . . . , a
m (m),
m.
ordm (a)
.
(ordm (a), k)
. _ g m, gk 1 k (m)
(k, (m) ) = 1 , , m,
m . ,
((m)) m.
> . ^ ordm (a) = n. `,
(ak )` 1 (mod m), , 5.1.1, n|k`,
, k` k n. , ` = r
`, kr
kn
k, n. , ordm (ak ) = r, kr = [k, n] = ( 1.3.1-) (k,n)
,
n
r = (n,k) .
. V b m , ,
m m (m). 5.1.2,
b m
gk , 1 k (m) gk m (m). (),
ordm (gk ) =
(m)
,
((m), k)
5.1
71
> , b m
, , m gk , 1 k (m)
(k, (m)) = 1. >, 5.1.2, gk
, , (m) m. ...
5.1.4 , , a, b
m > 1 ordm (a) = r, ordm (b) = s.
. _ (r, s) = 1, , ordm (ab) = rs.
. < c ordm (c) = [r, s] (= r, s).
. < p p.
> 5.1.1 .
. ^ ordm (ab) = t. ^, , b1 bb1 1 (mod m).
< 1 ordm (b1 ) = s.
> (ab)t 1 (mod m)
at bt1 (mod m). ^ c at bt1 (mod m).
> 5.1.3
r
t
ordm (c) = ordm (a ) = (r,t) , ordm (c) = ordm (bt1 ) =
s
. >, r(s, t) = s(r, t), r|s(s, t). > (r, s) = 1,
(s,t)
r|(r, t), r|t. > , s|t, ( 1.3.1) rs|t.
0
vq (r) < vq (s)
s0 =
(q)
vq (r) vq (s)
0
(q) =
5.
72
p2
i=2
2
px + p b1
b1 , . ^,
(g + px) p1 = 1 + p(c + (p 1)g p2 x + pb1 ) k mod p
(p 1)g p2 x 1 c (mod p), c + (p 1)g p2 k = 1 + pb2 b2 Z,
(g + pk) p1 = 1 + p(1 + pb2 + pb1 ) ` = 1 + pb2 + pb1 .
, k 1
!
p
X
p
(g + pk)
= (1 + p`) = 1 + p ` +
(p`)i
i
i=2
P
p3 ,
p ( 32 1). ^,
1 + p2 `2 , `2 = ` + { p} . 0 (mod p).
= 2:
!
p
X
p 2 i
p2 (p1)
2
p
3
(g + pk)
= (1 + p `2 ) = 1 + p `2 +
(p `2 )
i
p(p1)
i=2
, , p 104729,
, 40487.
1
5.1
73
P
p4 . ^,
1 + p3 `3 , `3 = `2 +
{ p} . 0 (mod p).
< (5.1) .
g + pk
p 1. , , g
p, g + pk,
g + pk p p 1. ^ ord p (g + pk) = r. < (g + pk)r 1
(mod p ) (g+ pk)r 1 (mod p) , g+ pk
p p 1, (p 1)|r r = (p 1)s.
> ,
5.1.1 r|(p ) = p1 (p 1), s = p
5.1.6 . b 3 a a2 1 (mod 2b ).
k
Y
. ^ m = 2b
pbi i , k 1 pi
i=1
: _ k = 1, b 2 b = 0 1, k 2. ,
a m
a(m)/2 1
(mod m) .
74
5.
. m = 2, 4, pn , 2pn , p n 1,
m. m > 1, ,
m.
> . < . b = 3
a2 1 (mod 8), . ^ b = k,
k2
a2 = 1 + 2k t t. <
k1
a2 = 1 + 2k+1 t + 22k t2 1 (mod 2k+1 ).
. 2.2.3
(m) = (2 )
b
k
Y
(pbi i ) .
i=1
Q
(pbi i ) = (pi 1)pbi i 1 ,
, (m)/2 .
>
k
Y
1
(pbi i )
c = (2b )
2
i=2
. _ b 2, 12 (2b ) = 2b2 . _ b = 0
Q
1, , , k 2 (pb22 ),
, . , ,
c .
^ g pb11 . > (a, pb11 ) = 1,
s, a g s (mod pb11 ).
b1
(mod pb11 )
5.2
75
5.2
g(p)
1
2
2
3
2
2
3
2
5
2
3
2
6
3
5
2
2
2
2
7
p g(p)
p g(p)
p g(p)
p g(p)
p g(p)
73
5 179
2 283
3 419
2 547
2
79
3 181
2 293
2 421
2 557
2
83
2 191
19 307
5 431
7 563
2
89
3 193
5 311
17 433
5 569
3
97
5 197
2 313
10 439
15 571
3
101
2 199
3 317
2 443
2 577
5
103
5 211
2 331
3 449
3 587
2
107
2 223
3 337
10 457
13 593
3
109
6 227
2 347
2 461
2 599
7
113
3 229
6 349
2 463
3 601
7
127
3 233
3 353
3 467
2 607
3
131
2 239
7 359
7 479
13 613
2
137
3 241
7 367
6 487
3 617
3
139
2 251
6 373
2 491
2 619
2
149
2 257
3 379
2 499
7 631
3
151
6 263
5 383
5 503
5 641
3
157
5 269
2 389
2 509
2 643
11
163
2 271
6 397
5 521
3 647
5
167
5 277
5 401
3 523
2 653
2
173
2 281
3 409
21 541
2 659
2
m = pn 2pn , p n 1.
5.1.6 m g
. ^ a m.
> 5.1.2
k {0, 1, . . . , (m) 1}, a gk (mod m).
< k indg (a) a m,
g. m
g. ind log , ,
, ,
ind
> .
5.
76
> , ,
indg (a) = k a gk
(mod m) 0 k (m) 1 .
(5.2)
5.2.1 ^ g m. , a, b
m. , ()-()
ind indg .
. a b (mod m) ind(a) = ind(b).
. < an 1 (mod m) n ind(a) 0 (mod (m)).
. ind(ab) ind(a) + ind(b) (mod (m)).
. ind(an ) n ind(a) (mod (m)).
. ind(1) = 0 ind(g) = 1.
. ind(1) = (m)/2.
. _ g1 m,
indg (a) indg (g1 ) indg1 (a)
(mod (m)) .
> ,
, (5.2) : gk g` (mod m)
k ` (mod (m)), 5.1.1,
ordm (g) = (m).
.
. ^ ind(a) = k ind(b) = `. , a b (mod m)
gk g` (mod m), k ` (mod (m)) , (m)|(k `).
V 0 |k `| < (m), k = `.
. ^ ind(a) = k. < an 1 (mod m) gkn g0
(mod m), nk 0 (mod (m)), .
. gind(a)+ind(b) = gind(a) gind(b) ab gind(ab) (mod m)
5.1.1-, ordm (g) =
(m).
. < (), , ,
: ind(a1 an ) ind(a1 ) + + ind(an ) (mod (m)). a1 = = an = a
.
. (5.2).
. m = 2 j pn , j {0, 1}, , j = 1, g ,
g(m) 1 (mod 2 j pn ). (m) ,
2 j pn |(g(m)/2 1)(g(m)/2 + 1) .
> , , 2 j , p . ^, m = 2 j pn
. _ g(m)/2 1,
g m. ^ m ,
5.2
77
gk1 a ,
g` g1
(mod m) .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
3
0
1
5 7 11 13 17
0 0
0 0 0
1 2
1 1 14
3 1
8 4 1
2 4
2 2 12
5 4 9 5
3 9 5 15
7 11 11
3 3 10
6 8 2
5 10 3
7
7
6 13
4
9
6
8
19
0
1
13
2
16
14
6
3
8
17
12
15
5
7
11
4
10
9
23
0
2
16
4
1
18
19
6
10
3
9
20
14
21
17
8
7
12
15
5
13
11
29
0
1
5
2
22
6
12
3
10
23
25
7
18
13
27
4
21
11
9
24
17
26
20
8
16
19
31
0
24
1
18
20
25
28
12
2
14
23
19
11
22
21
6
7
26
4
8
29
17
27
13
10
5
37
0
1
26
2
23
27
32
3
16
24
30
28
11
33
13
4
7
17
35
25
22
31
15
29
10
12
41
0
26
15
12
22
1
39
38
30
8
3
27
31
25
37
24
33
16
9
34
14
29
36
13
4
17
43
0
27
1
12
25
28
35
39
2
10
30
13
32
20
26
24
38
29
19
37
36
15
16
40
8
17
47
0
18
20
36
1
38
32
8
40
19
7
10
11
4
21
26
16
12
45
37
6
25
5
28
2
29
53
0
1
17
2
47
18
14
3
34
48
6
19
24
15
12
4
10
35
37
49
31
7
39
20
42
25
59
0
1
50
2
6
51
18
3
42
7
25
52
45
19
56
4
40
43
38
8
10
26
15
53
12
46
5.
78
H
HH p
a H
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
5.2 ( )
7 11 13 17 19 23 29 31 37 41 43
15 3 6 5 3
14 16 34 11 5
9 21 7 41
15 14 23 11
9 28 34
5 10 9
20 18 31
8 19 23
19 21 18
18 2 14
32 7
35 4
6 33
20 22
6
21
47
14
22
35
39
3
44
27
34
33
30
42
17
31
9
15
24
13
43
41
23
53
51
16
46
13
33
5
23
11
9
36
30
38
41
50
45
32
22
8
29
40
44
21
28
43
27
26
59
34
20
28
57
49
5
17
41
24
44
55
39
37
9
14
11
33
27
48
16
23
54
36
13
32
47
22
35
31
21
30
29
5.2
79
2.3 2) x mod m.
, x12 37 (mod 41). <
12 ind(x) ind(37) (mod 40) .
(5.3)
(mod 41) .
< ,
, m
,
, .
, ,
3.4 3,
. , , ,
.
. > . ^ a, b m
a x b (mod m) x.
5.2.1
ind(a)x ind(b) (mod (m)).
3.2.1, , , (ind(a), (m))|ind(b) ,
, ,
(m) (ind(a), (m)) . 8. ,
2.2.4-, , (m),
.
_ , 12 x 13 (mod 23). ^,
, ind(12)x ind(13) (mod 22) 5.2
ind(12) = 20, ind(13) = 14, 20x 14 (mod 22). 3.2.1, ,
x 4, 15 (mod 22).
, ,
, m. , ,
,
5.
80
, , ,
, . , ,
. > . ,
m a k-
m k 2 , , xk a (mod m)
. < m, , , ,
, m pn 2pn
p n 1.
5.2.2 ^ m = pn 2pn , p n 1.
^, , k 2 a m. , d = (k, (m)). V
, ,
g, , , ind indg .
. < a k- m , , d|ind(a).
.
. k- m (m)
d
. < a k- m , ,
a
(m)
d
.
ordm (a) =
(mod m) .
(m)
.
((m), ind(a))
, a m , , ((m), ind(a)) = 1.
> . V
5.2.1 xk a (mod m) ,
k ind(x) ind(a) (mod (m)). 3.2.1,
, , d|ind(a).
. (), a m d|ind(a). ind(a)
{0, 1, . . . , (m) 1},
0, 1, . . . , (m) 1 d.
>
(m)
: d .
. (), a k- m , ,
ind(a) 0 (mod d)
(m)
ind(a) 0
d
(mod (m)) ,
, 5.2.1,
ind(a
(m)
d
) 0 = ind(1)
(mod (m)) ,
5.3 > 5
81
, 5.2.1-.
. ^ ordm (a) = r. ar 1 (mod m) r
s a s 1 (mod m). <
ind(a s ) 0 (mod (m)) ( 5.2.1), , s ind(a)
0 (mod (m)) ( 5.2.1). , a s 1 (mod m)
s ind(a) (m) ind(a).
r s, a s 1 (mod m),
r ind(a) ind(a) (m), ,
1.3.1-,
r ind(a) = [(m), ind(a)] =
(m) ind(a)
((m), ind(a))
. ...
5.3
> 5
5.1 5.2
1. ^ m 2, (a, m) = 1. _ ordm (a) = k a0 a 1 (mod m), ordm (a0 ) =
k.
2. ^ m 2, (a, m) = 1 q . _ k 1 aq 1
k1
(mod m) aq . 1 (mod m) ordm (a) = qk .
k
3. ^ q a2 + 1 a.
> q 1
m+1
(mod 2 ).
m
<: a2 1 (mod q) 2.
4. ^ p g p. ^
k (g + kp) p1 a (mod p2 ).
> a
1 + bp b . >, b
p, g + kp pn n 1.
<: ^ (g + kp) p1 = 1 + p`.
> , b p,
` p 5.1.5.
, g p1 a (mod p2 ) a1
p
n
p, g , , p , n 1.
5. < ord43 (4), 5.2.2
, .
6. < m m = 2 3375 , 1917 .
4.
5.
82
1 (mod p) (p 1)|n
.
S n (p)
0 (mod p) (p 1) 6 |n
<. k = 1, 2, . . . , p 1 , k g (mod p).
13. ^ p > 3.
> p, p,
1 p.
<. ^ g p. k gk
; _ gk , g p1k . >,
p > 3, g(p1)/2 .
14. ^ p 22 + 1.
()
>
p, ,
.
k
<. ^ g p. k gk ; , 4.1.1.
(). () 7
p.
<.
> , ,
k
, 22 2 4 (mod 7), k ,
. , , , Gauss 7
p.
5.3 > 5
83
15. < ,
() (Selfridge 1967) q n1 aq (,
q) an1
1 (mod n)
q
(n1)/q
aq
. 1 (mod n).
<: ^ q1 , . . . , qm
n1 a1 , . . . , am aq1 , . . . , aqm , .
^ ri = ordn (ai ), (i = 1, . . . , m). a
ordn (a) = r, r = (r1 , . . . , rm ).
> an1 1 (mod n)
a(n1)/qi . 1 (mod n) i = 1, . . . , m, (15).
<: ^ p n. (a s )2 1
(mod n) 3
p 1 + 2r . , n ( ),
n (1 + 2r )2 , .
<: _ n , p n.
_ p 1 (mod m), p 1 + m
.
p 1 (mod m) . ^ q
(n1)/qe
n 1, e = vq (n 1) c = aq
.
> ,
e
e
e1
q
q
, c 1 (mod n), c 1 (mod p), cq . 1
(mod p). , 2 qe |p 1.
84
5.
,
qe11 qe22 m, p 1 (mod m).
, 3
, 58
, 58
, 8
, 33
, 34
, 16
, 15
, 15
, 26
, 53
, 15
, 3
, 5
, 32
, 5
, 12, 13
, 3
, 12
, 3
bits, 32
mod m, 70
, 3
, 5
, 58, 21
, 12, 13
, 12
, 75
, 23
, 32
, 16
, 17, 23
, 41
, 18
, 4
Gauss, 58
<, 35
Euler, 31
Fermat, 31
,, 43
Wilson, 38
, 5
, 25
, 78
, 79
, 41
, 25
, 53
, 80
, 27
, 80
>, 14
85
86
, 41
, 25
, 12
, 4
, 3
, 4
, 3
, 11, 12, 23
, 11
, 6
, 6
, 17
, 19
RSA, 35
Jacobi, 60
Legendre, 55
, 28
, 28
, 28
, 28
mod m, 69
Taylor
, 46
, 58
, 57
, 31
, 8, 10, 21
, 29
, 4
Euler, 29
, 80