Solution: First, setting a4=a5=⋯=an=a1 in the original equation, we get
i=1∑3(ai−ai+1)f(ai+ai+1)=0,(1)
where a4=a1.
Next we prove: if x,y are distinct positive real numbers, and
m=x−yf(x)−f(y),l=x−yxf(y)−yf(x),
then for any z satisfying ∣x−y∣<z<x+y, we have
f(z)=mz+l(2)
Indeed, from ∣x−y∣<z<x+y we know: there exist positive real numbers a1,a2,a3 satisfying a1+a2=x,a2+a3=y,a3+a1=z. Substituting into equation (1) we obtain
0=i=1∑3(ai−ai+1)f(ai+ai+1)=(a1−a2)(mx+l)+(a2−a3)(my+l)+(a3−a1)f(z)=(a1−a2)(m(a1+a2)+l)+(a2−a3)(m(a2+a3)+l)+(a3−a1)f(z)=m(a12−a32)+l(a1−a3)+(a3−a1)f(z)=(a1−a3)(m(a1+a3)+l−f(z))
Also, since x=y, a1−a3=0, therefore f(z)=m(a1+a3)+l=mz+l, as claimed.
From equation (2) we immediately obtain: if x,y are distinct positive real numbers, then when t>∣x−y∣,
(t,f(t)) lies on the line through the two points (x,f(x)),(y,f(y)). (3)
If t≤∣x−y∣, without loss of generality assume x>y. Then by (3), (x,f(x)) lies on the line through the two points (y,f(y)),(t,f(t)), so (t,f(t)) still lies on the line through the two points (x,f(x)),(y,f(y)).
From this we obtain that f is a linear function, that is, there exist a,b such that f(t)=at+b∀t∈R+. But f is a function from positive reals to positive reals, so a,b>0.
Substituting back into the original equation, it is easy to verify that f(t)=at+b,(a,b>0) is a solution of the original equation, therefore f(t)=at+b,(a,b>0) are all the solutions of the equation.