Let $F(A)$ be a class of real-analytic function on an interval $A \subset \mathbb{R}$ minus the zero function.
We have the following theorem for $F(A)$.
If $f \in F(A)$ then $f$ has at most finitely many zeros $A$.
Proof Suppose $f\in F(A)$ has infinitely many zeros on a bounded interval. Then by Bolzano-Weierstrass the set of zeros has a convergent subsequence in $A$. Therefore, by identity theorem, $f$ must be zero on all of $A$. However, this contradicts our assumption that $f$ is non-zero. Q.E.D.
My question: Are there ways of sharpening the bound on the number of zeros?
Let $N(f)$ be the number of zeros of $f$. Clear, there is no uniform bound on $N(f)$ for all $f\in F$. However, there a subset of $F$ for which we do have good upper bounds like a set of polynomials of degree $n$ in which case $N\le n$.
My second question (or refined first question) is: For a give $f$ which is analytic on $A$, but not a polynomial, are there ways of finding an upper bound on the number zeros of $f$?