Let f:Q→Q be a function such that for any x,y∈Q, the number f(x+y)−f(x)−f(y) is an integer. We need to determine whether there exists a constant c such that f(x)−cx is an integer for every rational number x.
To address this, we construct a counter-example. We begin by recursively constructing a sequence k1,k2,… with 0≤kq<q for each q, as follows:
1. k1=0.
2. If q>1 and k1,…,kq−1 are already defined, choose kq such that 0≤kq<q and kq≡kd(modd) whenever a positive integer d divides q.
3. If q is a prime, set kq=1 if q=2 or q≡1(mod73), and kq=2 otherwise.
This construction is well-defined by induction. For the base case, k1=0 is trivial. For the induction step:
- If q is not a prime, the Chinese Remainder Theorem ensures the existence of such a kq if gcd(d1,d2)∣kd1−kd2 for any two distinct proper divisors d1,d2 of q. From the induction hypothesis, kd1≡kd(modd) and kd2≡kd(modd), implying kd1≡kd2(modd).
- If q is a prime, the congruences kq≡k1(mod1) and kq≡kq(modq) are trivially satisfied.
Next, we define f for all rationals as f(qp)={qpkq}, where {x} denotes the fractional part of x. This definition is well-defined because {qpkq}={qnpnkqn}={qpkqn}, and kqn≡kq(modq) implies pkqn≡pkq(modq).
Given two rationals x and y, choose a common denominator r and write x=rX and y=rY. Then f(x+y)={r(X+Y)kr} and f(x)+f(y)={rXkr}+{rYkr}, and the difference between these numbers is an integer.
Assume there is a constant c such that f(x)−cx is an integer for every rational x. Since f(1)=0, c∈Z. For every prime p, pkp−c must be an integer. Since there are infinitely many primes ≡1(mod73), c=1, and since there are infinitely many primes not congruent to 1(mod73), c=2, leading to a contradiction.
Therefore, there does not exist a constant c such that f(x)−cx is an integer for every rational number x. The answer is: \boxed{\text{No}}.