Please stand by while the maze is being constructed…

Move with arrow keys and insert/delete. (Also F1 to recenter.) Or click in the direction in which you want to move.

Projection:

Visited: ?

Steps to starting point: ?; to green point: ? ←but using this info is considered cheating!

Show/hide mathematical explanations

✱ This is a *toy* version
of the full game (to illustrate how
quotienting works).

This is a maze in
the hyperbolic
plane, displayed using
the Poincaré
disk
or Beltrami-Klein
model (see this
video for explanations and illustrations about projections of the
hyperbolic plane). The fundamental pattern used to construct the maze
is the
uniform tiling of the hyperbolic plane by regular quadrilaterals
(“squares”?) with angles of 2`π`/5=72° at each vertex (less
than the 90° of a Euclidean square because the hyperbolic plane is
negatively curved); a circle has been drawn at the center of every
square.

Use the up and down arrows to move up and down, left and right to rotate left and right, and insert and delete to move left and right without turning. (Note that since the hyperbolic plane has curvature, even if one moves without turning, one can return to one's starting point with a different orientation. So it would be meaningless to have a “compass” in the hyperbolic plane.)

Since the hyperbolic plane is infinite, the maze has been made
“periodic”, in much the same way that the Euclidean plane can be made
“periodic”, that is, transformed into a flat torus by quotienting by
a lattice
of periods, typically a square lattice in computer games, so that one
“loops around” if one goes to far. Here something analogous has been
done, by quotienting out by
a discrete
subgroup `Γ`, acting without fixed points, of the
group PSL(2,ℝ) of
orientation-preserving isometries of the hyperbolic plane which is
contained in the group `Δ` of symmetries of the tiling (the
(2,4,5) triangle
group); here, `Γ` is a normal subgroup and
the quotient (PSL(2,ℝ)∩`Δ`)/`Γ` is
the symmetric
group 𝔖₅ on 5 objects: since #𝔖₅=120, the period
domain consists of 30 cells (each cell has 4 orientation-preserving
symmetries because it is a square), 60 edges (each edge has 2
orientation-preserving symmetries) and 24 vertices (each vertex has
5 orientation-preserving symmetries). If one prefers, the maze lives
on a
compact Riemann
surface
of genus
4 (having 120 symmetries),
whose universal
cover is the hyperbolic plane (and `Γ` is its fundamental
group). Or on
the Cayley
graph of 𝔖₅ for two generators `R` (rotation
around a cell) and `T` (translation to the next cell).

The full version of this game differs essentially only in that the group is much larger, being PSL(2,89).

The maze generation is not particularly smart: the algorithm first
carves a tree inside the graph and then randomly removes another 15%
of walls (a completely heuristic value to make the maze more
interesting). The distance to the starting point and “green point” (a
point at maximal distance from the starting point) determines the
color of the circles; the proposed goal is to first reach that target
and then return to the starting point by using a path that is
not homotopic
(even with the walls removed) to the first path (in other words, by
“looping” in the sense that it defines a non-trivial element
of `Γ`).

David Madore