Is there algebraic functions with infinitely many roots? For example, a rational function is zero if and only if its numerator (which is a polynomial) is zero. Thus, a rational function which is not identically zero have only a finite number of roots.
Is the same conclusion valid for smooth algebraic functions? If so, what would a proof or a source?
Edit (in response to the comments). I'm particularly interested in a real-valued function of a real variable given explicitly by a formula obtained from the elementary algebraic operations (addition, subtraction, multiplication, division, roots).

There are even non-zero polynomials $f(x)$ having infinitely many roots. This can happen when we do not consider polynmials over fields, but, say, over the real algebra of quaternions $\mathbb{H}$. The polynomial 
$$
f(x) = x^2+1 
$$
has infinitely many roots in $\mathbb{H}[x]$.
