pow(self.nom, exponent, self.prime)で計算できる
prime = 7 for i in range(1, prime): a = pow(i, prime-1, 6) print(a)
for prime in (7, 11, 17 , 31): for i in range(1, prime): a = pow(i, prime-1, 6) print(a)
for prime in (7, 11, 17 , 31): print([pow(i, prime-1, prime) for i in range(1, prime)])
$ python3 test.py
[1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
3/24 のF31は
prime = 31 a = 3 * pow(24, prime-2) print(a % prime) print(pow(17, -3, prime)) print(pow(4, -4, prime)*11 % prime)