# Number of distinct real roots of $P(P(\dots(P(x))\dots))$, consisting of $n$ copies of polynomial $P$ of degree $d$

For a natural number $$n$$, what are all the possible number of distinct real roots of $$P(P(\dots(P(x))\dots))$$, where $$P$$ is a polynomial of degree $$d$$ and there are $$n$$ copies of $$P$$'s?

The iterated polynomial has degree $$d^n$$, so the number of roots cannot be more than that, but can it be any number less than or equal to it? (At least if $$d$$ is odd, there should always be at least one real root.)

• If $P(x)$ has no real roots then neither does $P\circ P(x)$. After all, if $P\circ P(x_0)=0$ then $P(P(x_0))=0$.
– lulu
Oct 26, 2020 at 13:31

You're right with the odd part. If $$d$$ is odd, then $$d^n$$ is always odd, so there is always at least one real root.
I can provide a simple example that the number of roots can be less than $$n$$ when $$d \equiv 0\pmod{2}.$$ If $$P(x)=(x+1)^2 \text{ and } n=2,$$
then we get $$((x+1)^2+1)^2=P(P(x)$$. The LHS factors as $$x^4+4x^3+8x^2+8x+4$$ which has no real roots.
If you have a function that never crosses the x-axis, then raising it to the $$n^\text{th}$$ power when $$n$$ is even is going to keep it above the x-axis. Then, any shift up will keep it, again, above the x-axis.