Let $A$ be an indefinite quaternion algebra (e.g. $(2,5)_\mathbb{Q}$), let $M$ be a maximal order in $A$ and let $\Gamma$ be the Fuchsian group derived from $M$. We will denote the group of units of $M$ with reduced norm $1$ by $\overline{U}(M)$.
These objects can all be easily constructed in magma.
A<i,j,k> := QuaternionAlgebra(RationalField(), 2,5);
M := MaximalOrder(A);
Gamma := FuchsianGroup(M);
g,map := Group(Gamma);
The generators and relaters of $\Gamma$ are stored in g and a map from $\Gamma\rightarrow\overline{U}(M)$ is stored in map. My question is, if I have a quaternion $q\in M\subset A$ which I know has reduced norm equal to $1$, how can I find the image of it in $\Gamma$ (specifically as a word in the generating set)?
Notes:
- I have tried using the preimage command but it does not appear to work with
map. - I am using the Magma online calculator, available at http://magma.maths.usyd.edu.au/calc/
mapis a set theoretic section to the surjection $\overline{U}(M)\rightarrow\Gamma$.
Magma will (I believe) automatically generate a method to find inverse images under a map when the domain and codomain are both finite. Otherwise it is possible when defining the map to give an explicit rule to compute the inverse image.
Here, your map is generated by an intrinsic that is defined in one of the Magma packages and does not come with a defined inverse rule. To define your own inverse, you will need to reverse engineer the map that you have. This is easier if you have a full version of Magma on your system, so you can look at the package files that provide the functionality of these specific intrinsics you are using.
(BTW I would try to avoid naming your map
mapsince this is a keyword in Magma.)