Fixed-Point Iteration method unable to converge to any of a function's infinte roots An equation is given to me which has to be solved by direct iteration method:
    $$\sin(x) = {x+1 \over x-1}$$ or $$f(x)=\sin(x)-{x+1 \over x-1} = 0$$
I follow the following procedure with reasons given along:
Rearrange the equation as:
    $$x=\sin^{-1}{{x+1\over x-1}}=g(x)$$
Then, we get
    $$g'(x) = {1 \over (1-x)\sqrt{-x}}$$
$$\implies \forall x < -1, \left|g'(x)\right| < 1$$
Now,
$\forall x < -1, 0 < {x+1 \over x-1} < 1$. But, $\sin{x}$ oscillates between 1 and -1 infinitely over the whole domain $\mathbb{R}$ and hence also its subset, the interval $(-\infty, -1)$. Thus, $\sin{x}$ intersects infinitely with ${x+1 \over x-1}$, at least once each time in its interval of size $\pi$. These intersection points are exactly the roots of $f(x)$ over the interval $\left(-\infty, -1\right)$.
Thus, if we choose arbitrary points $a,b < -1 : a - b \ge \pi$, then $\sin{x}$ goes from -1 to 1 at least once, and since ${x+1 \over x-1}$ is always between 0 and 1, the period contains a root of $f(x)$.
Thus, to summarize, we have got a function $g(x)$ which is defined over the negative number line, and is bounded and continuous there. On the negative number line, we also have an interval $(a, b)$ where we have a root of given equation. Also, derivative of $g(x)$ is numerically less than one in the given interval.
So, ideally, I should be able to take any value of $x = x_0$ in $(a, b)$ and should be able to get increasing better iterates.
But the fact that my function $g(x)$ is $\sin^{-1}{{x + 1 \over x - 1}}$ means that any negative value of $x < -1 $yields me a positive value of iterate in the next step, which in turn leads to domain error.
Where am I wrong? Or more precisely, are there any more conditions that are required for the fixed-point iterative method that are not known to me. One step which seems dubious to me is the very first step where I take $\sin^{-1}$ of original equation on the both sides, to get the $g(x)$, but I am not able to pinpoint how it can derail my method.
Update: Renamed the method from direct iterative method to fixed-point iteration method. Also, as is noted in the comments below, problem seems to be in my choice of $g(x)$ only. I am interested in what it really is. How can I avoid the same in future too?
 A: The problem is in the choice of $g(x)$ as initially doubted in the question itself. The Banach fixed-point theorem, on which this method is based, says:

Let $\left(X, d\right)$ be a non-empty complete metric space with a contraction mapping $T : X \to X$. Then $T$ admits a unique fixed-point $x^*$ in $X$ (i.e. $T(x^*) = x^*$). Furthermore, $x^*$ can be found as follows: start with an arbitrary element $x_0$ in $X$ and define a sequence $\{x_n\}$ by $x_n = T(x_{n−1})$, then $x_n \to x^*$.

Here, the equation chosen is
    $$x = g(x) = sin^{-1}{{x+1 \over x-1}}$$
thus,
    $$g : (-\infty, 0) \to (0, 1)$$
Therefore, there is no sub-interval $X$ in $g$'s domain where $g : X \to X$ is true. Since this condition is required for the definition of contraction mapping, this $g(x)$ can't be a contraction mapping over real number line, and since Banach fixed-point theorem talks about contraction mappings, we can't use this $g(x)$ for fixed-point iteration method.
A: I am not convinced that in your case the following is true:
$$\forall x < -1, \left|g'(x)\right| < 1$$
I tried to run the numbers quickly and here is what I got, it is clear that there is no conversion.

