Let $f(x) = 2x^2 + x - 1, f^{0}(x) = x$, and $f^{n+1}(x) = f(f^{n}(x))$ for all real $x>0$ and $n \ge 0$ integer (that is, $f^{n}$ is $f$ iterated $n$ times).

a) Find the number of distinct real roots of the equation $f^{3}(x) = x$
b) Find, for each $n \ge 0$ integer, the number of distinct real solutions of the equation $f^{n}(x) = 0$
### Part (a): Find the number of distinct real roots of the equation \( f^3(x) = x \)

1. **Define the function and its iterations:**
   \[
   f(x) = 2x^2 + x - 1
   \]
   \[
   f^0(x) = x
   \]
   \[
   f^{n+1}(x) = f(f^n(x))
   \]

2. **Express \( f^3(x) - x \):**
   \[
   f^3(x) - x = f(f(f(x))) - x
   \]
   Given in the solution:
   \[
   f(f(f(x))) - x = (2x^2 - 1)(8x^3 + 8x^2 - 2x - 1)^2
   \]

3. **Define the polynomial \( g(x) \):**
   \[
   g(x) = 8x^3 + 8x^2 - 2x - 1
   \]
   This polynomial has three real roots, denoted as \( r_1 < r_2 < r_3 \).

4. **Determine the intervals for the roots:**
   Using the Intermediate Value Theorem, we find:
   \[
   -\frac{9}{8} < r_1 < r_2 < -\frac{135}{512} < r_3 < \frac{13}{32}
   \]

5. **Define the intervals:**
   \[
   \mathcal{I}_1 = \left[-\frac{9}{8}, r_1\right]
   \]
   \[
   \mathcal{I}_2 = \left[r_2, -\frac{1}{4}\right]
   \]
   \[
   \mathcal{I}_3 = \left[r_3, \frac{13}{32}\right]
   \]

6. **Analyze the function behavior on these intervals:**
   \[
   f(\mathcal{I}_k) \subseteq \mathcal{I}_{k-1} \quad \text{with} \quad \mathcal{I}_k = \mathcal{I}_{k+3}
   \]

7. **Determine the roots of \( f^3(x) = x \):**
   Since \( f^3(x) - x = 0 \) has roots \( r_1, r_2, r_3 \), and each root is distinct, the number of distinct real roots is:
   \[
   \boxed{3}
   \]

### Part (b): Find the number of distinct real solutions of the equation \( f^n(x) = 0 \) for each \( n \ge 0 \)

1. **Base cases:**
   \[
   f^0(x) = x \implies x = 0 \quad \text{(1 root)}
   \]
   \[
   f^1(x) = 2x^2 + x - 1 = 0 \quad \text{(2 roots)}
   \]

2. **Express \( f^2(x) = 0 \):**
   \[
   f^2(x) = f(f(x)) = 0
   \]
   \[
   f(x) = r_1 \quad \text{or} \quad f(x) = r_2 \quad \text{or} \quad f(x) = r_3
   \]
   Each of these equations has 2 solutions, leading to:
   \[
   2 \times 3 = 6 \quad \text{(4 roots)}
   \]

3. **Induction hypothesis:**
   Assume the number of distinct real solutions of \( f^n(x) = 0 \) is \( 2F_n \), where \( F_n \) is the Fibonacci sequence.

4. **Induction step:**
   \[
   f^{k+1}(x) = 0 \implies f(f^k(x)) = 0
   \]
   By the induction hypothesis, \( f^k(x) = 0 \) has \( 2F_k \) roots. Each root of \( f^k(x) = 0 \) leads to 2 solutions of \( f^{k+1}(x) = 0 \), giving:
   \[
   2 \times 2F_k = 2F_{k+1}
   \]

5. **Conclusion:**
   By induction, the number of distinct real solutions of \( f^n(x) = 0 \) is \( 2F_n \).