1: \begin{abstract} We present an algorithm, based on work of the first named author, for computing the Veech group, $\mathrm{SL}(X,\omega)$, of a translation surface $(X, \omega)$. This presentation is informed by an implementation of the algorithm by the second named author.
2:
3: For each stratum of the space of translation surfaces, we introduce an infinite translation surface containing in an appropriate manner a copy of every translation surface of the stratum. We show that a matrix is in $\mathrm{SL}(X,\omega)$ if and only if an associated affine automorphism of the infinite surface sends each of a finite set, the ``marked" {\em Voronoi staples}, arising from orientation-paired segments appropriately perpendicular to Voronoi 1-cells, to another pair of orientation-paired ``marked" segments. (``Segments" are also known as ``saddle connections".)
4:
5:
6: We prove a result that is of independent interest. For each real $a\ge \sqrt{2}$ there is an explicit hyperbolic ball such that for any Fuchsian group trivially stabilizing $i$, the Dirichlet domain centered at $i$ of the group already agrees within the ball with the intersection of the hyperbolic half-planes determined by the group elements whose Frobenius norm is at most $a$. When $\mathrm{SL}(X,\omega)$ is a lattice we use this to give a condition guaranteeing that the full group $\mathrm{SL}(X,\omega)$ has been computed.
7:
8: \end{abstract}
9: