Thuật toán Euclid mở rộng

Ước chung lớn nhất: gcd(a, b) = {{gcd(a, b)}}

Và: egcd(a, b) = {{egcd(a, b)}};

Hay số nghịch đảo: {{b}} ^-1 mod {{a}} = {{egcd(a, b)}} mod {{a}}

Hay số nghịch đảo: {{a}} ^-1 mod {{b}} = {{egcd(a, b)}} mod {{b}}

Thuật toán nhân và bình phương

y = x ^ n mod m = {{x}} ^ {{n}} mod {{m}} = {{powmod(x, n, m)}} mod {{m}};

Tìm phần tử nguyên thủy

Số nguyên tố: p = {{p || "?"}}

p - 1 = {{p - 1}}

P không là số nguyên tố! Hãy nhập số khác, ví dụ: {{suggest}}

Tìm được phần tử sinh: alpha = {{alpha = primitiveNumber(p)}}

Tập ước số nguyên tố của U_prime(p - 1) = U_prime({{p - 1}}) = { {{uprime && uprime.join(',')}} }