Let $\Gamma = \pi\_1(S)$ denote the fundamental group of a compact surface $S$ of genus $g>1$.


Given a representation $\rho : \Gamma \to \mathrm{PSL}(2,\mathbb{C})$, specified by matrix representatives for the images of a fixed generating set, is there an algorithm to answer either of the following questions?


1) Is the image $\rho(\Gamma)$ a quasi-Fuchsian group?


2) Is the image $\rho(\Gamma)$ discrete?


There are a number of related situations where I am aware of algorithms of this type, but all are limited to special classes of two-generator subgroups of $\mathrm{PSL}(2,\mathbb{C})$. For example:


* For two-generator subgroups of $\mathrm{PSL}(2,\mathbb{R})$ there is the Gilman-Maskit algorithm which tests for discreteness. There are some related sufficient conditions for discreteness in the two-generator case in $\mathrm{PSL}(2,\mathbb{C})$.
* For punctured torus groups (i.e. representations of $\mathbb{F}\_2$ where $abab^{-1}$ maps to a parabolic element) in $\mathrm{PSL}(2,\mathbb{C})$ there is a method of Komori, Sugawa, Wada, and Yamashita based on simultaneously testing Jorgensen's inequality (attempting to find a certificate that the group is not discrete) while also trying to find a Ford fundamental domain (of a type that would give a certificate that the group is quasi-Fuchsian).
* Also in the punctured torus case, Bowditch has a conjectural characterization of quasi-Fuchsian groups in terms of a certain subset of the infinite trivalent tree of "generating triples", which is easy to test algorithmically. As in the previous case this can be combined with Jorgensen's inequality to get a heuristic test for discreteness.


Based on these cases I would especially like to know about methods for discreteness or quasi-Fuchsian testing that apply in the compact surface case without assuming that the representation maps into $\mathrm{PSL}(2,\mathbb{R})$.



Algorithm to test for discrete or quasi-Fuchsian subgroups of PSL(2,C)
To make the question precise, you should probably specify what model of computation you want to answer the question in? For example, if the matrix entries are given by algebraic numbers, then I think you can just work with a Turing machine. I suppose you could also work with an oracle that gives you as many decimal places of the numbers that you like. However, I think this interpretation could have issues, because how do you tell if two numbers are equal? Maybe the natural interpretation then is to use [real computation](https://en.wikipedia.org/wiki/Real_computation). In any case, I think the problem is open with either interpretation.


I think for subgroups of $PSL\_2(\mathbb{R})$, there is an algorithm in either model extending the Gilman-Maskit algorithm. The point is that you either find a violation of Jorgensen's inequality (in fact, one can just find an irrational rotation in the subgroup generated by the matrices if the subgroup is not solvable), or you compute a finite-sided fundamental domain for the group (see e.g. [Manning's paper](https://arxiv.org/abs/math/0102154)).


The issue in the general case to implementing this algorithm is what do you do if the fundamental domain of the group has infinitely many sides, i.e. the group is degenerate?
In the case of real computation, this seems to kill this approach to an algorithm.


If the matrices are algebraic, there's a chance this algorithm could work. The point is that I don't know of any degenerate groups with algebraic coefficients which are not fibers of a fibration. Let's suppose that any degenerate group with algebraic coefficients is a fiber of a fibration ([I made a stab at trying to prove this](https://arxiv.org/abs/math/0406407), but I never published it since Walter Neumann pointed out to me that a generic degenerate group is transcendental, since there are uncountably many ending laminations, but countably many algebraic groups). Then either the group is geometrically finite, and one should be able to search for a finite-sided fundamental domain, or else it is the fiber of a fibration, and one should be able to compute a finite-volume hyperbolic 3-orbifold fibering over the circle, such that the fiber group is generated by the matrices.


In any case, I think there is a procedure to detect if a group is indiscrete, but no known procedure to detect if a group is discrete.


