**Rephrasing** (one year later) (original question is below)

_{
Apparently the original question wasn't clear, or nobody knows an answer (or both). So I will try to rephrase it.
}

Look at your favorite hyperbolic grid. This question asks for a labeling system for the points.

Of course we could draw the grid on the Poincare disk, and use real numbers (the (x,y) coordinates of each point), but in practice that would raise all sorts of precision issues that could surely be avoided if one had a proper symbolic coordinate system. You shouldn't need real numbers if you're staying on grid points!

Just like (2,3)+(0,1) is trivial to do by hand (or in your head) for the square grid, we'd like some form of symbolic coordinates (*i.e.* consisting of finite sequences of symbols) for a hyperbolic grid, in which simple operations on small grid vectors are similarly easy.

If you take some sequence of left and right turns in a hyperbolic grid city, what should you keep track of in your head so you can take the optimal route back to your starting point? In a Euclidean square grid, it is {(int)X, (int)Y, (enum)direction you are facing}, and we all know how to use this. Is there any hyperbolic grid where this question has a nice answer?

**Original Question**

If we consider the Euclidean plane, then a square grid works well with using two integers (the coordinates) as a representation for vectors that lie on the grid.

Does anybody know of a similarly nice representation for working in the hyperbolic plane?

Desirable features of any such system:

$-$
It should be easy to add two vectors.

$-$
It should be easy to see if two vectors are the same.

$-$
It should be easy to see if two vectors are close.

$-$
It should be easy to rotate a vector by an angle that is a symmetry of the grid.

$-$
Every point in the plane should be near some vector. (The grid shouldn't have large empty regions.)

Note that "addition" using continuous coordinates would most naturally be defined in terms of parallel transport, and it is neither commutative nor associative. On a grid, however, the issue of orientation needs to be addressed differently, since parallel transport along arbitrary grid vectors will introduce rotations that are not a symmetry of the grid, so to remain on the grid, addition will need to be defined using something other than parallel transport.

Since hyperbolic grids have an exponential number of points (as a function of distance from the origin), our symbolic coordinates will need to have a length proportional to the length of the vector.

Don Hatch has a web page which gives some possible grids.

("**Easy**" means an efficient algorithm that is doable by hand, like how the algorithms for addition and subtraction using the standard digit-sequence representation of integers can be used for the Euclidean square grid.
Using hyperbolic functions of real numbers, always keeping track of enough digits to identify the nearest grid point, does not count as easy!)

_{Addendum:
Many readers seem to be disturbed by a little voice saying "But vectors don't make sense in the hyperbolic plane!": What that voice is really saying is that the hyperbolic plane doesn't give you all the nice properties you are used to in Euclidean space or in vector spaces. So if you define vectors as objects having specific properties you are used to (such as having a direction that is unaffected by parallel transport), then that definition may not correspond to anything in the hyperbolic world. You could use the term isometry, but that is typically a fixed mapping from the space to itself, and in the hyperbolic plane the isometry corresponding to a vector would depend on the starting point. (However, isometries will be central to any solution, I assume.) And a geodesic is a fixed path within the space, no different from a hyperbolic line or segment. The paper "What is a vector in hyperbolic geometry?" offers one solution. Gyrovectors offer another. I deliberately leave them undefined in this question, as I am looking for any workable system.
}