Tải bản đầy đủ (.pdf) (27 trang)

đồng dư và các ứng dụng của đồng dư

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (977.54 KB, 27 trang )

SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

MỤC LỤC

CƠ SỞ LÝ THUYẾT ...................................................................................................... 1

A.
1.

ĐỊNH NGHĨA ĐỒNG DƢ ........................................................................................... 1

2.

CÁC TÍNH CHẤT CỦA QUAN HỆ ĐỒNG DƢ ........................................................... 1

3.

CÁC ĐỊNH LÝ ĐỒNG DƢ .......................................................................................... 4

4.

HỆ THẶNG DƢ ĐẦY ĐỦ - HỆ THẶNG DƢ THU GỌN .............................................. 5
ỨNG DỤNG ................................................................................................................... 8

B.

C.

1.


TÌM SỐ DƢ CỦA PHÉP CHIA ................................................................................... 8

2.

TÌM CHỮ SỐ TẬN CÙNG ........................................................................................ 10

3.

CHỨNG MINH SỰ CHIA HẾT................................................................................. 11

4.

PHÂN VÙNG BỘ NHỚ ............................................................................................. 14

5.

KÝ SỐ KIỂM TRA ( CHECK DIGITS) ..................................................................... 15

6.

ỨNG DỤNG TRONG MÃ HÓA THÔNG TIN ........................................................... 18
TRÒ CHƠI ĐỒNG DƢ ................................................................................................. 21

MỘT SỐ TRÒ CHƠI CÓ LỜI GIẢI: .................................................................................. 21
MỘT SỐ TRÒ CHƠI THAM KHẢO VÀ THỬ THÁCH ĐỘC GIẢ ................................... 25
D.

TÀI LIỆU THAM KHẢO ............................................................................................. 26



SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

A.

CƠ SỞ LÝ THUYẾT

1. ĐỊNH NGHĨA ĐỒNG DƢ
Kí hiệu Z là tập hợp các số nguyên.
Định nghĩa
Cho m là một số nguyên dương, a và b là hai số nguyên. Ta nói a và b đồng dư với nhau
theo môđun m nếu trong phép chia a và b cho m ta được cùng một số dư, nghĩa là có các
số nguyên p1, p2, r với 0  r < m sao cho a = mq1 + r và b = mq2 + r.
Khi a và b đồng dư với nhau theo môđun m, ta viết a ≡ bmod m.
Nếu a không đồng dư với b theo môđun m thì ta viết a  bmod m.
Định lý
Các mệnh đề sau là tương đương.
i.

a và b đồng dư với nhau theo môđun m;

ii.

a – b chia hết cho m (kí hiệu là m|(a-b));

iii.

Tồn tại số nguyên t sao cho a = b+mt.

Chứng minh

i  ii. Ta có a ≡ bmod m  a = mq1 + r và b = mq2 + r, với q1 , q2 , r  Z , 0  r < m .
Suy ra a  b  m(q1  q2 ) Do q1 , q2  Z nên m|(a - b)
ii iii. Giả sử m|(a-b). Khi ấy tồn tại số t Zsao cho a-b  mt, tức là a = b + mt.
iii i. Giả sử có số t  sao cho a = b + mt. Gọi r là số dư trong phép chia a cho m, nghĩa
là a  mq1  r với q1 , r  Z , 0  r < m . Khi ấy: b  mt  a  mq1  r hay b  m(q1  t )  r
trong đó (q1  t )  Z , 0  r < m .Chứng tỏ số dư trong phép chia b cho m cũng là r, tức là
a ≡ b mod m.
2. CÁC TÍNH CHẤT CỦA QUAN HỆ ĐỒNG DƢ
a) Quan hệ đồng dư là một quan hệ tương đương trên tập Z:
i. Phản xạ: Với mọi a  Z : a ≡ a mod m;
ii.Đối xứng: Với mọi a ,b  Z: a ≡ b mod m khi và chỉ khi b ≡ amod m;
iii.Bắc cầu: Với mọi a, b, c  Z : a  b mod m , b  c mod m 
suy ra a  c mod m.

1


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Chứng minh
i. Vì a – a chia hết cho m nên a  a mod m .
ii. Từ a  b mod m  ta có m|(a - b). Do đó m|(b – a ) b ≡ a mod m.
iii. Ta có a ≡ bmod m và b ≡ cmod m nên m|( a - b)và m|(b - c).
Khi đó m|((a- b )+(b- c)) hay m|(a- c). Vậy a ≡ c mod m.
b) Ta có thể cộng hoặc trừ từng vế của nhiều đồng dư thức theo cùng một môđun.
Cụ thể là, nếu a1  b1 (mod m) và a2  b2 (mod m) thì ta có: a1a2  b1  b2 (mod m)
Chứng minh
Từ a1  b1 (mod m) , a2  b2 (mod m) suy ra tồn tại t1 , t2  Z sao cho a1  b1  mt1 ,

a2  b2  mt2 .


Do

đó

a1  a2  b1  b2  m(t1  t2 ) với

t1 , t2  Z .

Vậy

a1a2  b1  b2 (mod m)
c) Ta có thể nhân từng vế của nhiều đồng dư thức theo cùng một môđun.
Cụ thể là, nếu a1  b1 (mod m) , a2  b2 (mod m) thì a1a2  b1b2 (mod m)
Chứng minh
Từ a1  b1 (mod m) , a2  b2 (mod m) suy ra tồn tại t1 , t2  Z sao cho a1  b1  mt1 ,

a2  b2  mt2 . Do đó a1a2  b1b2  m(b2t1  b1t2  mt1t2 ) , với b2t1  b1t2  mt1t2
Vậy a1a2  b1b2 (mod m)
d) Hệ quả
i. a ≡ b mod m khi và chỉ khi a ± c ≡ b ± cmod m.
Chứng minh
Thật vậy, ta có a ≡ bmod m và c ≡ c mod m.
Vậy a ± c ≡ b ± cmod m.
ii.

a + c ≡ bmod m khi và chỉ khi
Chứng minh
Thật vậy, ta có a +c ≡ bmod m, c ≡ c mod m. Vậy


.

iii. a  b mod m khi và chỉ khi a ± km ≡ bmod m với mọi k  Z.
Chứng minh
Thật vậy, a ≡ bmod m, km ≡ 0mod m. Vậy a ± km ≡ bmod m.
iv. a ≡ bmod m an ≡ bn mod m  n Z+.
Chứng minh
Ta có a ≡ bmod m ; a ≡ bmod m; ... a n  b n (mod m)
2


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
v. Giả sử f(x) là một đa thức với hệ số nguyên và  

mod m . Khi ấy

f(α) ≡ f(β)mod m. Đặc biệt, nếu f(α) ≡ 0mod m thì f(α + km) ≡ 0mod m
với mọi k Z .
Chứng minh:
Thật vậy, giả sử f(x) = a0 + a1x + a2x2 + ... + anxn .Từ giả thiết α ≡ βmod m
suy ra ai i  ai  i (mod m) với i = 1, 2,...., n.
Do đó:
nghĩa là f(α) ≡ f(β) mod m.
 k Z nên f(α)≡ f(α + km)mod m.

Đặc biệt, vì

Nhưng f(α) ≡ 0modm nên ta có f(α + km) ≡0mod m với mọi k  Z.
vi. Ta có thể chia hai vế của một đồng dư thức cho một ước chung của chúng

nguyên tố cùng nhau với môđun m:
ac ≡ bc mod mvà UCLN(c, m)=1  a ≡ bmod m.
Chứng minh
Ta có ac ≡ bcmod m  m (ac - bc) hay m|c(a - b). Nhưng m , c 1nên ta có
m|(a - b)  a ≡ bmod m.
vii. Có thể chia hai vế và môđun của một đồng dư thức cho một ước
chung dương của chúng:
m|(a – b), 0  

, |UCLN a, b ,m  

a





b



(mod

m



)

Chứng minh

Từ giả thiết δ|(a, b, m), ta đặt a  a1 , b  b1 , m  m1 với a1 , b1 , m1  Z ,

m1  0 . Mặt khác, a ≡ bmod m  a = b + mt, tZ . Ta có:

a1  b1  m1  a1  b1  m1t  a1  b1 (mod m1 ) hay

a





b



(mod

m



)

viii. Nếu hai số đồng dư với nhau theo một môđun thì chúng cũng đồng
dư theo môđun là ước của môđun ấy:
a ≡ b mod m, δ|m, δ > 0  a ≡ bmod δ .
Chứng minh
Từ a ≡ bmod m  m|(a - b), mà δ|m  δ|(a - b) a ≡ b(mod δ).
ix.


Nếu hai số đồng dư với nhau theo nhiều môđun thì chúng đồng dư với nhau
3


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
theo môđun là bội chung nhỏ nhất của các môđun ấy:
a  b(mod mi ) với mọi i 1,..., k a ≡ bmod m với m=BCNN (m1 , m2 ,..., mk )

Chứng minh
Ta có mi|(a – b) với mọi i = 1,..,k. Đặt M = m1m2...mk => M|(a – b). Vì m|M
nên ta có m|(a-b). Vậy a ≡ bmod m.
x. Nếu hai số đồng dư với nhau theo một môđun thì chúng có cùng UCLN với
môđun ấy:
a ≡ bmod m thì UCLN(a, m) = UCLN(b, m).
Chứng minh
Ta có a ≡ bmod m => tồn tại số nguyên k sao cho: a = km + b => b = a – km.
Đặt d=UCLN(a,m) ; d’ = UCLN(b,m) . Lúc này :
d|a và d|m => d| a – km hay d|b => d|d’.
d’|b và d’|m => d’|km + b hay d’|a => d’|d.
Vậy d’ = d
3. CÁC ĐỊNH LÝ ĐỒNG DƢ
a) Định lý Fermat:
Với p là số nguyên tố, ta có a p  a(mod p)
Đặc biệt nếu (a, p) =1 thì a p1  1(mod p)
b) Định lý Euler:


Hàm số phi Euler-


(m)

 Hàm nhân tính số học :
Một hàm xác định trên tập hợp các số nguyên dương được gọi là
hàm số học.
Hàm số học f được gọi là nhân tính nếu với mọi cặp số nguyên m, n
mà (m, n) = 1 thì f(m.n) = f(m).f(n)
 Cho hàm số (m) được xác định như sau:
m = 1 ta có: (m) = 1
m > 1 thì

(m) là các số tự nhiên không vượt quá m – 1 và nguyên tố

cùng nhau với với m
4


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG


Công thức tính

(m)

 m = pα ( p là số nguyên tố, α là số tự nhiên khác 0)
Ta có: (m) = (pα) = pα (1 



2



 m = p1 1 p2 p3 3 ... pn
khác 0 ). Ta có:

n

1
)
p

(pi là các số nguyên tố, α1 là số tự nhiên

(m) = m (1 

1
1
1
1
)(1 
)(1 
)…(1 
)
p1
p2
p3
pn


 Định lý Euler
Nếu m là số nguyên dương bất kì và

là các số nguyên dương nhỏ

hơn m và nguyên tố với m thì:
N  ( m)  1(mod m) với mọi số nguyên N nguyên tố cùng nhau với m

c) Định lý Wilson:
Cho p là số nguyên tố ta có : ( p  1)!1  0(mod p)
d) Định lí Bezout
Hai số nguyên a, b nguyên tố cùng nhau khi và chỉ khi tồn tại các số nguyên x, y
sao cho ax + by = 1
Kí hiệu : a, b

ℤ, (a, b) = 1 

ℤ : ax + by = 1

4. HỆ THẶNG DƢ ĐẦY ĐỦ - HỆ THẶNG DƢ THU GỌN
a. Hệ thặng dư đầy đủ
Cho m là một số nguyên dương. Tập H gồm nhũng số nguyên lấy ra ở mỗi lớp thặng
dư của Z m một và chỉ một số được gọi là một hệ thặng dư đầy đủ môđun m.Như vậy:
Tập hợp H gồm những số nguyên là một hệ thặng dư đầy đủ môđun m khi và chỉ khi:
- Các phần tử của H đôi một không đồng dư với nhau theo môđun m.
- Mỗi số nguyên đều đồng dư theo môđun m với một số nào đó thuộc H.
- Mỗi một số nguyên của H được gọi là một thặng dư.
Ví dụ với m = 8 ta có: Z8  {0,1, 2, 3, 4, 5, 6, 7} là một hệ thặng dư đầy đủ môđun 8, nó
được gọi là hệ thặng dư đầy đủ không âm nhỏ nhất. Còn hệ {3,2,1, 0,1, 2, 3} là một
hệ thặng dư môđun 8, hệ này được gọi là hệ thặng dư đầy đủ giá trị tuyệt đối nhỏ


5


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
nhất.
Tổng quát


H ={0, 1, ....., m - 1} là một hệ thặng dư đầy đủ môđun m và nó là hệ
thặng dư đầy đủ không âm nhỏ nhất.



Với m là một số lẻ, ta có

H 

m 1 m 1
m 1
;
 1;....;
là một hệ thặng dư đầy đủ môđun m
2
2
2

được gọi là hệ thặng dư đầy đủ giá trị tuyệt đối nhỏ nhất.



Với m là một số chẵn, ta có H  

m m
m
;  1;....; là hệ thặng dư đầy đủ
2 2
2

giá trị tuyệt đối nhỏ nhất.
 Tính chất 1
Mỗi hệ thặng dư đầy đủ môđum m đều gồm m phần tử.
Chứng minh Hiển nhiên vì tập m có m phần tử.
 Tính chất 2
Mỗi hệ gồm m số nguyên đôi một không đồng dư với nhau theo
môđun m đều là một hệ thặng dư đầy đủ môđun m.
 Tính chất 3
Giả sử a là một số nguyên tố với m và b là một số nguyên tùy ý.
Khi ấy xét x chạy qua một hệ thặng dư đầy đủ môđun m thì ax  b
cũng chạy qua một hệ thặng dư đầy đủ môđun m.
b. Hệ thặng dư thu gọn


Cho m là một số nguyên dương. Tập hợp K gồm những số nguyên được lấy ra
ở mỗi lớp nguyên tố cùng nhau với môđun m một và chỉ một số được gọi là
một hệ thặng dư thu gọn môđun m. Vậy một tập hợp K gồm những số nguyên
được gọi là một hệ thặng dư thu gọn môđun m nếu và chỉ nếu:
- Các phần tử thuộc K đôi một không đồng dư với nhau theo môđun m.
- Các phần tử thuộc K nguyên tố cùng nhau với môđun m.
- Mỗi số nguyên tùy ý nguyên tố cùng nhau với môđun m đều đồng dư với 1số

nào đó thuộc K.
Nhận xét
Mỗi hệ thặng dư đầy đủ đều chứa duy nhất một hệ thặng dư thu gọn.

6


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Hệ thặng dư thu gọn không âm nhỏ nhất {r1 , r2 ,....., r ( m) } thu gọn gồm các phần
tử 0  ri  m , {r1 , r2 ,....., r ( m) } nguyên tố cùng nhau với m. Ta có khái niệm hệ
thặng dư thu gọn môđun m có trị tuyệt đối nhỏ nhất.


Tính chất của hệ thặng dƣ thu gọn
 Tính chất 1
Mỗi hệ thặng dư thu gọn môđun m gồm φ(m) phần tử.
 Tính chất 2
Mỗi hệ gồm m số nguyên tố cùng nhau với m và đôi một không
đồng dư với nhau theo môđun m đều lập nên một hệ thặng dư thu gọn
môđun m.
 Tính chất 3
Giả sử a là một số nguyên tố cùng nhau với m. Khi ấy nếu x chạy qua
một hệ thặng dư thu gọn môđun m thì ax cũng chạy qua một hệ thặng
dư thu gọn môđun m.
 Tính chất 4
Giả sử b là một số nguyên bất kì. Khi ấy nếu x chạy qua một hệ thặng
dư thu gọn môđun m thì x + b cũng chạy qua một hệ thặng dư thu gọn
môđun m.


7


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

B. ỨNG DỤNG
Đồng dƣ là một khái niệm toán học cơ bản, đơn giản và sơ cấp nhưng cũng rất quan trọng
trong số học. Lý thuyết đồng dư thường được giảng dạy trong chương trình trung học cơ sở,
làm khuôn khổ để phát biểu và chứng minh một trong những định lý toán học thực sự đầu
tiên mà học sinh được học, đó là định lý Fermat nhỏ.
Lý thuyết đồng dư cho ta phương pháp đồng dư (phương pháp mô – đu – lô) , một phương
pháp có tính kỹ thuật giúp chúng ta giải quyết một số bài toán với số nguyên. Sau đây, chúng
tôi xin đề cập đến 3 dạng toán cơ bản có thể giải quyết dễ dàng bằng phương pháp đồng dư.
Đồng thời phần này cũng đề cập đến nhiều ứng dụng của động dư trong thực tế.
1. TÌM SỐ DƢ CỦA PHÉP CHIA
 MỘT SỐ BÀI TẬP CÓ LỜI GIẢI
Bài 1: Tìm số dƣ trong phép chia

cho 11

Giải:
Ta có: 2002 11
=> 2004 – 2 11
=>
Do đó,
Theo định lí Euler:
=>
Vậy


chia 11 dƣ 5

Bài 2: Tìm số dƣ khi A =

chia 7

Ta có
=>
Theo định lí Euler:

8


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
=>
chia 7 dƣ 5

Vậy

Bài 3: Tìm số dƣ của A =

khi chia cho 3 và chia cho 5?

+ Tìm số dư khi A chia cho 3
Ta có:

=>

Theo định lí Euler:


=>

Ta có:

=>

Ta có:

=>



chia 3 dư 2

Vậy A =

+ Tìm số dư khi A chia 5
Ta có:

=>

Ta có:

=>

Theo định lí Euler:
Ta có:

=>

=>

Theo định lí Euler:

=>

=>


Vậy A=

chia 5 dư 2

 MỘT SỐ BÀI TẬP TỰ LUYỆN
Bài 4: Tìm số dƣ của phép chia
Bài 5: Tìm số dƣ của B =
Bài 6: Tìm số dƣ của C =

chia cho 14?
chia cho 111?
khi chia cho 11 và 13?

Tài liệu tham khảo:
Nguyễn Duy Đông , Chuyên đề BDHSG THCS 2014- THCS Yên Lạc
9


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
/>

2. TÌM CHỮ SỐ TẬN CÙNG
Phƣơng pháp: Để tìm n chữ số tận cùng của một số nguyên A, ta tìm số dư của A khi
chia cho
 MỘT SỐ BÀI TẬP CÓ LỜI GIẢI
Bài 1: Tìm 1 chữ số tận cùng (chữ số hành đơn vị) của

?

Ta có:
=>
Mà:
Vậy

có chữ số hàng đơn vị là 9

Bài 2: Tìm 2 chữ số tận cùng của

?

Ta có:
=>
Ta có:

=>
Vậy 2 chữ số tận cùng của

là 43

Bài 3: Tìm 2 chữ số tận cùng của A =


?

Ta có: A =
Ta có:

10


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

=>A =
Vậy A =

có 2 chữ số tận cùng là 32

 MỘT SỐ BÀI TẬP TỰ LUYỆN
Bài 4: Tìm chữ số hàng chục của
Bài 5: Tìm 2 chữ số tận cùng của

?
?

Bài 6: Tìm 2 chữ số tận cùng của
Tài liệu tham khảo:
Nguyễn Duy Đông , Chuyên đề BDHSG THCS 2014- THCS Yên Lạc
/>3. CHỨNG MINH SỰ CHIA HẾT
 MỘT SỐ BÀI TẬP CÓ LỜI GIẢI
Bài 1: Chứng minh:
Theo định lí Fermat nhỏ ta có: Với p là số nguyên tố và a không chia hết cho p thì


Ta nhận thấy 2003 là số nguyên tố. Các số 1, 2, 3, …, 2002, 2004,…, 2008 nguyên tố cùng
nhau với 2003
Đặt S = {1, 2, …, 2002, 2004, …, 2008}
Với mọi
11


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Và 2003
Do đó:
(mod 2003)


(mod 2003) (có 2007
số)





(đpcm)

/>Bài 2: Chứng minh rằng :

chia hết cho 7

Ta có 2222 + 4 7 => 2222 ≡ - 4 (mod 7) =>
5555 - 4 7 => 5555 ≡ 4 (mod 7) =>





(mod 7)

(mod 7)

=>

Ta lại có :

≡ 1(mod 7) =>

(mod 7)
≡ 1 (mod 7)


≡ 0 (mod 7)

Nên
=>

chia hết cho 7 (đpcm)

Nguyễn Duy Đông , Chuyên đề BDHSG THCS 2014- THCS Yên Lạc
Bài 3 : Chứng minh rằng:

chia hết cho 11


12


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Theo định lí Fermat, ta có: Nếu p là số nguyên tố và a là số nguyên bất kì thì
Theo định lí Fermat, ta có:



Mà 1991
Suy ra:
Do đó:
Vậy
/>Bài 4: Chứng minh
Đặt A=
Ta chứng minh A
Ta có:

=>

Suy ra:
/> MỘT SỐ BÀI TẬP TỰ LUYỆN
Bài 5: Cho số nguyên dƣơng n >1. Chứng minh rằng

không chia hết cho .

(Đề nghị Olympic 30-4 toán 10 năm 2013 THPT Chuyên Lương Văn Chánh, Phú Yên)
Bài 6: Tìm tất cả các số tự nhiên n để


chia hết cho 5

Bài 7: (Russia MO 1997) Cho m, n là hai số nguyên dƣơng sao cho
cho

. Chứng minh rằng n chia hết cho m(

chia hết

.
13


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
/>4. PHÂN VÙNG BỘ NHỚ
Giả sử mỗi hồ sơ khách hàng trong công ty bạn được gán bằng một chuỗi số có độ dài
bằng 10 ký số. Để truy xuất dữ liệu hồ sơ khách hàng một cách nhanh chóng, ta
không muốn phải tìm kiếm từng hồ sơ một. Vì như vậy khi tìm kiếm sẽ rất mất thời
gian.Để tránh tình trạng này ta sẽ sử dụng một số nguyên nhỏ hơn để liên kết với mỗi
chuỗi mã này. Việc làm này giống như việc ta phân loại những đồ dùng có cùng tính
chất vào cùng một tủ. Vì thế việc tìm kiếm sẽ trở nên dễ dàng hơn. Vậy làm sao để
phân loại các chuỗi mã này ?
Bằng việc ứng dụng lý thuyết động dư ta thấy.
Với k là mỗi chuỗi mã của từng hồ sơ khách hàng. Xét hàm :
h(k) = k mod m ( m là số lượng vùng nhớ có sẵn)
Với cách làm này ta có thể phân các chuỗi mã vào các lớp thặng dư modulo m. Nói
cách khác các chuỗi mã số đã được phân vào các vùng bộ nhớ được đánh số từ 0 đến
m-1.Ta thấy đây là một toàn ánh, nghĩa là mọi chuỗi mã đều được phân vào một lớp
thặng dư nào đó. Vì thế, thay vì tìm kiếm từng chuỗi mà như ban đầu ta có thể tìm

kiếm thông qua mỗi vùng bộ nhớ mà không cần quan tâm đến các chuỗi ở các vùng
còn lại. Việc làm này sẽ tiết kiệm rất nhiều thời gian.
Ví dụ: Tìm vùng bộ nhớ của hồ sơ khách hàng có mã số 0987654321 và 0123456789.
Biết rằng hồ sơ được phân theo hàm h(k) = k mod 113.

Giải
Ta có :
h(0987654321) = 0987654321 mod 113 = 82
h(0123456789) = 0123456789 mod 113 = 108
Vậy hồ sơ khách hàng có mã số 0987654321 và 0123456789 lần được phân vào các
vùng bộ nhớ số 82 và 108.

14


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

5. KÝ SỐ KIỂM TRA ( CHECK DIGITS)
Các mã nhận diện có thể thấy ở khắp mọi nơi trong cuộc sống ngày nay. Từ các loại
sản phẩm, hàng hóa, thẻ ATM đến giấy phép lái xe, tiền tệ ... Một trong những ứng
dụng khá phổ biến của đồng dư chính là tạo ra các ký số kiểm tra cho các loại mã này.
Thông qua ký số này người ta có kiểm tra xem các mã được gán cho một loại sản
phẩm hàng hóa là đúng hay sai. Để từ đó có sự điều chỉnh, thay thế phù hợp. Một kỹ
thuật phổ biến cho việc dò ra lỗi sai trong các loại mã này là thêm vào một ký số bổ
sung vào phía cuối của chuỗi. Ký tự kiểm tra này được tính bằng một hàm cụ thể đối
với từng loại mã khác nhau. Sau đây là một số mã phổ biến .
Mã UPCs ( Universal Product Codes – mã sản phẩm chung)
Đây là mã được in trên các loại sản phẩm bán lẻ với dạng thông dụng nhất có 12
ký số.


Gọi các số trên mã UPCs là x1,x2,...,x12 . Ký số kiểm tra được xác định bởi đồng
đư thức:
3( x1 + x3 + x5 + x7 + x9 + x11 ) + x2 + x4 + x6 + x8 + x10 + x12

0 ( mod 10)

Ví dụ :
Cho rằng 11 ký số đầu tiên của một mã UPC là 79357343104. Tìm ký số

i.

kiểm tra.
ii.

Chuỗi 041331021641 có là một mã UPC hợp lệ không ?

Giải
i.

Thay 11 ký số 79357343104 vào đồng dư thức bên trên ta có:

15


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

Rút gọn lại, ta có :
Do đó


Vậy ký số kiểm tra là 2.
ii.

Để kiểm tra liệu 041331021641 có hợp lệ không, ta sẽ thay các ký số này
vào đồng dư thức ở trên để kiểm tra.

Rút gon ta có :

Vậy mã trên không hợp lệ.
Mã ISBNs (international standard book number – mã sách chuẩn quốc tế)
Đây là mã được in trên các loại sách được ấn định bởi các nhà xuất bản. Có hai
loại ISBN-10 và ISBN-13 tương ứng có 10 và 13 ký số. Với ký số kiểm tra đặt ở
cuối cùng có dạng một chữ số hoặc chữ cái X (thay cho chữ số 10). Ở đây chúng

ta sẽ tìm hiểu dựa trên mã ISBN-10.

Gọi các ký số trong mã ISBNs lần lượt là x1, x2,..., x10 . Ký số kiểm tra được tính
bằng đồng dư thức sau :



16


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Hoặc




Ví dụ :
Chín ký số đầu tiên của mã ISBN-10 của một cuốn sách là 007288008.

i.

Hãy tìm ký số kiểm tra của mã trên.
ii.

Mã 084930149X có phải là mã ISBN-10 hợp lệ không?

Giải
i.

Ký số kiểm tra được tính bởi công thức:

Ta có

x10

1.x1 + 2.x2 + 3.x3 + 4.x4 + 5.x5 + 6.x6 + 7.x7 + 8.x8 + 9.x9
1.0 + 2.0 + 3.7 + 4.2 + 5.8 + 6.8 + 7.0 + 8.0 + 9.8
189

Vậy ký số kiểm tra là 2.
ii.

Thay mã 084930149X vào công thức:



Ta có

1.x1 + 2.x2 + 3.x3 + 4.x4 + 5.x5 + 6.x6 + 7.x7 + 8.x8 + 9.x9 + 10.x10
1.0 + 2.8 + 3.4 + 4.9 + 5.3 + 6.0 + 7.1 + 8.4 + 9.9 + 10.10

Vậy mã 084930149X không là mã ISBN hợp lệ.

Một số mã khác
17


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG



Mã USPS ( Bưu chính hoa kỳ)

Ký số kiểm tra :




Mã ISSN ( Mã số tạp chí quốc tế)

Ký số kiểm tra:



Nếu x8


ta ký hiệu x8 là chữ X.

6. ỨNG DỤNG TRONG MÃ HÓA THÔNG TIN
Mã hóa là một bài toán đã được con người đặt ra cách đây hàng ngàn năm. Mật mã
đầu tiên được đưa ra bởi Julius Caesar cách đây hơn 4000 ngàn năm. Mã hóa ngày
nay có những bước phát triển vượt bậc. Đây là một chủ đề rộng lớn. Trong phần này
chúng tôi chỉ giới thiệu một số loại mật mã cũng như việc ứng dụng lý thuyết đồng dư
vào việc tạo ra chúng. Một số ứng dụng phổ biến của các loại mã này có thể được tìm
thấy trong các trò chơi giải mật thư, trò chơi trạm của các tổ chức đoàn thể, trong các
dịp cắm trại...

Mật mã thay thế ( Shift Cipher )
Mã này được xây dựng trên mô hình mà Caesar đã đưa ra. Ông đã tạo ra một bức
thư bí mật bằng cách thay thế mỗi chứ cái bằng chữ cái cách nó ba vị trí về phía
sau trong bảng chữ cái alphabet . Ví dụ A được thay bởi D, B được thay bởi E.
Đối với ba chữ cái cuối cùng X, Y, Z lần lượt được thay bởi A, B, C.

Một cách tổng quát
Biểu diễn mỗi chữ cái trong bản chữ cái alphabet là một phần tử của Z26: A = 0, B
= 1, ..., Y = 24, Z = 25.Ánh xạ f biến một số nguyên không âm p < 26 thành số
nguyên f(p) trong tập {0,1,2,..,25} với
f (p) = ( p + k ) mod 26. ( k được gọi là khóa)
Trong văn bản mã hóa, các chữ cái được biểu diễu bởi p sẽ được thay bằng chữ
cái được biểu diễn bởi ( p + k ) mod 26.
18


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

Với k = 3 ta có phương pháp mã hóa của Caesar.
Ví dụ : Cho cụm từ sau : “ NHOM TIEU LUAN ”. Hãy mã hóa cụm từ này với
khóa k = 3.
Giải
Biểu diễn cụm từ trên bởi những số nguyên . Ta có :
14 8 15 13 20 9 5 21 12 21 1 14.
Thay p bởi f ( p ) = ( p + 3 ) mod 26. Ta được :
17 11 18 16 23 12 8 24 15 24 4 17
Chuyển đổi thành chữ cái ta có văn bản mã hóa như sau:
QKRP WLHX OXDQ

Để chuyển từ văn bản mã hóa thành văn bản gốc ta sử dụng ánh xạ ngược của
hàm f, biến p trong Z26 thành f-1

. Nói cách khác để tìm

văn bản gốc mỗi chữ cái sẽ được thay bằng chữ cái cách nó k vị trí về phía trước.
Ví dụ: Giải mã cụm từ sau : “AVHU OVJ CBP” . Với khóa k = 7.

Giải

Biểu diễn cụm từ trên bởi những số nguyên . Ta có :
1 22 8 21 15 22 10 3 2 16.
Thay p bởi f ( p ) = ( p - 7 ) mod 26. Ta được :
20 15 1 14 8 15 3 22 21 9
Chuyển đổi thành chữ cái ta có văn bản gốc như sau:
TOAN HOC VUI.

Mật mã Affine ( Affine cipher)
Mật mã affine có thể xem như một thể tăng cường của mã thay thế ( Shift Cipher)

. Bằng cách sử dụng ánh xạ có dạng :
f(p) = (a.p + b) mod 26. Với a và 26 là hai số nguyên tố cùng nhau.
Biến 1 phần tử p trong Z26 thành 1 phần tử f(p) trong Z26.
Ví dụ :

19


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
Chữ O được biểu diễn là 15. Bằng cách sử dụng ánh xạ f(p) = (3.p + 5 ) mod 26.
Ta có
f(15) = (3.15 + 5 ) mod 26 = 24

.

Vậy ta sẽ thay O bằng X trong văn bản mã hóa.

Tiếp theo,ta sẽ thực hiện việc giải mã văn bản mã hóa bằng cách sau:
Đặt c = (a.p + b) mod 26 với p, c lần lượt là chữ cái trong văn bản gốc và văn bản
mã hóa. Để giải mã ta cần chỉ ra cách biểu diễn p theo c. Vì a và 26 là nguyên tố
cùng nhau . Nên tồn tại phần tử nghịch đảo của a modulo 26 ( phần tử nghịch đảo
theo định lý Bezout và được tìm theo thuật chia Euclide mở rộng). Nghĩa là có ̅
sao cho ̅
c
c–b
̅(c – b)
Vậy p

.Ta có

ap + b

(mod 26)

ap

(mod 26)

̅ p

(mod 26)

̅(c – b) (mod 26)

Điều này cho thấy p cũng thuộc tập Z26.

Và cuối cùng ta sẽ chứng minh sự tồn tại của phần tử nghịch đảo. Vì a và 26
nguyên tố cùng nhau . Theo định lý Bezout tồn tại hai số nguyên s,t sau cho:
a.s + 26.t = 1.
Suy ra, a.s + 26.t

1 (mod 26)

Tương đương a.s

1 (mod 26).

Vậy s là phần tử nghịch đảo của a .

20



SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG

C. TRÒ CHƠI ĐỒNG DƢ
Phương pháp mô – đu – lô là một phương pháp cực kì tuyệt vời để giải quyết một số bài toán
liên quan đến số nguyên. Bên cạnh ứng dụng kĩ thuật này vào giải toán, chúng ta còn có thể
nhận thấy đây cũng là một phương pháp rất thú vị thông qua một số trò chơi Toán học.
Chúng tôi xin đề cập đến một số bài toán được phát biểu dưới ngôn ngữ trò chơi hấp dẫn đã
từng có mặt trong các kì thi Toán của Nga, Canada,…
MỘT SỐ TRÒ CHƠI CÓ LỜI GIẢI:
Trò chơi 1: (Vô địch Moscow lần thứ 34, 1971, lớp 10, vòng 1) Một đống gồm 1 tỉ que
diêm. Hai người chơi trò chơi sau đây. Mỗi bước người chơi có thể lấy từ đống diêm
trong đó p là số nguyên tố, (thí dụ, người thứ nhất lấy 25 =
que, người thứ nhất lấy 1 =

que,

que, người thứ hai lấy 8 =

que, người thứ hai lấy 5 que, người thứ nhất lấy 49 =

que,..). Người nào lấy que diêm cuối cùng thì người đó thắng. Hỏi ai là người chiến thắng?
Giải:
-

Vì người chơi thứ nhất có quyền chọn số que diêm bằng một trong các số 1, 2, 3, 4 =
, 5 và 1 tỉ chia cho 6 dư 4 nên bước đầu tiên anh ta lấy 4 que diêm. Số que diêm còn
lại chia hết cho 6. Theo qui tắc chơi, người thứ hai buộc phải lấy số diêm là


que.

Số này không chia hết cho 6 do p là số nguyên tố, tức là số diêm còn lại cũng không
chia hết cho 6.
-

Do đó người thứ nhất lại lấy số que diêm bằng số dư (theo mod 6, một trong các số 1,
2, 3, 4 =

, 5) và để lại số diêm cho người thứ hai là bội số của 6, không phụ thuộc

vào chiến lược của người thứ hai.
-

Sau một số bước người thứ nhất để lại cho người thứ hai đúng 6 que diêm. Sau khi
người thứ hai buộc phải để lại số que diêm là một trong các số 1, 2, 3, 4 =

, 5, người

thứ nhất đi bước cuối cùng bằng cách lấy tất cả các que diêm và thắng.
-

Như vậy, nếu đi đúng chiến lược, thì người thứ nhất bao giờ cũng thắng. Người thứ
hai chỉ có thể “vớt vát” bằng cách thua lâu nhất nếu mỗi bước đi anh ta lấy đúng 1
que, bằng

đúng luật chơi.

Trò chơi 2: (Annual Maritine Mathematics Competition-Thi toán hàng năm miền duyên

hải Canada, 2001) A và B tiến hành chơi với 2001 hạt đậu. A đi trước, sau đó đến B và luân
phiên nhau. Một nước đi là một lần lấy khỏi đống hạt đậu đi 1, 2 hay 3 hạt. Người nào đi

21


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
nước cuối (lấy hết đậu trong đống) thì người ấy thắng. Vậy người nào có chiến thuật để luôn
thắng và chiến thuật đó ra sao?
Giải:
-

A đi trước thắng. Chiến thuật của anh ta như sau: Nước đi đầu tiên anh ta lấy 1 hạt
đậu, các nước sau anh ta sẽ lấy 4 − x hạt, trong đó x là số hạt đậu mà B vừa lấy ( x
bằng một trong các số 1, 2, 3).

-

Như vậy, sau bước đi đầu tiên, số hạt đậu còn lại là 2000 hạt. Tiếp theo, cứ mỗi lần B
đi xong anh ta lại lấy 4 − x nên kết quả bao giờ cũng được một số là bội của 4.

-

Vì số hạt đậu giảm dần nên cuối cùng chỉ còn bốn hạt. Đến lượt B phải lấy 1, 2 hoặc
3 hạt. A lấy nốt và anh ta thắng.

Lời bình:
-


Vì chiến lược của người thứ nhất không phụ thuộc vào cách đi của người thứ hai (lấy
1, 2 hoặc 3 hạt) nên người thứ nhất thắng sau đúng 501 bước đi.

Trò chơi 3: Hai đứa trẻ chơi trò chơi sau đây với hai đống kẹo. Đống thứ nhất có 12 chiếc
và đống thứ hai có 13 chiếc. Mỗi đứa trẻ lấy ra hoặc hai viên kẹo từ một đống (để ăn) hoặc
chuyển một viên từ đống thứ nhất sang đống thứ hai. Đứa trẻ nào không chuyển được nữa thì
sẽ thua. Hãy chỉ ra rằng đứa trẻ thứ hai không thể thua. Hỏi cậu ta có thắng không?
Giải:
-

Gọi S là hiệu số kẹo của đống thứ hai trừ đi đống thứ nhất. Lúc đầu
. Sau mỗi lần chuyển, hiệu S sẽ giảm đi 2 (khi lấy ra 2 viên kẹo ở đống thứ hai) hoặc
tăng lên 2 (lấy ra hai viên kẹo từ đống thứ nhất hoặc chuyển một viên kẹo từ đống thứ
nhất bỏ sang đống thứ hai).

-

Như vậy theo mod 4 sẽ luôn là 1, 3, 1, 3,..(bất biến!). Vì lúc đầu

nên mỗi lần

sau khi đứa trẻ thứ nhất lấy kẹo, số S theo mod 4 luôn là 3.
-

Vì ở những bước đi đầu đứa trẻ thứ hai luôn có thể lấy ra hai chiếc kẹo ở đống thứ
nhất nên đứa trẻ thứ hai có thể làm giảm số kẹo ở đống thứ nhất xuống còn 0 hoặc 1
chiếc. Nếu còn một chiếc thì bước tiếp theo (nếu đứa trẻ thứ nhất ăn hai chiếc kẹo ở
đống thứ hai) đứa trẻ thứ hai chuyển nốt chiếc kẹo ở đống thứ nhất sang đống thứ hai.
Vậy cuối cùng đứa trẻ thứ hai có thể làm cho số kẹo ở đống thứ nhất bằng 0.


22


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
-

Khi ấy chỉ còn có thể lấy số kẹo ở đống thứ hai và do S ≡ 3 (mod 4) khi đến lượt đứa
trẻ thứ hai nên cuối cùng chỉ còn ba chiếc kẹo ở đống thứ hai, cậu ta lấy 2 chiếc và trò
chơi phải kết thúc vì cậu bé thứ nhất không ăn (phải ăn 2) cũng không chuyển được
nữa và cậu bé thứ hai thắng.

Trò chơi 4: Hai người A và B chơi một trò chơi. Lúc đầu trên bàn có 100 viên kẹo. Hai người
thay phiên nhau bốc kẹo, mỗi lần bốc được k viên với k {1, 2,6}. Hỏi ai là người có chiến
thuật thắng?
Giải:
-

Ta sử dụng lập luận tính ngược từ cuối: Giả sử ban đầu có 1, 2, 6 viên kẹo. Khi ấy
người thứ nhất thắng ngay từ bước đi đầu tiên.

-

Nếu n = 3 thì người thứ hai thắng vì người thứ nhất chỉ có thể bốc 1 hoặc 2 viên, còn
lại 2 hoặc 1 viên đến lượt người thứ hai bốc nốt và thắng.

-

Với n = 4 người thứ nhất bốc 1 viên, còn 3 viên. Người thứ hai chỉ có thể bốc 1 hoặc
2 viên và người thứ nhất thắng.


-

Với n = 5 người thứ nhất bốc 2 viên còn 3 viên và sau đó thắng.

-

Với n = 7 người thứ hai thắng vì cả ba cách đi dẫn đến còn 6, 5 hoặc 1 viên kẹo.
+ Nếu còn 6 hoặc 1 viên kẹo thì người thứ hai thắng ngay.
+ Nếu còn 5 viên kẹo thì người thứ hai thắng sau 2 bước (lấy ra hai viên kẹo, còn ba
viên. Người thứ nhất buộc phải lấy một hoặc hai viên kẹo, người thứ hai lấy nốt và
thắng).

-

Suy luận tương tự, ta có bảng sau:

n

1

2

3

4

5

6


7

8

9

10 11 12 13 14 15 16 17

mod 7

1

2

3

4

5

6

0

1

2

3


4

5

6

0

1

2

3

Thắng

1

1

2

1

1

1

2


1

1

2

1

1

1

2

1

1

2

-

Từ đây ta phát hiện ra (dự đoán) qui luật sau: người thứ hai thắng nếu
hoặc

Trong các trường hợp còn lại ( 5 khả năng) thì người

thứ nhất thắng.
Chứng minh (quy nạp): Gọi số kẹo là n. Đặt n = 7k + r với r = 0,1,2,...,6 . Ta sẽ

chứng minh dự đoán trên bằng qui nạp theo k.
23


SỐ HỌC VÀ LOGIC
Tiểu luận: ĐỒNG DƯ VÀ CÁC ỨNG DỤNG
-

Với k = 0 thì khẳng định đúng theo phân tích trên. Giả sử qui nạp n = 7k + r với r = 1,
2, 4 , 5, 6 thì người thứ nhất thắng và r = 0 hoặc r = 3 thì người thứ hai thắng.

-

Xét n = 7(k+1) + r = 7k +7 + r.
+ Nếu r = 0 , tức là n = 7(k + 1) thì cả ba cách bốc đều dẫn đến người thứ nhất thua.
Thật vậy, người thứ nhất chỉ có thể bốc tương ứng 1, 2 hoặc 6 viên, còn lại 7k + 6 ,
7k + 5 hoặc 7k + 1 viên. Đến lượt người thứ hai (trở thành người đi đầu tiên). Người
thứ hai thắng theo qui nạp.
+ Nếu r = 1, 2, 6 thì người thứ nhất lấy ra r viên kẹo. Còn lại n = 7(k + 1)
Người thứ hai lấy ra 1, 2 hoặc 6 viên. Còn lại 7k + 6, 7k + 5 hoặc 7k + 1
viên, đến lượt người thứ nhất. Người thứ hai thua theo qui nạp.
+ Nếu r = 3 thì cả ba cách bốc đều dẫn đến người thứ nhất thua. Thật vậy, nếu người
thứ nhất bốc 1 viên thì còn lại 7 (k + 1 ) + 2 viên. Người thứ hai bốc 2 viên, còn lại 7
(k + 1 ), đẩy người thứ nhất vào thế thua như chứng minh trên. Nếu người thứ nhất
bốc 2 viên thì còn lại 7(k + 1 ) +1 viên. Người thứ hai bốc 1 viên, còn lại 7(k + 1), lại
đẩy người thứ nhất vào thế thua. Nếu người thứ nhất bốc 6 viên thì còn lại 7k + 4
viên. Người thứ hai bốc 1 viên, còn lại 7k + 3 viên
(

Người thứ hai thắng theo qui nạp.


 Vậy nếu r = 3 thì cả ba cách bốc đều dẫn đến người thứ nhất thua.
+ Nếu r = 4 (hoặc r = 5 ) thì cả ba cách bốc đều dẫn đến người thứ nhất thắng. Thật
vậy, người thứ nhất bốc 1 viên (tương ứng, 2 viên) thì đều còn lại viên 7(k + 1 ) + 3
viên (

, đẩy người thứ hai (đến lượt đi) vào thế thua như chứng minh trên

 Vậy nếu r = 4 hoặc r = 5 thì người thứ nhất thắng.
 Kết luận: Người thứ nhất thua khi n ≡ 0 (mod 7) hoặc n ≡ 3 (mod 7) . Các trường hợp
khác người thứ nhất thắng.
Lời bình:
-

Phương pháp môđulô cực kì lợi hại trong các bài toán với các biến nguyên, vì nó đưa
tập hợp vô hạn các số nguyên về hữu hạn các lớp đồng dư. Ngoài ra, ở đây ta còn sử
dụng phương pháp qui nạp và phương pháp tính ngược từ cuối.

24


×