Constructing a quadrilateral in hyperbolic plane

Suppose we have a set of angles, $\{\alpha_1, \alpha_2, \alpha_3, \alpha_4 \}$, and we want to construct some quadrilateral at Poincare Disc Model with angle $\alpha_i$ at vertex $i$.

The question is, how to do it?

I know how solve this problem for triangles. We can place one vertex, say $A$, at the origin (center of Poincare Disc), then two sides of the triangle will be Euclidian segments (not circle arcs). Construct two arbitrary rays originating from $A$ such that the angle between them is $\alpha_1$. Since in hyperbolic plane triangle's angles define triangle's edge lengths (from the law of cosines), we now can place points $B$ and $C$ on this rays knowing their distance from $A$. I'm wondering if this technique can be extended to quadrilaterals somehow?

UPDATE
I want to 'construct' it in a sence that I want to obtain (explicitly, through some formula, or implicitly, trough some algorithm) all vertices' Euclidian coordinates or anything that can be translated into them (for example, hyperbolic distance and angles).

• If you know how to construct triangles which do not have a vertex at the origin, you can construct two triangles that together will form the desired quadrilateral. Note that there are many different ways to do so. It makes sense, as quadrilaterals are not uniquely determined by their angles. – Amitai Yuval Jan 15 '15 at 10:58
• I've tried this approach, but stuck into the following problem: when you have quadrilateral $ABCD$, and $A$ at origin, and you know its angles, how can you find angles $BAD$ and $DAC$ on which the diagonal AD splits angle at $A$? I find this challenging because you cant use the fact that the summ of angles is equal to $2\pi$ like in Euclidian plane. – Month Jan 15 '15 at 11:03
• You can split angle $A$ as you like. As said above, there many different ways, and this is exactly the reason. It's the same on Euclidean plane, too. A quadrilateral in not uniquely determined by its angles. Not even up to rescaling. – Amitai Yuval Jan 15 '15 at 11:26
• Please, clarify what do you mean by "construct", for instance, one can prove existence (assuming angle sum less than $2\pi$) using the intermediate value theorem. Are you interested in a hyperbolic compas and ruler construction? – Moishe Kohan Jan 15 '15 at 12:06
• I want to 'construct' it in a sence that I want to obtain (explicitly, through some formula, or implicitly, trough some algorithm) all vertices' Euclidian coordinates or anything that can be translated into them (for example, hyperbolic distance and angles). – Month Jan 15 '15 at 12:14

Well, it seems that this problem has no nice analytic solution, so I've come up with a numerical one.

So, given a set of angles, $\{\alpha, \beta,\gamma,\delta\}$, we want to cosntruct an quadrilateral $ABCD$ with appropriate angles. Construct the diagonal $AD$ and denote the angles as in the picture: If we obtain $\xi$ and $\eta$, then we will be able to construct the ABCD since we know how to construct triangles (using a method I described in the original post).

Consider the following function: $$F(x,y,z) = \dfrac{\cos(x)\cos(y) - \cos(z)}{\sin(x)\sin(y)}$$ From the hyperbolic law of cosines, it tells hyperbolic cosine of side overlooking angle $z$ in triangle with angles $\{x,y,z\}$. Then for some pair ${(\xi, \eta)}$ to be valid it is neccesarry that $$\Phi(\xi, \eta) = F(\xi, \eta, \beta) - F(\alpha - \xi, \gamma -\eta,\delta) =0.$$ It can be straighforwardly checked that $$\dfrac{\partial\Phi(\xi, \eta)}{\partial \xi} < 0,\ \dfrac{\partial\Phi(\xi, \eta)}{\partial \eta} < 0\ \text{for all}\ (\xi, \eta)\in(0,\alpha)\times(0,\gamma).$$ Also, it is obvious that $$\lim\limits_{\eta\to 0}\Phi(\xi, \eta) = +\infty,\ \lim\limits_{\eta\to\gamma }\Phi(\xi, \eta) = -\infty\text{ for all }\xi\in(0,\alpha),$$ and $$\lim\limits_{\xi\to 0}\Phi(\xi, \eta) = +\infty,\ \lim\limits_{\xi\to\alpha }\Phi(\xi, \eta) = -\infty\text{ for all }\eta\in(0,\gamma),$$ Hence, for all $\xi\in(0,\alpha)$ the equation $\Phi(\xi, \eta)=0$ has a unique solution $\eta^*$, and for all $\eta\in(0,\gamma)$ it has a unique solution $\xi^*$. Moreover, from monotonyty, these equations can be easily numerically solved using, say, bisection method.

So, the algorithm can now be formulated as follows.

1. Select a grid of points $\{\xi_0, \xi_1,\ldots, \xi_N\}$ in segment $[\varepsilon, \alpha - \varepsilon]$.
2. For a given $\xi_i$, find the root $\eta_i$ of equation $\Phi(\xi_i, \eta) = 0$. Repeat untill $\eta_i\in(0,\gamma)$.
3. Construct a triangle $ABC$ with angles $(\xi, \eta,\beta)$.
4. Construct a triangle $AD'F$ with angles $(\alpha-\xi, \gamma-\eta, \delta)$ such thath $AF$ is colinear with $AC$.
5. Rotate triangle $ADF$ around $A$ by $\xi$ to triangle $ADF'$. Than points $A,B,C,D$ will form the desired quadrilateral.

This method can obviously extended to an arbitrary polygon.