Files
libucore/src/phi64.c
T
Nils O. Selåsdal 9090de0663 tabs->spaces
2013-11-22 20:07:06 +01:00

21 lines
404 B
C

#include "ucore/math.h"
/*
Euler's Totient Function is denoted by the Greek letter phi, and is defined as follows:
phi(N) = how many numbers between 1 and N - 1 which are relatively prime to N.
*/
uint64_t
uc_phi_64(uint64_t N)
{
uint64_t phi = 1;
uint64_t i;
for (i = 2 ; i < N ; ++i){
if (uc_gcd_64(i, N) == 1){
++phi;
}
}
return phi;
}