8. (India) The sequence of positive integers $\left\{f_{n}\right\}_{m=1}^{m}$ is defined as follows:
$f(1)=1$, and for $n \geqslant 2$,
$$
f(n)=\left\{\begin{array}{l}
f(n-1)-n, \text { when } f(n-1)>n ; \\
f(n-1)+n, \text { when } f(n-1) \leqslant n .
\end{array}\right.
$$

Let $S=\{n \in \mathbb{N} \mid f(n)=1993\}$.
(1) Prove that $S$ is an infinite set;
(2) Find the smallest positive integer in $S$;
(3) If the elements of $S$ are arranged in increasing order as $n_{1}<n_{2}$ $<n_{3}<\cdots$, then $\lim _{k \rightarrow \infty} \frac{n_{k+1}}{n_{k}}=3$.
(i) We point out that if $f(n)=1$, then $f(3n+3)=1$. From $f(n)=1$, we can sequentially obtain according to the definition:
$$
\begin{array}{l}
f(n+1)=n+2, f(n+2)=2n+4, \\
f(n+3)=n+1, f(n+4)=2n+5, \\
f(n+5)=n, \quad f(n+6)=2n+6 \\
f(n+7)=n-1, \cdots
\end{array}
$$

It is evident that the sequence $f(n+1), f(n+3), f(n+5), \cdots, f(3n+3)$ has values exactly as the sequence $n+2, n+1, n, \cdots, 1$, and the sequence $f(n+2), f(n+4), f(n+6), \cdots, f(3n+2)$ has values exactly as the sequence $2n+4, 2n+5, 2n+6, \cdots, 3n+4$. Therefore, $f(3n+3)=1$ and when $n \geq 1993$, from the above argument, among all natural numbers $n$ such that $b_i < n \leq b_{i+1}$, there is exactly one that makes $f(n)=1993$. Thus, $S$ is an infinite set.
(iv) Similarly to (iii), when $i \geq 8$, we have
$$
f(b_i + 2j - 1) = b_i + 3 - j = 1993
$$

Solving for $j$ gives $j = b_i - 1990$. Therefore, the value of $n_i$ that makes $f(n_i) = 1393$ is
$$
\begin{aligned}
a_1 & = b_i + 2j - 1 = 3 \cdot 3^{i-2} - 3981 \\
& = \frac{9}{2}(5 \cdot 3^{i-2} - 1) - 3982; \quad i = 8, 9, \cdots.
\end{aligned}
$$

Thus, we have
$$
\lim_{k \to \infty} \frac{n_{k+1}}{n_k} = \lim_{k \to \infty} \frac{\frac{9}{2}(5 \cdot 3^{k-1} - 1) - 3981}{\frac{9}{2}(5 \cdot 3^{k-2} - 1) - 3981} = 3.
$$