Why is that true that if $f: \mathbb{R} \to \mathbb{R}$ is a ring homomorphism and $p$ is an integer-coefficient polynomial, then: $$f(p(r))=p(f(r)) \ \forall_{r \in \mathbb{R}}$$
I know that if $f$ is a ring homomorphism then:
- $f(a+b) = f(a) + f(b)$
- $f(ab) = f(a) \cdot f(b)$
- $f(1) = 1$
And that polynomials generate a ring.
But how is that useful?
We have $f(1)=f(1+0)=f(1)+f(0)$ so $f(0)=0.$
By induction on $n\in\Bbb N$ we have $f(\sum_{i=1}^n r_i)=\sum_{i=1}^n f(r_i)$ and $f(\prod_{i=1}^n s_i)=\prod_{i=1}^n f(s_i).$
In particular when $r_i=1$ for each $i$ then $f(n)=f(\sum_{i=0}^n 1)= f(\sum_{i=1}^n r_i)=$ $=\sum_{i=1}^n f(r_i)=$ $\sum_{i=1}^n f(1)=$ $\sum_{i=1}^n 1=n.$
And so if $n\in \Bbb N$ then $0=f(0)=f(n+(-n))=f(n)+f(-n)=n+f(-n),$ so $f(-n)=-n.$
So $f(v)=v$ for every integer $v.$
And if $s_i=x$ for each $i$ then $f(x^n)=f(\prod_{i=1}^nx)=f(\prod_{i=1}^ns_i)=$ $=\prod_{i=1}^nf(s_i)=\prod_{i=1}^nf(x)=f(x)^n.$
Let $p(x)=v_0+\sum_{i=1}^nv_ix^i$ where each $v_i\in\Bbb Z$. For $i>0$ let each $v_ix^i=r_i$ and we have $$f(p(x))=f(v_0)+f(\sum_{i=1}^n r_i)=f(v_0)+\sum_{i=1}^n f(r_i)=$$ $$=f(v_0)+\sum_{i=1}^nf(v_ix^i)=$$ $$=f(v_0)+\sum_{i=1}^nf(v_i)f(x^i)=$$ $$=v_0+\sum_{i=1}^nv_if(x)^i=p(f(x)).$$