Given a number x and a number y how can I count the number of relatively prime numbers with x that are less then y?
More Formally;
Is there any way to count how many z exists that:(1<=z<=y and gcd(x,z)==1) (x<=4005,y<=10^9).
Sorry for my bad England.
take all distinct prime numbers that divide x, and apply inclusion-exclusion principle, it works in O(2^number_of_distinct_prime_divisors_of_x), i wont explain inclusion-exclusion here because it is already explained on the internet so ill give u a link to it https://cp-algorithms.com/combinatorics/inclusion-exclusion.html, and u also have your question fully explained on that page i gave u
Thanks a lot but for my question I need a solution like O(1) so I wonder if there is a math formula for this problem.
This is a generalization of Euler's totient function. If you can solve this in $$$O(1)$$$ RSA encryption would be broken.
Since $$$\gcd(x,z)=\gcd(x+z,z)$$$, we can just calculate $$$c[x][y]=\sum\limits_{i=1}^{y}[\gcd(i,x)=1](0\le y<x\le 4005)$$$, the answer is $$$\lfloor\frac{y}{x}\rfloor c[x][x-1]+c[x][y\bmod x]$$$(or something similar).
Thank you :)
What is Sorry for my bad England :)