Skip to main content

Number Theory 101 - Lý thuyết số cơ bản

Tính chia hết và phép toán Modulo

Định nghĩa và tính chất cơ bản

  • Cho các số nguyên aabb với a0a \ne 0. Ta nói bb chia hết cho aa, nếu tồn tại một số nguyên cc sao cho b=acb = ac.
  • Trong trường hợp này, ta cũng nói:
    • aa là ước (factor) của bb;
    • bb là bội (multiple) của aa và ký hiệu aba \mid b.
Định lý
  1. Nếu aba \mid baca \mid c thì a(b+c)a \mid (b + c);
  2. Nếu aba \mid b thì abca \mid bc;
  3. Nếu aba \mid bbcb \mid c thì aca \mid c.
Định lý

Với aZa \in \mathbb{Z}dZ+d \in \mathbb{Z}^+, tồn tại duy nhất các số nguyên qqrr, với 0r<d0 \le r < d, thỏa mãn a=dq+ra = dq + r.

  • Ta cũng viết:
    • q=adivdq = a \operatorname{div} d;
    • r=amoddr = a \bmod d;
    • *Chú ý rằng với dd cố định, adivda \operatorname{div} damodda \bmod d là các hàm từ Z\mathbb{Z} đến Z\mathbb{Z}.
  • Ta có:
    • q=a/dq = \lfloor a / d \rfloor;
    • r=adq=ada/dr = a − dq = a − d \lfloor a / d \rfloor.

Đồng dư theo modulo mm

Định lý
  • Với a,bZa, b \in ZmZ+m \in \mathbb{Z}^+:

    • aa đồng dư với bb (theo) modulo mm, ký hiệu ab(modm)a \equiv b \pmod m, khi và chỉ khi m(ab)m \mid (a − b);
    • ab(modm)a \equiv b \pmod m khi và chỉ khi amodm=bmodma \bmod m = b \bmod m;
    • ab(modm)a \equiv b \pmod m khi và chỉ khi tồn tại kZk \in \mathbb{Z} sao cho a=b+kma = b + km.
  • Với a,b,c,dZa, b, c, d \in \mathbb{Z}mZ+m \in \mathbb{Z}^+, nếu ab(modm)a \equiv b \pmod mcd(modm)c \equiv d \pmod m:

    • a+cb+d(modm)a + c \equiv b + d \pmod m;
    • acbd(modm)ac \equiv bd \pmod m.
Hệ quả
  1. (a+b)modm=((amodm)+(bmodm))modm(a + b) \bmod m = ((a \bmod m) + (b \bmod m)) \bmod m;
  2. abmodm=((amodm)(bmodm))modmab \bmod m = ((a \bmod m)(b \bmod m)) \bmod m.

Biểu diễn số nguyên

Biểu diễn theo hệ bb-phân

  • Với mọi n,bZ+n, b \in \mathbb{Z}^+ (b>1)(b > 1), tồn tại duy nhất một dãy akak1a1a0a_ka_{k − 1} \dots a_1a_0 gồm các chữ số ai<ba_i < b (0ik)(0 \le i \le k) thỏa mãn:
n=akbk+ak1bk1+ak2bk2++a1b1+a0=i=0kaibin = a_kb^k + a_{k - 1}b^{k - 1} + a_{k - 2}b^{k - 2} + \cdots + a_1b^1 + a_0 = \displaystyle \sum_{i = 0}^k a_ib^i
  • Ta cũng ký hiệu n=(akak1a1a0)bn = (a_ka_{k − 1} \dots a_1a_0)_b.
  • Một số hệ cơ số phổ biến
    • Hệ cơ số 1010 (hệ thập phân - decimal): 0,1,2,3,4,5,6,7,8,90, 1, 2, 3, 4, 5, 6, 7, 8, 9;
    • Hệ cơ số 22 (nhị phân - binary): 0,10, 1;
    • Hệ cơ số 88 (hệ bát phân - octal): 0,1,2,3,4,5,6,70, 1, 2, 3, 4, 5, 6, 7;
    • Hệ cơ số 16 (hệ thập lục phân - hexadecimal): 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
Chuyển số từ hệ bb-phân sang hệ thập phân (b>1)(b > 1)
(akak1a1a0)b=i=0kaibi(a_ka_{k − 1} \dots a_1a_0)_b = \sum_{i = 0}^k a_ib^i
Chuyển số từ hệ thập phân sang hệ bb-phân (b>1)(b > 1)
  1. Tìm giá trị của chữ số ngoài cùng bên phải bằng cách tính nmodbn \bmod b;
  2. Gán n:=ndivbn := n \operatorname{div} b;
  3. Lặp lại các bước (1)(2) cho đến khi n=0n = 0.
Chuyển đổi giữa hệ nhị phân và bát/thập lục phân
  • Mỗi chữ số trong hệ bát phân tương ứng với một khối 33 bit trong biểu diễn nhị phân;
  • Mỗi chữ số trong hệ thập lục phân tương ứng với một khối 44 bit trong biểu diễn nhị phân.