1 Introduction

This paper provides two results concerning the space of geodesic triangulations of a planar polygon. We first give a short new proof of the contractibility of the space of geodesic triangulations with fixed combinatorial type of a convex polygon, originally proved by Bloch, Connelly, and Henderson [5], following a series of partial results [4, 6, 7, 19]. We then consider the homotopy groups of the space of geodesic triangulations of a non-convex polygon. We show that each homotopy group can be non-trivial. This answers an open question asked in 1980 [12].

Fig. 1
figure 1

Geodesic triangulations of a polygon

An embedded n-sided polygon \(\Omega \) in the plane is determined by a map \(\phi \) from the set \(V_B=\{v_1,v_2,\ldots ,v_n,v_{n+1}=v_1\}\) to \({\mathbb {R}}^2\), and line segments connecting the images under \(\phi \) of two consecutive vertices in \(V_B\). We assume in the rest of this paper that \(T = (V, E, F)\) is a triangulation of \(\Omega \) with vertices V, edges E, and faces F such that \(V = V_I\cup V_B\), where \(V_I\) is the set of interior vertices and \(V_B\) is the set of boundary vertices (Fig. 1).

A geodesic triangulation with combinatorial type T of \(\Omega \) is an embedding \(\psi \) of the 1-skeleton of T in the plane such that \(\psi \) agrees with \(\phi \) on \(V_B\), and \(\psi \) maps every edge in E to a line segment parametrized by arc length. The set of these maps is called the space of geodesic triangulations on \(\Omega \) with combinatorial type T, and is denoted by \(X(\Omega ,T)\). Each geodesic triangulation is uniquely determined by the positions of the interior vertices in \(V_I\), so the topology of \(X(\Omega , T)\) is induced by \(\Omega ^{|V_I|}\subset {\mathbb {R}}^{2|V_I|}\). The main result of this paper is

Theorem 1.1

For any integer \(n>0\), there exists a planar polygon \(\Omega \) with a triangulation T of \(\Omega \) such that the space \(X(\Omega , T)\) of geodesic triangulations with combinatorial type T of \(\Omega \) has non-trivial n-th homotopy group.

Notice that \(X(\Omega , T)\) could be empty if the boundary is complicated. For instance, if the polygon is not star-shaped, then there is no geodesic triangulation with only one interior vertex.

Ho [19] showed that the space \(X(\Omega , T)\) is equivalent to the space \(L(\Omega , T)\) of simplexwise linear homeomorphisms of \(\Omega \) with triangulation T. The homotopy type of the space \(L(\Omega , T)\) has been studied in [4, 5, 7, 19], because it is closely related to the problem of existence and uniqueness of differentiable structures on triangulated manifolds. In addition, the path-connectedness of \(L(\Omega ,T)\) has implications to graph morphing problems in computational geometry [10, 16, 23, 24].

Cairns [6, 7] initiated an investigation of the topology of the space of geodesic triangulations of a geometric triangle in the Euclidean plane and the round 2-sphere.

Theorem 1.2

(Cairns [7])   If \(\Omega \) is a geometric triangle with a triangulation T in the plane, then \(X(\Omega , T)\) is path-connected.

Ho then proved that this space is simply-connected.

Theorem 1.3

(Ho [19])   If \(\Omega \) is a geometric triangle with a triangulation T in the plane, then \(X(\Omega , T)\) is simply-connected.

Bloch et al. [5] extended these results to general convex polygons and further proved the contractibility of the space of simplexwise linear homeomorphisms of a convex polygon. In a recent paper, Cerf [8] improved the original argument from [5].

Theorem 1.4

(Bloch et al. [5])   If \(\Omega \) is a convex polygon with a triangulation T in the plane, then \(X(\Omega , T)\) is homeomorphic to \({\mathbb {R}}^{2|V_I|}\).

Theorem 1.4 can be regarded as a discrete version of the classical theorem due to Smale [22] stating that the group of diffeomorphisms of the 2-disk fixing the boundary pointwise is contractible. As pointed out in [5], Theorem 1.4 leads to an alternative proof of Smale’s theorem.

Bing and Starbird considered the more general case of star-shaped polygons. A dividing edge in a triangulation T is an interior edge connecting two boundary vertices.

Theorem 1.5

(Bing and Starbird [4])   If \(\Omega \) is a star-shaped polygon with a triangulation T in the plane, and T does not contain any dividing edge, then \(X(\Omega , T)\) is non-empty and path-connected.

Bing and Starbird [4] also showed that \(X(\Omega , T)\) is not necessarily path-connected if the boundary is not star-shaped.

All the results above were proved using induction. In Theorem 3.5, we will provide a constructive proof of the contractibility of spaces of geodesic triangulations of convex polygons based on Tutte’s embedding theorem. On the other hand, Theorem 1.1 shows that this result does not extend to \(X(\Omega , T)\) for non-convex polygons.

1.1 Organization of This Paper

In Sect. 2, we recall Tutte’s embedding theorem and its generalizations. In Sect. 3, we give a new proof of the contractibility of \(X(\Omega , T)\) when \(\Omega \) is convex, based on Tutte’s method. In Sect. 4, we prove Theorem 1.1. In Sect. 5, we discuss some conjectures about the homotopy types of spaces of geodesic triangulations of general surfaces.

2 Tutte’s Embedding and its Generalization

2.1 Tutte’s Embedding for the Disk

Given a triangulation \(T = (V, E, F)\) of the 2-disk with vertices V, edges E, and faces F, the 1-skeleton of T is a planar graph. Tutte [25] provided a constructive method to generate a straight-line embedding of a 3-vertex-connected planar graph shown in Fig. 2. The procedure starts by setting one face of the graph as a convex polygon, then solves for the coordinates of the other vertices with a system of linear equations.

Fig. 2
figure 2

Tutte’s embedding

Using a discrete maximum principle, Floater [15] extended Tutte’s result for the case of triangulations of the 2-disk.

Theorem 2.1

(Floater [15])   Assume \(T = (V, E, F)\) is a triangulation of a convex n-sided polygon \(\Omega \), and \(\psi \) is a simplexwise linear homeomorphism from T to \({\mathbb {R}}^2\). If \(\psi \) maps every interior vertex in T into the convex hull of the images of its neighbors, and maps the cyclically ordered boundary vertices \(v_1, v_2, \ldots , v_n\) of T to the cyclically ordered vertices of \(\Omega \), then \(\psi \) is one to one.

Theorem 2.1 is a discrete version of the Rado–Kneser–Choquet theorem [13], which states that a smooth harmonic map from the unit 2-disk to a convex domain bounded by a Jordan curve in the plane is a homeomorphism, when its restriction to the boundary of the 2-disk is a homeomorphism. Moreover, it gives a constructive method to produce geodesic triangulations of a convex polygon with the combinatorial type of T as follows.

Step 1:

Assign a positive weight \(c_{ij}\) to a directed edge \((i, j) \in \mathbf {E}\), where \(\mathbf {E}\) is the set of directed edges of T. Then normalize the weights to make the sum of all outgoing weights around each interior vertex equal to 1:

$$\begin{aligned} w_{ij} = \frac{c_{ij}}{\sum \limits _{j\in N(v_i)}\!\!c_{ij}},\ \ \quad v_i\in V_I. \end{aligned}$$

The set \(N(v_i)\) consists of all the vertices that are neighbors of the vertex \(v_i\in V_I\). Notice that we do not impose symmetry condition \(w_{ij} = w_{ji}\).

Step 2:

Fix the coordinates of boundary vertices \(V_B\) determined by the map \(\phi \), which together form a convex n-sided polygon \(\Omega \) in the plane,

$$\begin{aligned} \begin{pmatrix}x_i \\ y_i\end{pmatrix} = \phi (v_i) =\begin{pmatrix}b^x_i \\ b^y_i\end{pmatrix},\ \ \quad v_i\in V_B. \end{aligned}$$
Step 3:

Solve the coordinates for interior vertices with boundary coordinates given by Step 2,

$$\begin{aligned} \sum _{j\in N(v_i)}\!\!w_{ij}\begin{pmatrix}x_j \\ y_j\end{pmatrix}=\begin{pmatrix}x_i \\ y_i\end{pmatrix},\ \ \quad v_i\in V_I. \end{aligned}$$
Step 4:

Put the vertices in the positions given by these coordinates, and connect the vertices with line segments based on the combinatorics of the triangulation T.

Theorem 2.1 states that the result is a geodesic triangulation of \(\Omega \) with the combinatorial type of T. The linear system in Step 3 implies that the x-coordinate (or y-coordinate) of one interior vertex is a convex combination of the x-coordinates (or y-coordinates) of its neighbors. The coefficient matrix of this system is not necessarily symmetric but it is diagonally dominant, so the solution exists and is unique. This procedure is called Tutte’s method.

This method has been generalized to surfaces with non-trivial topologies. Colin de Verdière [11] and Hass and Scott [18] showed that every triangulation of a closed surface with a metric of non-positive curvature can be realized as a geodesic triangulation. Gortler et al. [17] reproved Tutte’s theorem using discrete one forms and generalized it to the cases of flat tori and multiple-connected polygonal regions, with appropriate assumptions on the boundaries. Aigerman and Lipman [2] further extended this method to Euclidean orbifolds with spherical topology.

3 Geodesic Triangulations of the 2-Disk with Convex Boundary

In this section, we present a short proof of the contractibility of the space of geodesic triangulations on a convex polygon. Let us consider the topology of the space \(X(\Omega , T)\) where \(\Omega \) is a fixed convex polygon in the plane. Let \(E_I\) be the set of interior edges in T and \(E_B\) be the set of boundary edges in T.

Definition 3.1

Assume \(\Omega \) is a convex polygon with a triangulation T. A collection of weights, defined by a \(|V_I|\times |V|\) matrix \((w_{ij})\), is permissible if

  • \(w_{ii} = 1\) for all \(i = 1, 2, \ldots , |V_I|\);

  • \(w_{ij} = 0\) if \(v_i\) is not connected to \(v_j\);

  • \(w_{ij} > 0\) if \(v_i\) is connected to \(v_j\);

  • \(\sum _{j\in N(v_i)}w_{ij} = 1\) for each interior vertex \(v_i\).

Define \(W(\Omega , T)\) to be the space of permissible weights of \((\Omega , T)\).

Definition 3.2

The Tutte map \(\Psi :W(\Omega , T) \rightarrow X(\Omega , T)\) sends a collection of permissible weights \((w_{ij})\) in \(W(\Omega , T)\) to the unique geodesic triangulation \(\tau \in X(\Omega , T)\) determined by the solution to the linear system in Steps 2 and 3 of Tutte’s method, with coefficients \((w_{ij})\) and boundary vertices of \(\Omega \) determined by \(\phi \).

The space \(W(\Omega , T)\) is a \((2|E_I|\,{-}\,|V_I|)\)-dimensional manifold. The range \(X(\Omega , T)\) is a \(2|V_I|\)-dimensional manifold. Based on the formula of the Euler characteristic of the disk, \(|E_I| - 3|V_I| = |E_B| - 3\). Hence the dimension of \(W(\Omega , T)\) is not less than the dimension of \(X(\Omega , T)\), with equality then the boundary has only three vertices.

Lemma 3.3

The Tutte map \(\Psi \) is continuous and surjective from \(W(\Omega , T)\) to \(X(\Omega , T)\).

Fig. 3
figure 3

The mean value coordinate at \(v_0\)

Proof

By Theorem 2.1, for any \((w_{ij})\in W(\Omega , T)\), the solution to the linear system generates a geodesic triangulation of T, so \(\Psi \) is well defined. The continuity follows from the continuous dependence on the coefficients of the solutions to the linear system. To show surjectivity, given a geodesic triangulation \(\tau \in X(\Omega , T)\), any interior vertex \(v_i\) in \(\tau \) is in the convex hull of its neighbors. Then we can construct weights \((w_{ij})\) for a geodesic triangulation \(\tau \) using the mean value coordinates defined in [14] below.

The mean value coordinates on the directed edges of a geodesic triangulation are given by

$$\begin{aligned} w_{ij} = \frac{c_{ij}}{\sum \limits _{j\in N(v_i)}\!\! c_{ij}},\quad \text {where} \quad c_{ij} = \frac{\tan (\alpha ^j_{i}/2) +\tan (\beta ^j_i/2) }{\Vert v_i - v_j\Vert }, \quad (i, j)\in \mathbf {E}. \end{aligned}$$

The two angles \(\alpha ^j_{i}\) and \(\beta ^j_i\) at \(v_i\) share the edge \((i, j)\in \mathbf {E}\) in Fig. 3. The mean value coordinates provide a smooth map from \(X(\Omega , T)\) to \(W(\Omega , T)\). \(\square \)

Floater [16] proposed another construction of weights by taking the average of barycentric coordinates. An alternative method is to take the center of mass of the space of weights \((w_{ij})\in W\) such that \(\Psi ((w_{ij})) = \tau \). All three methods agree with the barycentric coordinates of a vertex when the star of this vertex is a triangle.

Definition 3.4

The map \(\sigma :X(\Omega , T) \rightarrow W(\Omega , T)\) sends a geodesic triangulation \(\tau \) to a permissible weight \((w_{ij})\) in \(W(\Omega , T)\) determined by the mean value coordinates.

Theorem 3.5

If \(\Omega \) is a convex polygon in \({\mathbb {R}}^2\) with a triangulation T, the space of geodesic triangulations \(X(\Omega , T)\) is contractible.

Proof

The map \(\sigma \) is continuous, and \(\Psi (\sigma (\tau )) = \tau \) for any \(\tau \in X(\Omega , T)\), so the map \(\sigma \) is a global section of \(\Psi \) from \(X(\Omega , T)\) to \(W(\Omega , T)\). Since \(W(\Omega , T)\) is convex, there exists a linear isotopy \((1 - t)\sigma \circ \Psi + t{\mathbf {1}}\) between the identity map \({\mathbf {1}}\) on \(W(\Omega , T)\) and \(\sigma \circ \Psi \). Hence \(X(\Omega , T)\) is homotopy equivalent to the convex space \(W(\Omega ,T)\), hence it is contractible. \(\square \)

We can extend this result to spaces of geodesic triangulations of convex polygons in other geometries of constant curvature.

Corollary 3.6

Assume \(\Omega \) is a hyperbolic convex polygon, or a spherical convex polygon contained in an open hemisphere, and T is a triangulation of \(\Omega \). Then the space of geodesic triangulations \(X(\Omega , T)\) is contractible.

Proof

For a hyperbolic convex polygon \(\Omega _H\), we embed it in the Klein disk model of the hyperbolic plane so that all the edges of \(\Omega _H\) are line segments with respect to the Euclidean metric, inducing a convex polygon \(\Omega \) in the Euclidean plane. There is a homeomorphism between the space \(X(\Omega _H, T)\) and \(X(\Omega , T)\), induced by the identity map of the disk. Hence the space of hyperbolic geodesic triangulations \(X(\Omega _H, T)\) is contractible.

Similarly, if \(\Omega _S\) is a spherical convex polygon contained in a hemisphere, we can apply the gnomonic transformation from the center of the 2-sphere to the plane tangent to the center of the hemisphere containing \(\Omega _S\). Then \(\Omega _S\) is mapped to a convex polygon \(\Omega \) in this plane under the gnomonic transformation. This transformation preserves the incidence and maps geodesic arcs in hemisphere to line segments in \(\Omega \). Hence it induces a homeomorphism between \(X(\Omega _S,T)\) and \(X(\Omega ,T)\). \(\square \)

4 Spaces of Geodesic Triangulations with Non-trivial Topology

In this section, we construct examples of spaces of geodesic triangulations with non-trivial n-th homotopy groups for each \(n>0\). We first describe the building block of these constructions.

4.1 The Building Block Polygon \({\mathcal {P}}\)

The building block is the polygon \({\mathcal {P}}\) in Fig. 4. The triangulation T of \({\mathcal {P}}\) is given in Fig. 4 with three interior vertices P, L, and R. For simplicity, in the remaining part of this paper, we only draw a part of the triangulation shown in Fig. 4A instead of the full triangulation shown in Fig. 4B. Notice that we can add edges back to produce the full triangulation, once the positions of the interior vertices are fixed.

Fig. 4
figure 4

The polygon \({\mathcal {P}}\) and its triangulation

Set \(c = (2+\sqrt{2})/(3+\sqrt{2})\). The coordinates of boundary vertices of \({\mathcal {P}}\) are

$$\begin{aligned} A = \begin{bmatrix}1\\ 0 \end{bmatrix},\ B = \begin{bmatrix}1\\ 1 \end{bmatrix},\ C = \begin{bmatrix}c\\ 1 \end{bmatrix},\ D = \begin{bmatrix} c\\ (c+1)/2 \end{bmatrix},\ G = \begin{bmatrix} 0\\ 1/2 \end{bmatrix},\ K = \begin{bmatrix}0\\ -1/2 \end{bmatrix}. \end{aligned}$$

Reflect the vertices A, B, C, and D about y-axis to determine the remaining boundary vertices \(A'\), \(B'\), \(C'\), and \(D'\). The idea of the construction of \({\mathcal {P}}\) originates from the example given by Bing and Starbird [4]. Let us consider an isosceles wedge \(\angle A'KA\) in Fig. 5 defined by

$$\begin{aligned} A = \begin{bmatrix}1\\ 0\end{bmatrix}\!, \quad A' = \begin{bmatrix}-1\\ 0\end{bmatrix}\!, \quad K = \begin{bmatrix}0\\ -k\end{bmatrix}\!, \quad \ \ k>0. \end{aligned}$$
Fig. 5
figure 5

The vertex P moves along KA

Let the vertex \(P = (t, kt-k)\) move along the edge KA for \(t\in (0, 1)\). The lines PB and \(PB'\) are

$$\begin{aligned} y - 1 = \frac{1 - k(t-1)}{1-t}(x-1)\ \text { for }\ PB,\ \quad y -1 = \frac{k(t-1)-1}{t+1}(x+1)\ \text { for }\ PB'. \end{aligned}$$

Set R as the intersection of PB with \(x = c\), and L as the intersection of \(PB'\) with \(x = -c\). The line LR is given by

$$\begin{aligned} \frac{y - (1 + (k(t-1)-1)(1-c)/(t+1))}{(1/(1-t) + k)(c-1) - (k(t-1)-1)(1-c)/(t+1)} = \frac{x+c}{2c}. \end{aligned}$$

The y-intercept H of LR is

$$\begin{aligned} h(t, k) = (c-1)\frac{t^2(k+1) - kt}{1-t^2} + 1 + (k+1)(c-1). \end{aligned}$$

Note that the function h(tk) is not a monotonic function of t, but a monotonic decreasing function of k. The maximum of h(tk) in \(0\le t \le c\) given below, denoted as \({\mathbf {h}}(k)\), is a continuous monotonically decreasing function of k,

$$\begin{aligned} {\mathbf {h}}(k) = (c-1)\biggl (k + \frac{(\sqrt{2k+1} + 1)^2}{4}\biggr ) + 1. \end{aligned}$$

This corresponds to a clear geometric interpretation: if k increases, the vertex K moves downward, then the vertex L and R moves downward, so \({\mathbf {h}}(k)\) decreases.

The polygon \({\mathcal {P}}\) corresponds to the case \(k = 1/2\). The function h(t, 1/2) achieves its maximum at \(t_0 = 3-2\sqrt{2}\), with the maximal value

$$\begin{aligned} {\mathbf {h}}\biggl (\frac{1}{2}\biggr )=\biggl (\frac{\sqrt{2}}{2} + \frac{3}{4}\biggr )c + \frac{1}{4} - \frac{\sqrt{2}}{2} = \frac{1}{2}. \end{aligned}$$

Recall that \(G = (0, 1/2)^T\). This implies that as P moves along KA, the edge LR stays below G shown in Fig. 5, A and B, except at \(t = t_0\), when G lies on LR shown in Fig. 5C.

We highlight the properties of \({\mathcal {P}}\) by Lemma 4.2 below. It states that the space \(X({\mathcal {P}}, T)\) is not path-connected, but becomes path-connected after perturbations of vertices G and K. We characterize these perturbations in the following definition.

Definition 4.1

Given the triangulated polygon \(({\mathcal {P}}, T)\), let

$$\begin{aligned} K' = K + \begin{bmatrix}0\\ \epsilon \end{bmatrix}\!,\ \quad G' = G + \begin{bmatrix}0\\ \delta \end{bmatrix}\!, \end{aligned}$$

be a vertical perturbation of K and G, and \({\mathcal {P}}'\) the polygon after perturbation. An admissible perturbation of K and G is defined as one of the following:

  • \(\epsilon <0\) and \(\delta \ge 0\);

  • \(\delta >0\) and \(\epsilon \le 0\);

  • \(\epsilon >0\) and \(\delta \ge 3\epsilon \);

  • \(\delta <0\) and \(\epsilon \le 3\delta \).

A forbidden perturbation of K and G is defined as one of the following:

  • \(\epsilon =0\) and \(\delta < 0\);

  • \(\delta =0 \) and \(\epsilon > 0\).

We will see that if \({\mathcal {P}}'\) is an admissible perturbation of \({\mathcal {P}}\), we can slide the vertex P from the left to right. Let \(\mathbf{proj} _x^P\) be the continuous projection from \(X({\mathcal {P}}, T)\) to the x-coordinate of the vertex P.

Lemma 4.2

The space \(X({\mathcal {P}}, T)\) is not empty. Moreover, \(X({\mathcal {P}}, T)\) is not path-connected. If \({\mathcal {P}}'\) is the polygon after an admissible perturbation of \({\mathcal {P}}\), then there exists a path \(\gamma (t)\) for \(t\in [-c,c]\) in \(X({\mathcal {P}}',T)\) such that \({\mathbf{proj}}_x^P(\gamma (t))=t\) for \(t\in [-c, c]\). On the other hand, if \({\mathcal {P}}'\) is the polygon after a forbidden perturbation of \({\mathcal {P}}\), then \(X({\mathcal {P}}', T)\) is not path-connected.

The geometric intuition of admissible perturbations is that we can move vertex K downward or move vertex G upward so that \(X({\mathcal {P}}',T)\) is connected. If we move K upward, G needs to be moved upward by a certain amount so that \(X({\mathcal {P}}', T)\) is connected. On the other hand, if we move K upward or Q downward, \(X({\mathcal {P}}', T)\) is not path-connected.

Proof

We will show that

$$\begin{aligned} \mathbf{proj} _x^P(X({\mathcal {P}}, T)) = (-1, -t_0)\cup (-t_0, t_0) \cup (t_0, 1). \end{aligned}$$

Let \(P = (t, 1/2t - 1/2)\) move along KA. If \(t \ne t_0 = 3-2\sqrt{2}\), then LR defined above is below G, hence we can displace the vertex P vertically by a small distance into \({\mathcal {P}}\). Then move R along a small vector pointing to the sector \(\angle BRC\) and move L along a small vector pointing to the sector \(\angle B'LC'\) as shown in Fig. 5. Then G stays above LR after the displacement of L and R.

Since L and R move continuously as P moves along KA, we can perturb P, L, and R to construct a continuous map \(\eta (t)\) for \(t\in [0,t_0)\cup (t_0, c]\) in \(X({\mathcal {P}},T)\) with \(\mathbf{proj} _x^P(\eta (t)) = t\). As mentioned before, the segment LR intersects with G if \(t=t_0\), so we can’t move P vertically to the interior of \({\mathcal {P}}\). This implies that there is no geodesic triangulation \(\tau \) in \(X({\mathcal {P}}, T)\) with \(\mathbf{proj} _x^P(\tau ) = t_0\).

The vertices B, D, G, and \(A'\) in \({\mathcal {P}}\) are chosen to be collinear. Hence the line segment connecting B and any interior point of the segment KA is contained in \({\mathcal {P}}\). For \(c< t<1\), set \(R = P\), then \(LR = LP\) stays below G and is contained in \({\mathcal {P}}\). We can apply similar displacements of P, L, and R to generate a geodesic triangulation \(\tau \) with \(\mathbf{proj} _x^P(\tau ) = t\). This shows that \((c, 1) \subset \mathbf{proj} _x^P(X({\mathcal {P}}, T))\). By symmetry, it follows that

$$\begin{aligned} \mathbf{proj} _x^P(X({\mathcal {P}}, T)) = (-1, -t_0)\cup (-t_0, t_0) \cup (t_0, 1). \end{aligned}$$

On the other hand, for \(k\in (0, \infty )\), the derivative of \({\mathbf {h}}(k)\) is bounded by

$$\begin{aligned} \frac{1}{3}\le |{\mathbf {h}}'(k)| = \biggl |(c-1)\biggl (1+ \frac{1}{2}\biggl (1 + \frac{1}{\sqrt{2k+1}}\biggr )\biggr )\biggr | \le \frac{1}{2}. \end{aligned}$$

Then \(|{\mathbf {h}}'| \le 3\) and \(|({\mathbf {h}}^{-1})'| \le 3\). It implies that if \(\epsilon >0\),

$$\begin{aligned} {\mathbf {h}}\biggl (\frac{1}{2} - \epsilon \biggr ) \le \frac{1}{2} + 3\epsilon . \end{aligned}$$

This means that the segment LR is always below \(G' = (0, 1/2 + \delta )\), if we apply one of the four cases of admissible perturbations. By similar displacements of vertices P, L, and R as before, we can construct a continuous path \(\gamma (t)\) for \(t\in [0, 1)\) in \(X({\mathcal {P}}', T)\) with \(\mathbf{proj} _x^P(\gamma (t)) = t\).

Extending this path by symmetry, we can assume this path is defined on \((-1, 1)\), and \(\gamma (-t)\) is the reflection of \(\gamma (t)\) above y-axis. Moreover, we can assume that the vertices P, L, and R given by \(\gamma (c)\) also produce a geodesic triangulation on \({\mathcal {P}}\). Then the restriction of \(\gamma (t)\) on \([-c, c]\) is the desired path.

Finally, if \({\mathcal {P}}'\) is a forbidden perturbation of \({\mathcal {P}}\), we claim that the maximal y-intercept H of LR as P moves along KA exceeds the height of \(G'\). In the first case of forbidden perturbations, K is fixed and G is moved downward, so LR intersects with \(G'\) when \(t = t_0\). In the second case of forbidden perturbations, G is fixed and K is moved upward. Recall that \(h(t_0, k)\) is a monotonic decreasing function of k. Then at \(t = t_0\), the y-intercept H of LR lies above G. Hence in both cases, LR intersects with \(G'\) when \(t = t_0\). By a similar argument as before, \(t_0\) is not in \(\mathbf{proj} _x^P(X({\mathcal {P}}', T))\), which implies that \(X({\mathcal {P}}', T)\) is not path-connected. \(\square \)

The key to constructing the path \(\gamma \) is that the segment LR never intersects G as P moves. Following the argument in Bing and Starbird [4], one can show that \(X({\mathcal {P}}', T)\) is path-connected for an admissible perturbation \({\mathcal {P}}'\) of \({\mathcal {P}}\).

4.2 The Main Idea of the Construction

The main idea to construct a polygon \(\Omega ^n\) with non-trivial n-th homotopy group is to stack \(n+1\) copies of \({\mathcal {P}}\) together. The polygon \(\Omega ^1\) is shown in Fig. 6. Again, we only draw part of the triangulation \(T^1\) as before. The full triangulation can be constructed by adding edges back once the interior vertices are fixed.

Fig. 6
figure 6

The polygon \(\Omega ^1\) with non-trivial \(\pi _1(X(\Omega ^1, T^1))\)

We illustrate the idea informally when \(n = 1\). To show that \(X(\Omega ^1, T^1)\) has a non-trivial fundamental group, we construct a non-trivial loop in \(X(\Omega ^1, T^1)\) using the two non-homotopic paths in Fig. 7.

Fig. 7
figure 7

\({\mathbf {A}}\rightarrow {\mathbf {D}}\rightarrow {\mathbf {C}}\) and \({\mathbf {A}}\rightarrow {\mathbf {B}}\rightarrow {\mathbf {C}}\)

Starting with the configuration \({\mathbf {A}}\), we construct two paths connecting \({\mathbf {A}}\) and \({\mathbf {C}}\), shown as the paths \({\mathbf {A}} \rightarrow {\mathbf {B}}\rightarrow {\mathbf {C}}\) and \({\mathbf {A}} \rightarrow {\mathbf {D}}\rightarrow {\mathbf {C}}\). In the first path, move the vertex G upward so that \({\mathcal {P}}_1'\) is an admissible perturbation of \({\mathcal {P}}_1\). Then we can slide the vertex \(P_1\) from the left to right to reach the configuration \({\mathbf {B}}\). Then move G down so that \({\mathcal {P}}_2'\) is an admissible perturbation of \({\mathcal {P}}_2\). Slide the vertex \(P_2\) from the left to right to the configuration \({\mathbf {C}}\). In the second path, the order is reversed: first move G down to slide \(P_2\) from the left to right to the configuration \({\mathbf {D}}\), then move G up to slide \(P_1\) to the configuration \({\mathbf {C}}\).

We claim that the two paths above are not homotopic. Equivalently, the loop \({\mathbf {A}} \rightarrow {\mathbf {B}}\rightarrow {\mathbf {C}} \rightarrow {\mathbf {D}}\rightarrow {\mathbf {A}}\) represents a non-trivial element in \(\pi _1(X(\Omega ^1, T^1))\). It follows from two observations: if we project this loop to the x-coordinate of the vertex \(P_1\) and x-coordinate of the vertex \(P_2\) with suitable rescaling, the image of the loop is the cycle in the plane in Fig. 8. The point \((t_0, t_0)\) lies inside the cycle, but is not in the image of the projection of \(X(\Omega ^1, T^1)\). If the x-coordinate of \(P_1\) is \(t_0\), then the vertex G has to be moved upward by Lemma 4.2. Similarly, the fact that the x-coordinate of \(P_2\) equals \(t_0\) implies that G has to be moved downward. This is a contradiction. Hence this cycle is not trivial in \(\mathbf{proj} _x^P(X(\Omega ^1, T^1))\). Hence the loop \({\mathbf {A}} \rightarrow {\mathbf {B}}\rightarrow {\mathbf {C}} \rightarrow {\mathbf {D}}\rightarrow {\mathbf {A}}\) is not trivial in \(X(\Omega ^1, T^1)\). A rigorous proof is given in the next section.

Fig. 8
figure 8

The projection of the loop in \({\mathbb {R}}^2\)

For any \(n\ge 1\), we stack \(n+1\) copies of \({\mathcal {P}}\) together to construct the polygons \(\Omega ^n\) with triangulation \(T^n\). Denote these copies of \({\mathcal {P}}\) by \({\mathcal {P}}_i\) for \(i \in I=\{ 1, 2, \ldots , n+1\}\). Let \(P_i\) be the corresponding vertex P of \({\mathcal {P}}\) in each \({\mathcal {P}}_i\) for \(i \in I\).

Start with the first copy \({\mathcal {P}}_1 = {\mathcal {P}}\). Given the fact \(\angle A'KA+\angle D'GD = 360^{\circ }\), we can inductively identify the vertex \(K_{i+1}\) of \({\mathcal {P}}_{i+1}\) with the vertex \(G_i\) of \({\mathcal {P}}_i\), and the wedge \(\angle A'_{i+1}K_{i+1}A_{i+1}\) with part of \(\angle D'_{i}G_iD_i\) by similarity transformations of the plane

$$\begin{aligned} g_i(x, y) = a_i(x, y) + (0, b_i),\qquad 0<a_i<1, \quad 0<b_i, \quad i = 2, 3, \ldots , n+1, \end{aligned}$$

to construct \(\Omega ^n\). Define \({\mathcal {P}}_i\) in \(\Omega ^n\) to be the image of \({\mathcal {P}}\) under the similarity transformations \(g_i\). Note that \(g_1\) is the identity map of \({\mathbb {R}}^2\) with \(a_1 = 1\) and \(b_1 = 0\). Each \({\mathcal {P}}_i\) is a subgraph of the 1-skeleton of \(T^n\).

Figure 9 shows the polygon \(\Omega ^2\) with three copies of \({\mathcal {P}}\) stacked together. Notice that there is a small gap between two consecutive copies of \({\mathcal {P}}\) by proper choices of similarity transformations. We will show that for any \(n>0\), \(X(\Omega ^n, T^n)\) has non-trivial n-th homotopy group.

Fig. 9
figure 9

A configuration in \(X(\Omega ^2, T^2)\) with \(\pi _2(X(\Omega ^2, T^2))\) non-trivial

4.3 Proof of Theorem 1.1

To prove the new result of this paper, we first establish the existence of admissible perturbations of \({\mathcal {P}}_i\) for \(i\in J\), where J is strict subset of I.

Lemma 4.3

Given \(\epsilon >0\), for any strict subset J of I, there exist admissible perturbations of vertices \(K_i\) and \(G_i\) for \(i\in I\), with the two boundary vertices \(K_1\) and \(G_{n+1}\) fixed, such that if \(j\in J\), the space \(X({\mathcal {P}}_j', T)\) is path-connected. Moreover, the displacements of all vertices \(K_i\) and \(G_i\) are smaller than \(\epsilon \).

Proof

Let \(\{i, i+1, \ldots , i+m\}\) be a maximal chain of consecutive integers in J with \(m\ge 0\). If \(i \ne 1\), move \(K_{j}\) downward by \(\epsilon /3^{j-i}\) for \(j \in \{ i, i+1, \ldots , i+m\}\), producing admissible perturbations of \({\mathcal {P}}_j\) for \(j \in \{ i, i+1, \ldots , i+m\}\). If the maximal chain of consecutive integers is \(\{1, 2, \ldots , m\}\), then move \(G_j\) upward by \(\epsilon /3^{m-j}\) for \(j \in \{1, 2, \ldots , m\}\). It also produces admissible perturbations of \({\mathcal {P}}_j\) for \(j \in \{1, 2, \ldots , m\}\).

In general, there are many maximal chains of consecutive integers with different lengths in J. We can perform the admissible perturbations above separately for each maximal chain. Notice that since J is a strict subset of I, the boundary vertices \(K_1\) and \(G_{n+1}\) can be fixed. Therefore, each of the spaces \(X({\mathcal {P}}_j', T)\) is path-connected for \(j\in J\) after the admissible perturbations on \(G_i\) and \(K_i\) above, and the displacements of \(K_i\) and \(G_i\) are smaller than \(\epsilon \). \(\square \)

We construct geodesic triangulations on \(\Omega ^n\) by combining geodesic triangulations of each \({\mathcal {P}}_i\), or their admissible perturbations \({\mathcal {P}}_i'\) for \(i\in I\). Define a path in \(X({\mathcal {P}}'_i, T)\) by

$$\begin{aligned} \gamma _i(t) = g_i(\gamma (t)) = a_i\gamma (t) + b_i, \qquad t\in [-c, c],\quad i\in I. \end{aligned}$$

The path \(\gamma (t)\) is constructed in Lemma 4.2 with \(c = (2+\sqrt{2})/(3+\sqrt{2})\). A geodesic triangulation in \(X({\mathcal {P}}'_i, T)\) can be regarded as a part of a geodesic triangulation in \(X(\Omega ^n, T^n)\), determining the positions of \(P_i\), \(L_i\), and \(R_i\). Start with a geodesic triangulation in \(X(\Omega ^n, T^n)\) such that the positions of \(P_i\), \(L_i\), and \(R_i\) are given by \(\gamma _i(-c)\). The path \(\gamma _i\) in \(X({\mathcal {P}}'_i, T)\) produces a path in \(X(\Omega ^n,T^n)\) with \(\mathbf{proj} _x^{P_i}(\gamma _i(t))=a_it\) for \(t\in [-c,c]\). Notice that this path only moves three vertices \(P_i\), \(L_i\), and \(R_i\) in \({\mathcal {P}}_i'\) and fixes all the other vertices.

Combining paths above, we can simultaneously move vertices \(P_i\), \(R_i\), and \(L_i\) after suitable admissible perturbations. Start with a geodesic triangulation in \(X(\Omega ^n, T^n)\), whose vertices \(P_i\), \(R_i\), and \(L_i\) are determined by \(\gamma _i(-c)\). By Lemma 4.3, for any strict subset \(J = \{i_1, i_2, \ldots , i_m\}\) of I, there exist admissible perturbations of \({\mathcal {P}}_{i_k}\) such that \(X({\mathcal {P}}_{i_k}',T)\) is path-connected for \(i_k \in J\). Then each \(\gamma _{i_k}(t)\) for \(i_k\in J\) defines a path in \(X(\Omega ^n, T^n)\), which restricts to the identity map except in \({\mathcal {P}}_{i_k}'\).

For any \((y_{1}, \ldots , y_{m})\) with \(|y_k| \le c\), we define \(\Gamma (\pm c, \ldots ,\pm c,y_{1},y_{2},\ldots ,y_{m})\) to be the geodesic triangulation in \(X(\Omega ^n, T^n)\) which is determined by \(\gamma _{i_k}(y_k)\) for \(i_k\in J\) and \(\gamma _i(\pm c)\) for \(i\notin J\). This means that the positions of \(P_{i_k}\), \(L_{i_k}\), and \(R_{i_k}\) are determined by paths \(\gamma _{i_k}(y_k)\) if \(i_k \in J\), and all the other vertices are fixed at \(\gamma _{i}(\pm c)\) for \(i\notin J\). Using the map \(\Gamma \), we prove that

Proposition 4.4

The homotopy group \(\pi _n(X(\Omega ^n, T^n))\) is not trivial.

Proof

We construct a continuous map f from the boundary \(\partial I^{n+1}\) of an \((n+1)\)-dimensional cube \(I^{n+1}\) in \({\mathbb {R}}^{n+1}\),

$$\begin{aligned} I^{n+1} = \{(x_1, \ldots , x_{n+1}) \mid |x_i|\le 1, \, i \in I\} \end{aligned}$$

to \(X(\Omega ^n, T^n)\), representing a non-trivial element in \(\pi _n(X(\Omega ^n, T^n))\). The set \(\partial I^{n+1}\) consists of k-dimensional cubes for \(0\le k\le n\). The n-dimensional cube corresponds to the facets

$$\begin{aligned} F_i^\pm = \{(x_1, \ldots ,x_{i-1}, \pm 1, x_{i+1},\ldots , x_{n+1}) \mid |x_i|\le 1, \, i \in I\}. \end{aligned}$$

Notice that all the k-dimensional cubes can be represented as the intersections of a collection of facets. We will define f by induction on the dimension of cubes.

The 0-dimensional cubes correspond to the vertices \((x_1, x_2, \ldots , x_{n+1})\) of \(\partial I^{n+1}\) with \(x_i = {\pm } 1\) for \(i\in I\). We define the map f on 0-dimensional cubes by

$$\begin{aligned} f(x_1, x_2, \ldots , x_{n+1}) =\Gamma (cx_1, cx_2, \ldots , cx_{n+1}). \end{aligned}$$

The positions of vertices of \(\Gamma (cx_1, cx_2, \ldots , cx_{n+1})\) are determined by \(\gamma _{i}(\pm c)\) for each \(i\in I\). Notice that if \(x_i = 1\), the vertex \(P_i\) lies on the right side of \({\mathcal {P}}_i\) with its x-coordinate equal to \(a_ic\).

Inductively, assume that f is defined on all the k-dimensional cubes in \(\partial I^{n+1}\) with \(k<n\). We extend f to all \((k+1)\)-dimensional cubes in the following two steps. Up to permutations of indices, let us extend f to \({\mathcal {H}}\), which is the intersection of the facets \(F_i^+\) for \(i = 1, \ldots , n-k\), representing a \((k+1)\)-dimensional cube

$$\begin{aligned} {\mathcal {H}} = \bigcap _{i = 1}^{n-k} F^+_i = \{(1, \ldots , 1, x_{n-k+1},\ldots , x_{n+1}) \mid |x_i|\le 1, \, i \in I\}. \end{aligned}$$

Consider the rescaling of the interior of \({\mathcal {H}}\) by c from the center of \({\mathcal {H}}\),

$$\begin{aligned} c{\mathcal {H}} = \bigcap _{i = 1}^{n-k} F^+_i = \{(1, \ldots , 1, x_{n-k+1},\ldots , x_{n+1}) \mid |x_i|< c, \, i \in I\}. \end{aligned}$$

In the first step, we extend f from \(\partial {\mathcal {H}}\) to \({\mathcal {H}} - c{\mathcal {H}}\) using radial segments from the center, as shown in Fig. 10. In each segment \({\mathcal {L}}\), we fix vertices \(P_i\), \(L_i\), and \(R_i\) in each \({\mathcal {P}}_i\), and move vertically the vertices \(K_i\) and \(G_i\) from the unique configuration \(f(\partial {\mathcal {H}} \cap {\mathcal {L}})\) to admissible perturbations of \({\mathcal {P}}_i\) for \(i=n-k+1,\ldots , n+1\). By Lemma 4.3, such admissible permutations exist, and we can choose \(\epsilon \) small such that no intersections occurs during the vertical displacements of vertices \(K_i\) and \(G_i\).

Fig. 10
figure 10

Extension of the embedding f

In the second step, we extend f to \(c{\mathcal {H}}\). Notice that f has been extended to the boundary of \(c{\mathcal {H}}\) in the first step. At boundary points of \(c{\mathcal {H}}\), the spaces \(X({\mathcal {P}}_i', T)\) for \(i = n-k+1, \ldots , n+1\) are path-connected. Define f on \(c{\mathcal {H}}\) by

$$\begin{aligned} f((1, \ldots , 1, x_{n-k+1}, \ldots , x_{n+1})) = \Gamma (c, \ldots , c, x_{n-k+1}, \ldots , x_{n+1}),\ \ \quad |x_i|\le c. \end{aligned}$$

This determines a continuous extension of f on \({\mathcal {H}}\). Similar formulas hold for the other \((k+1)\)-dimensional faces. By induction, f is extended to \(\partial I^{n+1}\). We will show that f cannot be extended to \(I^{n+1}\), because we cannot move simultaneously vertices \(P_i\) from left to right for all \(i\in I\). This implies that f represents a non-trivial element in \(\pi _n(X(\Omega ^n, T^n))\).

Define a continuous projection from \(X(\Omega ^n, T^n)\) with scaling \(\Phi :X(\Omega ^n, T^n) \rightarrow {\mathbb {R}}^{n+1}\) by

$$\begin{aligned} \Phi (\tau ) = \biggl (\frac{\mathbf{proj}_x^{P_1}(\tau )}{a_1}, \frac{\mathbf{proj}_x^{P_2}(\tau )}{a_2},\ldots , \frac{\mathbf{proj}_x^{P_{n+1}}(\tau )}{a_{n+1}}\biggr ),\ \ \quad \tau \in X(\Omega ^n, T^n), \end{aligned}$$

where \(a_i\) is the coefficient of similarity transformations \(g_i\) in the definition of \(\Omega ^n\), and \(\mathbf{proj} _x^{P_i}\) is the projection to the x-coordinate of the vertex \(P_i\).

We claim that \(\Phi (f(\partial I^{n+1})) = c\partial I^{n+1} \subset {\mathbb {R}}^{n+1}\), where \(c\partial I^{n+1}\) is a rescaling of \(\partial I^{n+1}\) by c. Without loss of generality, consider the facet \(F_1^+\) and its rescaling

$$\begin{aligned} cF_1^+ = \{(1, x_2, \ldots , x_{n+1}) \mid |x_i|\le c, \,i \in I\}. \end{aligned}$$

By the definition of f on \(cF_1^+\),

$$\begin{aligned} f((1, x_2, \ldots , x_{n+1})) = \Gamma (c, x_2, \ldots ,x_{n+1}), \qquad |x_i|\le c ,\quad i \in I. \end{aligned}$$

Since \(\mathbf{proj} _x^{P_i}(\gamma _i(t)) = a_it\) for \(t\in [-c, c]\),

$$\begin{aligned} \Phi (f((1, x_2, \ldots , x_{n+1}))) = (c, x_2, \ldots , x_{n+1}), \qquad |x_i|\le c, \quad i \in I. \end{aligned}$$

Notice that on \(F_1^+ - cF_1^+\), vertices \(P_i\) are fixed for \(i\in I\). This implies that \(\Phi (f(\partial I^{n+1})) = c \partial I^{n+1}\). The restriction of \(\Phi \circ f\) on \(F_1^+\) is homotopic to the rescaling map of \(F_1^+\) by the constant c. Hence \(\Phi \circ f\) is a degree-one map from \(\partial I^{n+1}\) to \(c\partial I^{n+1}\).

Based on this fact, we will show that \(f(\partial I^{n+1})\) represents a non-trivial element in \(X(\Omega ^n, T^n)\). Equivalently, we show that f cannot be extended to \(I^{n+1}\) in \(X(\Omega ^n, T^n)\). Recall \(t_0 = 3-2\sqrt{2}\). Set

$$\begin{aligned} \mathbf {v} = (t_0, t_0, \ldots , t_0)\in {\mathbb {R}}^{n+1}. \end{aligned}$$

Since \(c = (2 + \sqrt{2})/(3 + \sqrt{2})>t_0\), the vector \(\mathbf {v}\) is contained in \( cI^{n+1} = \Phi (f(\partial I^{n+1}))\). To show that f cannot be extended to \(I^{n+1}\), we show that \(\mathbf {v}\notin \Phi (X(\Omega ^n, T^n))\).

Suppose that there is a geodesic triangulation \(\eta \in X(\Omega ^n,T^n)\) such that \(\Phi (\eta )=\mathbf {v}\). Notice that \(K_1\) and \(G_{n+1}\) are fixed as boundary vertices. By Lemma 4.2, if \(t_0\in \mathbf{proj} _x^{P_1}(X(\Omega ^n, T^n))\), we need to perform an admissible perturbation of the vertex \(G_1\) to avoid intersections of edges in \({\mathcal {P}}_1\). Hence \(G_1\) is moved upward, and inductively all the \(G_i\) for \(i \in I\) need to be moved upward. However, \(G_{n+1}\) is fixed, so no such triangulation exists. \(\square \)

Theorem 1.1 follows from Proposition 4.4, where the polygons \((\Omega ^n, T^n)\) provide the required examples for \(n>0\). Specifically, for any integer \(n>0\), the construction in Proposition 4.4 produces a map from \({\mathbb {S}}^n\) to \(X(\Omega ^n, T^n)\) which is not nullhomotopic. This resolves a problem proposed in [12], showing that the space of geodesic triangulations of a planar polygon could have complicated topology.

5 Further Work

The homotopy type of the space X(ST) of geodesic triangulations of a general closed surface S with constant curvature remains unknown. The space of geodesic triangulations of the 2-sphere \(X(S^2, T)\) was studied by Awartani and Henderson [3], but its homotopy type remains open. The path-connectedness of spaces of geodesic triangulations of flat tori was proved by Chambers et al. [9]. If S is a hyperbolic surface, Hass and Scott [18] showed that X(ST) is contractible if T is a one-vertex triangulation. See [18, Thm. 10.3]. It is conjectured in [12] that X(ST) is homotopy equivalent to the group of isometries of S homotopic to the identity, when S is equipped with a metric with constant curvature.

Another open question is about the complexity of the homotopy type of \(X(\Omega , T)\) for a general polygon. In particular, it is conjectured that

Conjecture 5.1

For any finite CW complex \({\mathcal {C}}\), there exists a triangulated polygon \((\Omega , T)\) such that \(X(\Omega ,T)\) is homotopy equivalent to \({\mathcal {C}}\).

This phenomenon is so-called universality theorem, often expressed with semi-algebraic varieties. It holds for configuration spaces of a large class of discrete objects, including planar linkages [20], and 4-polytopes [21]. The recent work by Abrahamsen et al. [1] about the complexity of the art gallery problem also reveals the similar property.