1 Introduction

Homoclinic tangles were first observed by Poincaré (1890) in his treatise on celestial mechanics, from which he concluded that the dynamics was non-integrable and extremely complicated. For low-dimensional (such as two-dimensional discrete-time) systems, it turns out that detailed information about the behaviour in terms of symbolic dynamics and topological entropy can be calculated. This information is useful in studying properties of fluid mixing (Boyland et al. 2000, 2003; Finn et al. 2006; Finn and Thiffeault 2011; Stremler et al. 2011; Sattari et al. 2016), ionisation of hydrogen (Mitchell et al. 2004a, b; Mitchell and Delos 2007; Mitchell 2012a), optically injected semiconductor lasers (Collins and Krauskopf 2002), and many other applications.

In this paper we study the topological dynamics of surface diffeomorphisms with homoclinic and heteroclinic tangles. Since tangles contain an infinite amount of combinatorial information, we study finite pieces of the stable and unstable manifolds, which together form a trellis for the diffeomorphism. Other approaches consider homoclinic orbits as the fundamental starting point, such as Hulme (2000) and Boyland and Hall (1999).

The topological approximation method of Rom-Kedar constructed symbolic dynamics in the form of rectangular strips in the trellis (Rom-Kedar 1990; Rom-Kedar and Wiggins 1990; Wiggins et al. 1990; Rom-Kedar 1994). The theory of homotopic lobe dynamics (Mitchell et al. 2003; Mitchell and Delos 2006; Mitchell 2009, 2012b), which was developed independently, refines the information obtained by the topological approximation method by obtaining a minimal symbolic description for networks of tangles of arbitrary complexity.

In an alternative approach, the theory of trellises (Collins 2004, 2005) finds optimal bounds for the topological entropy and symbolic dynamics by finding periodic orbits using a form of Nielsen periodic point theory. The main step is to compute a one-dimensional representation of the dynamics, called the skeleton graph map.

The main aim of this paper is to show that the “homotopy dynamics” approach based on curves (or strips) is dual to the approach based on skeleton graphs. The main contribution of the paper is to formalise the duality relationship between the homotopy graph and the skeleton graph of the inverse map. This gives a new algorithm for computing the skeleton graph by first computing homotopy graphs, which avoids the use of the Bestvina–Handel algorithm. We illustrate the concepts by two examples, both of which occur in the Hénon family.

The paper is organised as follows. In Sect. 2, we introduce trellises, and technical preliminaries on homotopies and surface-embedded graphs. In Sect. 3 we introduce the homotopy dynamics and skeleton dynamics, two ways of describing the dynamics forced by a trellis. In Sect. 4, we describe the duality relationships between the skeleton and homotopy dynamics. We give some conclusions in Sect. 5.

2 Preliminaries

2.1 Trellises

Let f be a diffeomorphism of a two-dimensional surface M and P an invariant set of periodic saddle points of f. Then by the stable manifold theorem (Katok and Hasselblatt 1995), the unstable and stable manifolds \(W^U\) and \(W^S\) of P are each disjoint unions of immersed curves in M. An intersection of \(W^U\) and \(W^S\) is a homoclinic or heteroclinic point to P, depending on whether the intersection connects the same or different points in P. Since the curves \(W^U\) and \(W^S\) are immersed curves, typically of infinite length, they cannot be numerically computed in their entirety and are difficult to analyse completely. Instead, we consider finite length pieces of \(W^U\) and \(W^S\).

Following Collins (2004), we say that a pair \(T=(T^U,T^S)\) with \(T^U\subset W^U\) and \(T^S\subset W^S\) is a trellis for f if \(T^U\) and \(T^S\) are of finite length and if \(f(T^U)\supset T^U\) and \(f(T^S)\subset T^S\). Figure 1 shows an example trellis. A point \(q\in T^U\cap T^S\) is a (trellis) intersection of T. If \(T=(T^U,T^S)\) is a trellis for f, then \(T^{-1}=(T^S,T^U)\) is a trellis for \(f^{-1}\). A closed interval \(T^U[q_1,q_2]\) in \(T^U\) with endpoints, but no interior points, in \(T^S\) is called a segment of \(T^U\); segments of \(T^S\) are defined analogously. The closure of a connected component of \(M\setminus (T^U\cup T^S)\) is a region of T. A region is a bigon if its boundary consists of one unstable and one stable segment, and a rectangle if its boundary consists of two unstable and two stable segments, with interior angles less than \(180^\circ \). We define X to be the set \(\bigcup _{n\in \mathbb {Z}} f^n(T^U \cap T^S)\). An inner bigon is a bigon B such that \({ \#}(B \cap X)=2\). The vertices of an inner bigon are called pseudoneighbours.

Fig. 1
figure 1

The trellis \(T_3\). The point p is a saddle fixed point, and the bold (blue) and thin (red) curves are the stable and unstable manifolds, respectively. The points \(q_i\) (exes) are homoclinic intersection points on the same orbit. The points r and \(r'\) are pseudoneighbours (open dots) and are the vertices of a shaded inner bigon. The regions \(R_0\) and \(R_1\) must contain chaotic dynamics (Color figure online)

Given a trellis \(T=(T^U,T^S)\), we can cut along the unstable curve(s) to obtain a new surface \(C_UM\). Formally, cutting consists of removing each component of \(T^U\) in M and replacing it by a topological circle. This circle is topologically partitioned into two arcs, each of which is a copy of the component of \(T^U\) that was removed. Informally, the result is what one would obtain by cutting along an arc drawn on a piece of paper. Topological details of the construction are discussed in Collins (2004). The stable curve(s) \(T^S\) in M lift to the arcs \(C_UT^S \subset C_UM\). (An arc is a non-self-intersecting curve that begins and ends on the boundary, but otherwise does not intersect the boundary.) The surface diffeomorphism f lifts to a map \(C_U f: C_UM \rightarrow C_UM\). Since \(T^S\) is forward-invariant under f, the lifted stable arcs are invariant under the lift of f, i.e. \(C_U f (C_UT^S) \subset C_UT^S\). Alternatively, we can cut along the stable curves to obtain \(C_SM\) with unstable arcs \(C_ST^U \subset C_SM\). The inverse map \(f^{-1}\) lifts to the map \(C_S f^{-1}: C_SM \rightarrow C_SM\), which leaves the lifted unstable arcs invariant, i.e. \(C_S f^{-1} (C_ST^U) \subset C_ST^U\).

We henceforth make the following assumptions on our trellises, which shall simplify the duality result Theorem 4.4.

Assumption 2.1

  1. (i)

    The surface M is the 2-sphere \(S^2\).Footnote 1

  2. (ii)

    The trellis T is connected, i.e. \(T^U \cup T^S\) is a connected set.

  3. (iii)

    The endpoints of \(T^U\) and \(T^S\) are trellis intersections, \(\partial T^{U}\cup \partial T^S \subset T^U \cap T^S\).

  4. (iv)

    The curves \(T^U\) and \(T^S\) are (topologically) transverse at all intersections except the endpoints \(\partial T^{U}\cup \partial T^S\).

  5. (v)

    The preimage of \(\partial T^U\) and the image of \(\partial T^S\) are trellis intersections, equivalently \(\partial T^S \subset f^{-1}(T^U)\) and \(\partial T^U \subset f(T^S)\).

2.2 Curves and Homotopies

Our main way of studying trellises is via curves embedded in the surfaces M, \(C_SM\), and \(C_UM\). A (directed) curve in a general surface X is a continuous map \(\gamma :I\rightarrow X\), where \(I=[0,1]\) is the unit interval. The initial and final endpoints of \(\gamma \) are the points \(\gamma (0)\) and \(\gamma (1)\), respectively. A curve inXrelY, where \(Y \subset X\) is one-dimensional, is a continuous map \(\alpha : I \rightarrow X\) such that \(\alpha (\{0,1\}) \subset Y\). A multicurve inXrelY is a list of curves \(\{\alpha _1,\ldots ,\alpha _m\}\) rel Y. A curve in X rel Y is exact, denoted \(\alpha : I \twoheadrightarrow X\) rel Y, if the curve only intersects Y at its endpoints, i.e. \(\alpha (I\setminus \{0,1\}) \subset X \setminus Y\). The exact version relY of a curve \(\alpha : I\rightarrow X\) is the multicurve \(\{\alpha _1,\ldots ,\alpha _m\}\), where each exact \(\alpha _i: I\rightarrow X\) rel Y is obtained by cutting \(\alpha \) along the set Y, and the concatenation of the \(\alpha _i\)’s returns the curve \(\alpha \).

For two curves \(\alpha _0\) and \(\alpha _1\) in a surface X rel Y, a homotopy rel Y between \(\alpha _0\) and \(\alpha _1\) is a continuous map \({\alpha _*}:I\times I\rightarrow X\) such that, for all \(s\in I\), \({\alpha }_*(s,0)=\alpha _0(s)\) and \({\alpha }_*(s,1)=\alpha _1(s)\), and such that, for all \(t\in I\), \({\alpha }_*(0,t),{\alpha }_*(1,t) \in Y\). We typically denote such a homotopy as \(\alpha _t\) defined by \(\alpha _t(s)=\alpha _*(s,t)\). The equivalence class, or homotopy class, of all curves \(I\rightarrow X\) homotopic to \(\alpha \) rel Y is denoted \([\alpha ]\).

As usual, assuming Y is simply connected, we define the product of homotopy classes in X rel Y in terms of the catenation of curves. For two curves \(\alpha : I \rightarrow X\) and \(\beta : I \rightarrow X\), for which \(\alpha (1)\) and \(\beta (0)\) lie on the same pathwise-connected component of Y, the product \([\alpha ] \cdot [\beta ]\) is the homotopy class \([\gamma ]\) of the curve \(\gamma : I \rightarrow X\) obtained by concatenating \(\alpha \), \(\delta \), and \(\beta \), where \(\delta \) is an arbitrary curve within Y joining \(\alpha (1)\) to \(\beta (0)\). An explicit parameterisation of \(\gamma \) is given by:

$$\begin{aligned} \gamma (s) = {\left\{ \begin{array}{ll} \alpha (3s) &{}\quad 0 \le s \le 1/3, \\ \delta (3s-1) &{}\quad 1/3 \le s \le 2/3, \\ \beta (3s-2) &{}\quad 2/3 \le s \le 1. \\ \end{array}\right. } \end{aligned}$$
(1)

In general, the collection \(\Pi \) of all homotopy classes \([\alpha ]\) rel Y forms a groupoid (Mackenzie 1987) under the homotopy product.

An arc\(\alpha \) in a surface X is an injective curve with endpoints, but no other points, in \(\partial X\), i.e. \(\alpha \) is an injective, exact curve in X rel \(\partial X\). A homotopy between arcs is an isotopy if each curve \(\alpha _t\) is injective, i.e. an arc. If arcs \(\alpha _0\) and \(\alpha _1\) are homotopic in \(S^2\) or \(D^2\), then \(\alpha _0\) and \(\alpha _1\) are isotopic (Feustel 1966).

We recall that an isotopy of a topological space X is a function \(h:X\times I\rightarrow X\) such that each \(h_t = h(\cdot ,t)\) is a homeomorphism, and an isotopy of the identity is an isotopy such that \(h_0= id \). We say arcs \(\alpha _0\) and \(\alpha _1\) in X are ambient isotopic if there is an isotopy of the identity \(h:X\times I\rightarrow X\) such that \(\alpha _t = h_t \circ \alpha _0\) is a homotopy between \(\alpha _0\) and \(\alpha _1\). Clearly, arcs which are ambient isotopic are isotopic. By the isotopy extension theorem (Hirsch 1976), any isotopy \(\alpha _t\) extends to an ambient isotopy.

A multiarc in X is a list of mutually disjoint arcs \(\{ \alpha _1,\ldots ,\alpha _m \}\). The above results on isotopies of arcs extend easily to multiarcs.

Definition 2.2

(Minimal position/tight) Let X be a surface with boundary and \(\{\alpha _1,\ldots ,\alpha _m\}\) and \(\{\beta _1,\ldots ,\beta _n\}\) multiarcs in X. Then \((\{\alpha _i\},\,\{\beta _j\})\) are in minimal position, or tight, if all intersections of any \(\alpha _i\) with any \(\beta _j\) are topologically transverse and form no bigons, i.e. topological discs bounded by a sub-arc of some \(\alpha _i\) and a sub-arc of some \(\beta _j\).

We now give some results about homotopies and minimal position of multiarcs. Similar results can be found in Collins (2004) and Farb and Margalit (2011). The case where X is a topological disc is straightforward, and the case where X has higher genus can be proved by passing to the universal cover.

Lemma 2.3

(Pulling tight) Let \(\{\alpha _{1},\ldots ,\alpha _{m}\}\) and \(\{\beta _{1},\ldots ,\beta _{n}\}\) be multiarcs in a surface X with boundary \(\partial X\). Then \(\{\alpha _i\}\) is ambient isotopic to a multiarc \(\{\tilde{\alpha }_i\}\) in minimal position with \(\{\beta _{j}\}\).

Proof

We directly construct the isotopy \(h:X\times I\rightarrow X\) of the identity such that \(\alpha _{i,t} = h_t \circ \alpha _i\) satisfies \(\alpha _{i,0} = \alpha _i\) and \(\alpha _{i,1} = \tilde{\alpha }_i\) for all \(i = 1, \ldots ,m\). Over the interval \(0 \le t \le 1/2\), we employ local isotopies near non-transverse crossings to ensure that all crossings of \(\{\alpha _{i,t}\}\) with the \(\{\beta _j\}\) are transverse when \(t = 1/2\). Over the interval \(1/2 \le t \le 1\), we then successively reduce the number of intersections by isotopies supported in small neighbourhoods of discs bounded by a sub-arc of some \(\alpha _{i,t}\) and some \(\beta _j\). In this manner, all bigons are removed, and the multiarcs \(\{ \alpha _{i,1} \}\) and \(\{\beta _j\}\) are tight. \(\square \)

An example of pulling tight is shown in Fig. 2

Fig. 2
figure 2

Pulling tight a multiarc (Color figure online)

The following lemma shows that if the multiarcs \(\{ \alpha _i \}\) and \(\{ \beta _j \}\) are in minimal position, then the number of intersections of any \(\alpha _i\) with the \(\beta _j\) is minimal, and the relative ordering of the intersections is well defined.

Lemma 2.4

(Essentialness of the intersections of tight multiarcs) Suppose \(\{\alpha _1,\ldots ,\alpha _m \}\) and \(\{\beta _1,\ldots ,\beta _n\}\) are multiarcs in minimal position. Consider an arbitrary i, and suppose there are \(\ell \) intersections between \(\alpha _i\) and the \(\{\beta _1, \ldots , \beta _n \}\). Let \(s_{i,1}<s_{i,2}<\cdots <s_{i,\ell }\) denote the parameters of the intersection points, i.e. for each \(k=1, \ldots , \ell \), \(\alpha _i(s_{i,k}) \in \beta _{j_k}(I)\), for some \(j_k\) and \(\alpha _i(s)\not \in \beta _{j}(I)\) for all \(s\ne s_1,\ldots ,s_\ell \) and \(j=1,\ldots ,n\). Suppose \(\tilde{\alpha }_i\) is homotopic to \(\alpha _i\). Then there exist parameters \(\tilde{s}_{i,1}<\tilde{s}_{i,2}<\cdots <\tilde{s}_{i,\ell }\) such that \(\tilde{\alpha }_i(\tilde{s}_{i,k}) \in \beta _{j_k}(I)\) for all k. That is, there is a subset of the intersections between \(\tilde{\alpha }_i\) and \(\{\beta _1, \ldots , \beta _n\}\) that occur in the same order and with the same \(\beta _j\)’s as \(\alpha _i\).

Proof

The proof is a modification of that for Lemma 2.3. After the initial phase of making all intersections non-degenerate, the pulling-tight procedure can be performed by successively removing adjacent pairs of intersections and without introducing new intersections. Since all pulling tight removes bigons, the remaining intersections retain the same relative ordering regardless of how the pulling tight is performed. \(\square \)

We say the intersections of a tight multiarc of \(\{[\alpha _1],\ldots ,[\alpha _m]\}\) with \(\{\beta _1,\ldots ,\beta _n\}\) are the essential or forced intersections of the \([\alpha _i]\) with the \(\beta _j\).

Finally, we show that the minimal position is unique up to topological conjugacy.

Lemma 2.5

(Topological conjugacy of tight multiarcs) Suppose \((\{\alpha _1, \ldots , \alpha _m \},\{\beta _1, \ldots , \beta _n\})\) and \((\{\tilde{\alpha }_1, \ldots , \tilde{\alpha }_m \},\{\tilde{\beta }_1, \ldots , \tilde{\beta _n}\})\) are both tight multiarc representatives of the same homotopy classes. Then there is a homeomorphism h of X such that \(h\circ \alpha _i\) equals \(\tilde{\alpha }_i\), up to reparameterisation of the multiarcs, for all \(i=1,\ldots ,m\) and \(h\circ \beta _j\) equals \(\tilde{\beta }_j\), up to reparameterisation, for all \(j=1,\ldots ,n\).

Proof

We first define a homeomorphism \(h_1\) taking the \(\beta _j\) to \(\tilde{\beta }_j\), for all \(j=1,\ldots ,n\). We then define a homeomorphism \(h_2\) that preserves the multiarcs \(\tilde{\beta }_j\) and that takes intersections of the \(h_1\circ \alpha _i\) with the \(\tilde{\beta }_j\) to those of the \(\tilde{\alpha }_i\) with \(\tilde{\beta }_j\), for all i and j; the homeomorphism \(h_2\) exists since the ordering of the intersections between \(\tilde{\beta }_j\) and \(h_1\circ \alpha _i\) is the same as those between \(\tilde{\beta }_j\) and \(\tilde{\alpha }_i\) (Lemma 2.4). We finally define a homeomorphism \(h_3\) that leaves all points in the multiarcs \(\tilde{\beta }_j\) invariant and also takes \(h_2\circ h_1\circ \alpha _i\) to \(\tilde{\alpha }_i\); the homeomorphism \(h_3\) exists since the two multiarcs are homotopic in the surface obtained by cutting along the \(\tilde{\beta }_j\)’s. The homeomorphism \(h = h_3 \circ h_2\circ h_1\) then satisfies the requirements of the lemma. \(\square \)

Similar to the case above, we now define the notion of a multiarc being in minimal position, or tight, with respect to a collection of mutually disjoint trees. We say a multitree is a collection \(\{t_1,\ldots ,t_n\}\) of mutually disjoint trees embedded in X with endpoints attached to the boundary of X.

Definition 2.6

(Minimal position/tight for trees) Let X be a surface with boundary, and \(\{t_1,\ldots ,t_n\}\) a multitree in X. Let \(\{\alpha _1,\ldots ,\alpha _m\}\) be a multiarc in X. Then the \(\{ \alpha _i \}\) are in minimal position, or tight, with respect to the \(t_j\)’s if all intersections of any \(\alpha _i\) with any \(t_j\) are topologically transverse and if there are no discs bounded by a sub-arc of some \(\alpha _i\) and a sub-arc of \(\bigcup _{j=1}^{n}t_j\).

Unlike the prior case in Definition 2.2, it is not always possible to pull the arcs \(\alpha _i\) tight with respect to the \(t_j\)’s. Figure 3 shows both the cases in which an arc cannot be pulled tight and in which an arc can. However, if each \(\alpha _i\) can be pulled tight with respect to each tree \(t_j\) (which on the disc is equivalent to \(\alpha _i\) crossing each \(t_j\) at most once), then the natural extension of Lemmas 2.3 and 2.5 hold.

Fig. 3
figure 3

Pulling tight arcs relative to a tree. a The homotopic arcs \(\alpha _0\) and \(\alpha _1\) cannot be pulled tight. b The arc \(\alpha \) can be pulled tight into \(\tilde{\alpha }\) (Color figure online)

Lemma 2.7

Let X be a surface with boundary, \(\{t_1,\ldots ,t_n\}\) a multitree in X, and \(\{\alpha _1,\ldots ,\alpha _m\}\) a multiarc in X. Suppose each \(\alpha _i\) is homotopic to an arc which is in minimal position with respect to each tree \(t_j\). Then \(\{\alpha _i\}\) is ambient isotopic to a multiarc \(\{\tilde{\alpha }_i\}\) in minimal position with \(\{t_{j}\}\).

Proof

Notice that pulling tight either involves removing a pair of adjacent intersections, or combining a pair of intersections by pushing them over a vertex. This can be performed successively as in the proof of Lemma 2.3. \(\square \)

Lemma 2.8

Suppose \(\{\alpha _1, \ldots , \alpha _m \}\) and \(\{\tilde{\alpha }_1, \ldots , \tilde{\alpha }_m \}\), are both tight multiarc representatives of the same homotopy classes with respect to the multitree \(\{t_1,\ldots , t_n\}\). Then there is a homeomorphism h of X such that \(h\circ \alpha _i\) equals \(\tilde{\alpha }_i\), up to reparameterisation of the multiarcs, for all \(i=1,\ldots ,m.\)

Proof

The relative ordering of the intersections of the \(\{\alpha _i\}\) with the \(\{t_j\}\) in minimal position is unique, following a similar argument to that used for Lemma 2.4. Existence of the homeomorphism then follows from the argument for Lemma 2.5. \(\square \)

2.3 Surface-embedded graphs

We now give a brief overview of the use of graph maps in surface dynamics. Self-maps of surface-embedded graphs with a differentiable structure (known as train-tracks) were used in Thurston (1988) to represent the dynamics of pseudo-Anosov surface homeomorphisms, and in the proof of Thurston’s classification theorem by Bestvina and Handel (1995). We will view a graph both as a combinatorial object and as a topological object.

Combinatorially, a graph G is a pair (VE), where V is a finite set of vertices and E is a finite set of undirected edges, each of which has two directed versions. The reverse of a directed edge e is denoted \(\bar{e}\). The initial vertex of a directed edge e is denoted \(\imath (e)\). An edge-path\(\epsilon \) is a list of directed edges \(e_1e_2\cdots e_k\) such that \(\imath (\bar{e}_i)=\imath (e_{i+1})\) for all \(i=1,\ldots ,k-1\). The reverse of the edge-path \(\epsilon \) is \(\bar{\epsilon }=\bar{e}_k\bar{e}_{k-1}\cdots \bar{e}_1\). The edge-path \(\epsilon \) is a loop if \(\imath (e_1) = \imath (\bar{e}_k)\). The edge-path \(\epsilon \) is said to back-track if it has a sub-string \(\cdots e\bar{e}\cdots \) for some directed edge e.

Topologically, a graph is a one-dimensional CW (closure-finite in the weak topology) complex, and maps between graphs are continuous functions mapping vertices to vertices. We will be interested in graphs embedded in an oriented surface M, which may have punctures or boundary components. A face of a graph G embedded in a surface M is a component of \(M\setminus G\).

We say a surface-embedded graph G is a skeleton graph if G is a deformation-retract of M via a deformation retraction \(r:M\rightarrow G\), or equivalently, if every component of \(M\setminus G\) is a topological annulus with one boundary component in G and one in \(\partial M\). (See Fig. 4.) If G is a skeleton graph in M, then any closed curve \(\alpha \) in M is homotopic to a closed edge-path in G, and this path is unique (up to cyclic permutation of edges) if it does not back-track.

Fig. 4
figure 4

A skeleton graph G of the cut surface \(C_UM\) (Color figure online)

For a surface-embedded graph G, a surface embedding of a self-map \(g:G\rightarrow G\) is an embedding \(\hat{g}:G\rightarrow \widehat{G}\), where \(\widehat{G}\) is a neighbourhood of G which deformation-retracts onto G via a deformation retraction \(r:\widehat{G}\rightarrow G\) such that \(g=r\circ \hat{g}\). (See Fig. 5.) If G is a skeleton graph in M, f is a homeomorphism of M, and \(r:M\rightarrow G\) is a deformation-retraction, then \(g=r\circ f|_G\) is a self-map of G which is surface-embeddable via the embedding \(f|_G\).

The embedding structure of a surface-embedded graph is given by the relation \(\lhd \) describing the (anticlockwise) cyclic ordering of outgoing-directed edges around a vertex. We say that an edge-path \(\epsilon =e_1e_2\cdots e_k\) is peripheral if either for all i, \(\bar{e}_i\lhd e_{i+1}\) or for all i, \(e_{i+1}\lhd \bar{e}_i\). The facesF of a surface-embedded graph correspond to peripheral loops.

The dual of a surface-embedded graph G is a surface-embedded graph \(G^*\) with one vertex for each face of G, and one edge for each edge of G. For each directed edge e of G, the dual (directed) edge \(e^*\) crosses e once, transversely and such that \((e,e^*)\) defines a positively oriented frame. The cyclic ordering of outgoing-directed edges around a vertex of \(G^*\) is given by \(e_i^*\lhd e_j^*\) if \(\bar{e}_j\lhd e_i\). The dual \({G^*}^*\) of \(G^*\) is canonically isomorphic to G.

If G is the skeleton graph of a surface M with boundary, then each face of G is an annulus and the vertex of \(G^*\) corresponding to the face may be identified with that part of the boundary of the annulus formed by \(\partial M\). In this case, the edges of \(G^*\) may be realised as mutually disjoint arcs in M.

Fig. 5
figure 5

a A surface-embedded graph, which is a sub-graph of the graph of Fig. 4. The ordering at vertex w is given by \(\bar{b}_1\lhd \bar{b}_2\lhd \bar{b}_3\lhd \bar{b}_1\). b A surface embedding of the graph map g is also shown, with \(g(z_0)=g(z_2)=z_0\), \(g(z_4)=z_2\), \(g(z_6)=g(z_8)=z_4\), \(g(a)=a\bar{z}_8z_6b_1\bar{b}_2\), \(g(b_1)=b_2\), \(g(b_2)=b_3\) and \(g(b_3)=a\bar{z}_8z_6b\). The vertex w is fixed, \(g(w)=w\), and g is not locally injective at vertex v (Color figure online)

Combinatorially, a graph map is a self-map of G specified by mapping each vertex v to a vertex g(v), and each directed edge e to an edge-pathg(e) such that \(\imath (g(e))=g(\imath (e))\). Such a combinatorial graph map g is efficient if \(g^n(e)\) does not back-track for any edge e and any \(n>0\).

For a graph map g, the transition matrixA of g has components \(A_{ij}\) that count the number of times \(g(e_j)\) contains the edge \(e_i\) (in either direction). Since the matrix A consists of positive integer elements, its maximal eigenvalue \(\lambda \) is strictly positive and has positive left and right eigenvectors; \(\log \lambda \) is the entropy of g. The left eigenvector l gives the length of each edge, and the right eigenvector w gives the width of each edge. An edge is infinitesimal if it has zero length or width. We say g is weakly irreducible if w is the only positive (right) eigenvector of A whose eigenvalue is not 1.

We often wish to simplify the representation of a graph map. The most important way of doing this is by combining edges. Suppose there are edges \(e_1\) and \(e_2\) such that \(\bar{e}_1\) and \(e_2\) are the only incident edges at some vertex v. Suppose further that no other vertex maps to v. Then whenever \(e_1\) or \(e_2\) occurs in an edge-path \(\alpha =g(a)\), they occur together, either as \(e_1e_2\) or as \(\bar{e}_2\bar{e}_1\). We can then simplify the graph map by eliminating vertex v and combining \(e_1\) and \(e_2\) into a single edge e. We denote this transformation symbolically by \(e=e_1e_2\). It is easy to show that if \(g_1\) and \(g_2\) are related by combining edges, then the entropy of \(g_1\) and \(g_2\) are equal. We will also need the inverse transformation, that of splitting edges. Finally, we can also simplify the transition matrix by identifying and relabelling the edges. Suppose \(g(e_1)=g(e_2)\). Then we can label both \(e_1\) and \(e_2\) by e, which we denote symbolically by \(e=e_1=e_2\).

2.4 Controlled graphs

In the following, we assume that T is a trellis of a map \(f: M \rightarrow M\), satisfying Assumptions 2.1.

Definition 2.9

(Controlled graph) Let G be a graph embedded in M. Call the edges of G that cross Tcontrol edges and those that do not cross Tfree edges. Then G is a stable (unstable) controlled graph, relative to T, if there is a pairing between the control edges of G and the unstable (stable) edges of T such that (i) Each control edge of G intersects T at exactly one unstable (stable) edge of T. (ii) Each unstable (stable) edge of T intersects exactly one control edge of G. The free edges of G are said to be of stable (unstable) type.

The tree in Fig. 3 and the skeleton graph in Fig. 4 are examples of controlled graphs that we have already encountered.

Recall the construction of the dual of a surface-embedded graph from Sect. 2.3. For the case of a controlled graph, such as the homotopy graph of a trellis, we make some adjustments to the construction.

Definition 2.10

(Controlled dual graph) Let \(G^U\) be an unstable controlled graph with control edges \(C^U\) crossing segments of \(T^S\) and free edges \(E^U\). Then the controlled dual graph \({(G^U)}^{*}\) is the standard dual graph of the graph whose edges are the segments of \(T^U\) and the free edges \(E^U\) and which is embedded in the surface \(M\setminus (T^S\cup C^U)\). The controlled dual graph is a stable controlled graph whose control edges are those crossing \(T^U\) and whose free edges are those crossing \(E^U\). An analogous definition applies for the dual \((G^S)^*\) of a stable controlled graph \(G^S\).

An example of a controlled graph and its controlled dual is given in Fig. 12, which will be discussed in detail in Sect. 3.3. The following algorithm explicitly constructs the controlled dual.

Algorithm 2.11

The controlled dual graph \((G^U)^{*}\) of \(G^U\) is constructed by the following steps. The construction of the dual to a stable controlled graph \(G^S\) is entirely analogous.

  1. (i)

    Assign a vertex for each component of \(M\setminus (T^U\cup T^S\cup G^U)\).

  2. (ii)

    For every segment U of \(T^U\), place a control edge z across U, joining the vertices in the components of \(M\setminus (T^U\cup T^S\cup G)\) separated by U.

  3. (iii)

    For every free edge \(e^u\) of \(G^U\), place a free edge across \(e^u\), joining the vertices in the components of \(M\setminus (T^U\cup T^S\cup G)\) separated by \(e^u\).

The following lemma shows that the construction merits the name “dual”.

Lemma 2.12

If G is a stable or unstable controlled graph, then \({(G^*)}^*\) is canonically isomorphic to G.

Proof

Immediate from the construction, since the control edges of \({(G^*)}^{*}\) are precisely those of G and the free edges are the usual duals of the dual edges. \(\square \)

We use the terminology spanning graph for a controlled graph all of whose vertices are the endpoints of control edges. The following lemma shows that spanning graphs and skeleton graphs are mutual duals.

Lemma 2.13

Suppose T is a trellis satisfying Assumptions 2.1 and G is either a stable or unstable controlled graph.

  1. (i)

    If G is a spanning graph, then \(G^*\) is a skeleton graph.

  2. (ii)

    If G is a skeleton graph, then \(G^*\) is a spanning graph.

Proof

  1. (i)

    Assume G is spanning. In each region R of T, the restriction of \(G^*\) to R is simply connected, and hence a skeleton graph, since every vertex of G has a controlled edge that prevents loops in \(G^*\).

  2. (ii)

    Assume G is a skeleton graph. If G is of unstable type, then every component F of \(M\setminus (T^U\cup T^S\cup G)\) contains a segment U of \(T^U\) on its boundary. So the vertex of \(G^*\) within F is the endpoint of a control edge crossing U. The case of a stable-type graph is analogous.

\(\square \)

Definition 2.14

(Controlled graph map) For an unstable controlled graph G, a surface-embedded graph map g acting on G is called a controlled graph map if each control edge z of G maps to a control edge g(z) such that if z crosses segment S of \(T^S\), then g(z) crosses the segment \(S'\) that contains f(S). A controlled graph map for a stable controlled graph is defined analogously using the inverse map \(f^{-1}\).

Definition 2.15

(Optimal controlled graph map) A controlled graph map \(g:G \rightarrow G\) is said to be optimal if g is locally injective on the set of free edges.

3 Homotopy and Skeleton Dynamics

In this section we study trellises based on homotopy classes of curves joining stable segments. This approach corresponds to the homotopic lobe dynamics of Mitchell et al. (2003), Mitchell and Delos (2006), and Mitchell (2009, 2012b) and the strips of Rom-Kedar (1994).

3.1 Dynamics on the Fundamental Groupoid

Given a trellis T in M, an unstable-type curve is a curve \(\alpha \) in \(C_UM\) rel \(C_UT^S\), i.e. a continuous map \(\alpha : I \rightarrow C_UM\), where \(I=[0,1]\) and \(\alpha (\{0,1\}) \subset C_UT^S\). (Recall Sects. 2.1 and 2.2.) Typically, we draw an unstable-type curve as a curve in \(M\setminus T^U\), which has the same homotopy class as \(C_UM\). By definition, \(\alpha \) is exact if \(\alpha \) only intersects \(C_UT^S\) at the endpoints of \(\alpha \). We say that an unstable-type curve \(\alpha \)crosses\(C_UT^S\) if there is a topologically transverse crossing of \(\alpha \) with \(C_UT^S\); this crossing need not be at a point, but may contain an interval. For simplicity, we shall also say that \(\alpha \) crosses \(T^S\), where the cutting by \(T^U\) is implicit.

We say two unstable-type curves \(\alpha _0, \alpha _1:I\rightarrow C_UM\) are U-homotopic, denoted \(\alpha _0 \sim _u \alpha _1\), if they are homotopic in \(C_UM\) rel \(C_UT^S\).Footnote 2 Any unstable-type curve \(\alpha : I\rightarrow C_UM\) is homotopic to a tight representative\(\alpha ': I\rightarrow C_UM\) that has a minimum number of intersections with \(C_UT^S\). As discussed in Sect. 2.2, since \(C_UT^S\) is simply connected, the catenation of curves leads to a well-defined product between classes \([\alpha ]_u\) and \([\beta ]_u\) if \(\alpha (1)\) and \(\beta (0)\) lie on the same component of \(C_UT^S\). Under this product, the collection of U-homotopy classes \(\Pi _U\) forms a groupoid (Mackenzie 1987). A curve is trivial if it is homotopic to a curve lying entirely in \(T^S\), and a homotopy class is trivial if it contains a trivial curve; trivial classes play the role of identity elements in \(\Pi _U\). We shall denote trivial classes by \([\bullet ]\). As in Sect. 2.3, we use an overbar to denote the reverse \(\bar{\alpha }\) of a curve \(\alpha \). The reverse of a curve corresponds to the groupoid inverse of the homotopy class, which we also denote by an overbar, i.e. \([\bar{\alpha }]_u = \overline{[\alpha ]}_u\), where \(\overline{[\alpha ]}_u [\alpha ]_u = [\bullet ]\). See Fig. 6 for an illustration of these concepts.

Since \(T^S\) is forward-invariant and \(T^U\) is backward-invariant, the image of an unstable-type curve \(\alpha : I \rightarrow C_UM\) is also an unstable-type curve. We thus define the homotopy image\(f([\alpha ]_u) = [f \circ \alpha ]_u\). Clearly, \(f(a b) = f(a) f(b)\) and \(f(\bar{a}) = \overline{f(a)}\), for any homotopy classes a and b. Thus, f is a groupoid homomorphism. However, f is not a groupoid isomorphism, since f(a) may equal a trivial class, for some a. (See discussion of inert classes below.)

Fig. 6
figure 6

Unstable-type curves \(\alpha _0\), \(\alpha _1\), \(\alpha _2\), \(\beta _1\), \(\beta _2\), \(\beta _3\), \(\gamma _0\), \(\gamma _1\), \(\delta \), and \(\epsilon \). The curves \(\alpha _0\), \(\beta _1\), \(\beta _2\), \(\gamma _0\), \(\gamma _1\), and \(\delta \) represent homotopy elements. The curve \(\epsilon \) represents a trivial homotopy element. The curves \(\gamma _0\) and \(\gamma _1\) are U-homotopic, since the initial endpoint of \(\gamma _t\) can pass through the point \(q_3\). The homotopy classes map \(f ([\alpha _i]) =[\alpha _{i+1}]\) for \(i=0,1\) and \(f ([\beta _i])=[\beta _{i+1}]\) for \(i=1,2\). Note that \(\alpha _2\) has six intersections with \(T^S\) (including endpoints), since although \(\alpha _2\) is homotopic to the homotopy class \(\beta _3\) with four intersections, the intersections of \(\alpha _2\) with \(T^S(q_1,q_2)\) are forced by the intersections of \(\alpha _1\) with \(T^S(q_0,q_1)\) (Color figure online)

An atomic class is the homotopy class of a non-trivial exact curve \(\alpha :I\twoheadrightarrow C_UM\). An atomic class is a segment class if it contains a segment of \(T^U\). (Note that the segment classes generate all of \(\Pi _U\).) An atomic class is a bridge class if it contains an interval of the full unstable manifold \(W^U\); note that this interval itself may intersect \(T^S\) multiple times. An atomic class is inert if it becomes trivial under a sufficient number of iterations. The inert classes form sequences \(u_0, u_1, \ldots \), which begin with an initial class \(u_0\) and for which \(u_i\) maps to \(u_{i+1}\). Eventually, for some n, all subsequent inert classes in the sequence are trivial, \(u_n, u_{n+1}, u_{n+2}, \ldots = [\bullet ]\).

Any non-trivial homotopy class \([\alpha ]_u\) can be written as a product of atomic classes; there is a unique such product with the minimum number of atomic classes. We call this the concise product. If \([\alpha ]_u\) has concise product \(a_1 \ldots a_n\), then a tight representative \(\alpha \) of \([\alpha ]_u\) is the concatenation of exact curves \(\alpha _i: I \twoheadrightarrow C_UM\), \(i = 1,\ldots ,n\), for which \([\alpha _i] _u = a_i\). Hence, \(\alpha \) has exactly \(n+1\) intersections with \(T^S\) (including endpoints), and an arbitrary \(\alpha ' \in [\alpha ]_u\) has at least\(n+1\) intersections with \(T^S\). Thus, the concise product of a homotopy class reveals the essential intersections with \(T^S\) of an arbitrary unstable-type curve in the class.

Of special importance is the concise product representative of the image \(f([\alpha ]_u)\) of a bridge class \([\alpha ]_u\); clearly, this product consists of only bridge classes. This forms a canonical presentation of the image of f on \(\Pi _U\), referred to as the (concise) homotopy action.

Fig. 7
figure 7

The a unstable and b stable bridge classes for the trellis \(T_3\) (Color figure online)

Example 3.1

The bridge classes in Fig. 7a yield the following homotopy action. For simplicity, we drop the u-subscript on the homotopy classes.

$$\begin{aligned} f([\alpha ^u])= & {} [\alpha ^u]\cdot [\gamma ^u]\cdot [\beta _1^u], \quad f([\beta _1^u]) = [\beta _2^u], \quad f([\beta _2^u]) = [\beta _3^u], \nonumber \\ f([\beta _3^u])= & {} [\alpha ^u]\cdot [\gamma ^u]\cdot [\beta _1^u] \quad f([\gamma ^u]) = [\bullet ], \quad f([\delta ^u]) = [\alpha ^u]\cdot [\gamma ^u]\cdot [\beta _1^u], \nonumber \\ f([\epsilon _1^u])= & {} [\bullet ], \quad f([\epsilon _2^u]) = [\epsilon _1^u], \quad f([\epsilon _3^u]) = [\bar{\epsilon }_1^u]. \end{aligned}$$
(2)

The entire unstable homotopy formalism for f can be translated into a stable homotopy formalism by using the map \(f^{-1}\) and the trellis \((T^S, T^U)\). Thus, a stable-type curve\(\alpha :I\rightarrow C_SM\) is a curve in \(C_SM\) rel \(C_ST^U\). Such a curve has a stable homotopy class \([\alpha ^s]_s\), with an inverse homotopy image \(f^{-1}([\alpha ^s]_s) = [f^{-1} \circ \alpha ^s]_s\). For simplicity, we shall drop the s / u subscript on a homotopy class \([ \; \; \; ]_{s/u}\) when the stability type of the curve inside the brackets is clear, e.g. \([\alpha ^s]_s = [\alpha ^s]\) and \([\alpha ^u]_u = [\alpha ^u]\), as we have already done in (2).

Example 3.2

As an example of the stable homotopy action, the stable-type bridge classes in Fig. 7b map as

$$\begin{aligned} f^{-1}([\alpha ^s])= & {} [\alpha ^s]\cdot [\delta ^s]\cdot [\beta _1^s], \quad f^{-1}([\beta _1^s]) = [\beta _2^s], \quad f^{-1}([\beta _2^s]) = [\beta _3^s], \nonumber \\ f^{-1}([\beta _3^s])= & {} [\alpha ^s]\cdot [\delta ^s]\cdot [\beta _1^s], \quad f^{-1}([\gamma ^s]) = [\alpha ^s]\cdot [\delta ^s]\cdot [\beta _1^s], \nonumber \\ f^{-1}([\delta ^s])= & {} [\bullet ], \quad f^{-1}([\epsilon _1^s]) = [\bullet ], \quad f^{-1}([\epsilon _2^s]) = [\epsilon _1^s], \quad f^{-1}([\epsilon _3^s]) = [\bar{\epsilon }_1^s] . \nonumber \\ \end{aligned}$$
(3)
Fig. 8
figure 8

The trellis \(T_4\), with a valence-4 region, showing the bridge classes for a the reduced unstable action and b the reduced stable action (Color figure online)

Example 3.3

Figure 8 shows a more complicated example of the homotopy action. All the bridge classes are segment classes, except for \(\gamma _5^u\) (Fig. 8a) and \(\gamma _3^s\) (Fig. 8b). Note that \(\gamma _3^s \sim _s \bar{\gamma }^s_1 \bar{\gamma }^s_2\) and \(\gamma _3^s \sim _s \bar{\gamma }^s_5 \bar{\gamma }^s_4\). The stable-type bridge classes depicted in 8b map as

$$\begin{aligned} f^{-1}([\alpha ^s]])= & {} [\alpha ^s] \cdot [\bar{\iota }_1^s] \cdot [\epsilon ^s], \quad f^{-1}([\beta ^s]) = [\alpha ^s] \cdot [\bar{\iota }_1^s] \cdot [\epsilon ^s], \quad f^{-1}([\epsilon ^s]) = [\bar{\gamma }_4^s], \nonumber \\ f^{-1}([\gamma _1^s])= & {} [\beta ^s] \cdot [\bar{\iota }_1^s] \cdot [\delta _3^s], \quad f^{-1}([\gamma _2^s]) = [\gamma _1^s] \cdot [\bar{\iota }_3^s] \cdot [\delta _2^s] \cdot [\iota _2^s] \cdot [\bar{\beta }^s], \nonumber \\ f^{-1}([\gamma _3^s])= & {} [\delta _1^s] \cdot [\bar{\iota }_3^s] \cdot [\bar{\gamma }_1^s], \quad f^{-1}([\gamma _4^s]) = [\bar{\gamma }_2^s], \quad f^{-1}([\gamma _5^s]) = [\bar{\gamma }_3^s] \cdot [\iota _3^s] \cdot [\bar{\delta }_1^s], \nonumber \\ f^{-1}([\delta _1^s])= & {} [\bar{\gamma }_3^s] \cdot [\iota _3^s] \cdot [\bar{\delta }_1^s], \quad f^{-1}([\delta _2^s]) = [\delta _1^s] \cdot [\bar{\iota }_3^s] \cdot [\bar{\gamma }_5^s], \quad f^{-1}([\delta _3^s]) = [\bar{\gamma }_4^s]. \nonumber \\ \end{aligned}$$
(4)

The homotopic approach is summarised by the following algorithm, which generates the concise homotopy action induced by a trellis.

Algorithm 3.4

(Construction of the homotopy action) For a diffeomorphism f with trellis T, satisfying Assumptions 2.1, the following construction returns a set of bridge classes \(H^U\) and the map \(h^u\) that takes a bridge class \(a \in H^U\) and returns the string of bridge classes \(h^u(a) \in (H^U)^*\) representing the concise product for f(a). [Here \((H^U)^*\) is the space of strings drawn from \(H^U\).]

  1. (i)

    Determine all segment classes of \(T^U\), i.e. the set of unstable bridge classes that contain a segment of \(T^U\), assigning to each class an arbitrary orientation. (Note that each unstable segment of \(T^U\) gives rise to two unstable homotopy classes in \(C_UM\), one on each side of the cut.) Call the resulting set \(H^U\).

  2. (ii)

    Remove from \(H^U\) all trivial bridge classes and all duplicate undirected bridge classes. (Note that trivial homotopy classes are exactly those lying in a bigon, and duplicate classes are exactly those lying in a common rectangle.)

  3. (iii)

    For each bridge class \([\alpha ] \in H^U\), construct \(h^u([\alpha ])\) by applying f to \(\alpha \) and expressing \([f(\alpha )]\) as the concise product.

  4. (iv)

    Insert any new non-trivial bridge classes from the above concise products into \(H^U\).

  5. (v)

    Repeat from (iii) until no additional bridge classes are added.

These first five steps construct the full homotopy action. The recurrent homotopy action includes the following additional step.

  1. R

    Recursively remove any homotopy elements from \(H^U\) which have no preimages under \(h^u\).

Alternatively, the collapsed homotopy action includes the following additional step.

  1. C

    Remove all inert classes from \(H^U\), that is those bridge classes that map to a trivial class. Then, identify those bridge classes that only differ by an inert class, i.e. for a given bridge class a, if either au, va, or vau were also a bridge class, for inert classes u and v, then that class would be identified with a.

Either of steps R or C can be applied by itself, or they can be applied in combination, forming the recurrent collapsed homotopy action, or what we call the reduced homotopy action, for short.

Note that step C can be viewed as passing to the groupoid quotient under the kernel of \(f^n\), for a sufficiently large n. The induced action of f on the quotient groupoid is then injective. Step R ensures that the resulting action is surjective. Applying both steps R and C guarantees that the resulting action of f is a groupoid automorphism.

The following proposition summarises the properties of the homotopy action \(h^u\).

Proposition 3.5

Algorithm 3.4 constructs a set of homotopy classes \(H^U=\{[\alpha _1^u],\ldots ,[\alpha ^u_m]\}\) and the presentation of a map \(h^u:H^U\rightarrow (H^U)^*\) such that

  1. (i)

    \(H^U\), defined for the full homotopy action, contains every bridge class.

  2. (ii)

    It is possible to find exact representatives \(\alpha _i^u: I \twoheadrightarrow C_UM\) of all the bridge classes such that the \(\alpha _i^u\)’s are mutually disjoint. Each representative \(\alpha _i^u\) thus lies entirely within a region \(R_i\), uniquely associated with \([\alpha _i^u]\).

Writing \(h^u([\alpha _i^u]) = [\beta _{i,1}^u]\cdot [\beta _{i,2}^u]\cdots [\beta _{i,k_i}^u]\), then for all indices \(j = 1, \ldots , k_i\)

  1. (iii)

    \(\beta _{i,j}^u(1)\) lies in the same segment of \(C_U T^S\) as \(\beta _{i,j+1}^u(0)\).

  2. (iv)

    \(\beta _{i,j}^u\) and \(\beta _{i,j+1}^u\) lie in different regions of T.

  3. (v)

    No \(\beta _{i,j}^u\) is trivial.

Proof

Immediate from the construction. \(\square \)

Algorithm 3.4 is a constructive method for computing symbolic dynamics that does not rely on a Bestvina–Handel pruning-type algorithm. The homotopy action can be used to show the existence of orbits of f. The following result is similar to that of Rom-Kedar (1994).

Theorem 3.6

Suppose there is an infinite sequence of homotopy elements \(([\alpha _0^u],[\alpha _1^u],\ldots )\) in \(H^U\) such that \(h^u([\alpha _i^u])\) contains \([\alpha _{i+1}^u]\) for all i. Let \(R_i\) be the region containing \([\alpha _i^u]\) for all i. Then there is an orbit \((x_0,x_1,\ldots )\) of f such that \(x_i\in R_i\) for all i.

Proof

We recursively construct a sequence of curves \(\beta _i^u\) such that for all \(i \ge 0\): (i) \([\beta _i^u] = [\alpha _i^u]\), (ii) \(\beta _i^u([0,1]) \subset R_i\), and (iii) \(f(\beta _{i}^u([0,1])) \cap R_{i+1}^\circ \supset \beta _{i+1}^u([0,1]) \cap R_{i+1}^\circ \), where \(R_i^\circ \) denotes the interior of \(R_i\). By Prop. 3.5, part (ii), we choose \(\beta _0^u \in [\alpha _0^u]\) so that \(\beta _0^u\) lies entirely in the region \(R_0\). For a given i, assume we have chosen \(\beta _j^u\), \(j \le i\), satisfying (i) – (iii). Since \([\alpha _{i+1}^u]\) is an element of the concise description of \(f([\beta _{i}^u])\), there is a segment \(\delta _{i+1}\) of \(f\circ \beta _{i}^u\) such that \(\delta _{i+1}(0),\delta _{i+1}(1)\in T^S\) and \(\delta _{i+1} \sim _u \alpha _{i+1}^u\). Since each component of \(M\setminus (T^U\cup T^S)\) is simply connected by Assumption 2.1(i), there is a curve \(\beta _{i+1}^u\) in \(R_{i+1}\) homotopic to \(\delta _{i+1}\) such that \(\delta _{i+1}(s)=\beta _{i+1}^u(s)\) whenever \(\beta _{i+1}^u(s)\in R^\circ _{i+1}\). This completes the inductive proof for the existence of the \(\beta _i^u\)’s.

By conditions (ii) and (iii), for any \(k \ge 0\), any point in \(\beta _k^u([0,1])\) that does not lie in \(T^S\) must equal \(f^k(x)\) for some \(x \in \beta _0^u([0,1])\), and further, for any \(i<k\), \(f^i(x)\in \beta _i^u([0,1])\subset R_i\). Hence, the set \(A_k = \{ x \in R_0 | f^i(x) \in R_i, \forall i\leqslant k \}\) is non-empty. Since the sets \(A_k\) are also compact and nested (\(A_{k+1} \subset A_k\)), they have a non-empty intersection, which contains a point x such that \(f^i(x)\in R_i\) for all i. \(\square \)

Since the regions form a topological partition, and since all points on the stable region-boundaries are asymptotically forward stable to each other and all points on the unstable region-boundaries are asymptotically backward stable, we can deduce the following result on topological entropy. (See Rom-Kedar 1994; Collins 2004.)

Corollary 3.7

The topological entropy of f is at least the topological entropy of \(h^u\), i.e. \(h_{\mathrm {top}}(h^u)\leqslant h_{\mathrm {top}}(f)\).

3.2 The Homotopy Graph

To clarify the organisation of the (unstable) bridge classes, we seek to represent these homotopy classes as edges of a surface-embedded graph. Ideally, we would like a graph whose edges correspond to the bridge classes and whose vertices correspond to stable segments. In the simplest case (e.g. Fig. 7a), we may select the edges so that they share common endpoints; if edge \(\alpha \) and \(\beta \) both terminate on the same component of \(\mathcal {C}_{U}{T^S}\), then they can be chosen to have the same endpoint. However, this procedure fails for more complex situations, such as the local topologies in Fig. 9(a1), (a2). Consider the edges (thick red lines) shown in Fig. 9(b1). We would like to distort the three on the right side so that they share a common endpoint with the edge on the left, but this is impossible without at least one of the curves passing through the cut along \(T^U\) (thin red lines). A similar problem is evident in Fig. 9(b2).

Fig. 9
figure 9

Two examples (top and bottom rows) of handling locally complex trellis topologies. a The local trellis topology itself with unstable (red) and stable (blue) segments. b The homotopy edges (thick red segments) terminate at vertices on the stable segment. Note that the vertices cannot be drawn together into a single point without forcing the homotopy edges to cross over the unstable curves. c The termination vertices are now replaced with control edges, which are “infinitesimally short” edges crossing stable segments. The control edges form a single connected component joining all four homotopy edges (Color figure online)

To solve the above problem, we use the idea of a controlled graph, and in particular the concept of control edges, introduced in Sect. 2.4 (Definition 2.9). Control edges are “infinitesimally short” edges crossing stable segments. We see how they can be used to connect up bridge classes in Figs. 9(c1), (c2).

Example 3.8

An example of a homotopy graph is shown in Fig. 10b. The control edges are denoted \(\zeta _i\), where the i subscript orders them by their distance from the fixed point p along \(T^S\). The free edges correspond to the bridge classes, with the edge corresponding to exact curve \(\alpha ^u\) in Fig. 10a being labelled \(\alpha \), etc.

The control edges are mapped to each other, with the image of the control edge \(\zeta _i\) crossing segment \(S_i\) being the control edge \(\zeta _j\) crossing segment \(S_j\supset f(S_i)\). The image of the edge corresponding to an exact curve \(\alpha ^u\) is based on the homotopy action, but must now also include a control edge for every essential intersection of \([f\circ \alpha ^u]\) with \(T^S\). The homotopy dynamics therefore induces the following action on the edges of the homotopy graph.

$$\begin{aligned}&\zeta _0,\zeta _1,\zeta _2\mapsto \zeta _0, \quad \zeta _3\mapsto \zeta _1, \quad \zeta _4\mapsto \zeta _2, \quad \zeta _5\mapsto \zeta _3, \quad \zeta _6,\zeta _7,\zeta _8\mapsto \zeta _4 \zeta _6 , \nonumber \\&\alpha \mapsto \alpha \bar{\zeta }_8 \gamma \zeta _6 \beta _1, \quad \beta _1 \mapsto \beta _2, \quad \beta _2 \mapsto \beta _3, \quad \beta _3 \mapsto \alpha \bar{\zeta }_8 \gamma \zeta _6 \beta _1, \nonumber \\&\gamma \mapsto \bullet , \quad \delta \mapsto \alpha \bar{\zeta }_8 \gamma \zeta _6 \beta _1, \quad \epsilon _1 \mapsto \bullet , \quad \epsilon _2 \mapsto \epsilon _1, \quad \epsilon _3 \mapsto \bar{\epsilon }_1, \end{aligned}$$
(5)

where \(\bullet \) indicates that the edge maps to a single vertex.

The general construction proceeds as follows.

Algorithm 3.9

(Construction of the homotopy graph representative\(({H_G^U}, {h_{G}^u})\)) For a trellis T of the map f, satisfying Assumptions 2.1, we construct the homotopy graph representative\(({H_G^U}, {h_{G}^u})\), consisting of the (unstable) homotopy graph\({H_G^U}\), embedded in M, and the homotopy (graph) map\({h_{G}^u}\). The homotopy graph \({H_G^U}\) is constructed as follows.

  1. (i)

    In each region of T, construct one vertex of \({H_G^U}\) for each stable boundary arc.

  2. (ii)

    For each segment S of \(T^S\), construct a control edge \(\zeta \) crossing S transversely, and joining the vertices from step (i) on either side of S.

    Note that the endpoints of the control edges are disjoint, except in the case of two stable segments separated by an endpoint of \(T^U\). (See Fig. 9.)

  3. (iii)

    For each bridge class \([\alpha ^u]\), construct a homotopy edge \(\alpha _{G}^u\) of \({H_G^U}\) within the region containing \(\alpha ^u\) joining the vertices corresponding to the segments joined by \(\alpha ^u\). The \(\alpha ^u\) are chosen to be mutually disjoint from one another.

The homotopy graph map \({h_{G}^u}\) acts on \({H_G^U}\) as follows.

  1. (iv)

    If \(\zeta \) is the control edge crossing stable segment S, then \({h_{G}^u}(\zeta )\) is the control edge crossing the segment \(S'\) containing f(S).

  2. (v)

    The image of the homotopy edge \(\alpha _{G}^u\) corresponding to \([\alpha ^u]\) is the edge-path in \(H^U_G\) corresponding to the concise homotopy action \(h^u([\alpha ^u])\), including a control edge whenever \(h^u([\alpha ^u])\) has an essential intersection with \(T^S\).

Note that the G subscript distinguishes \(H^U_G\), which is a graph, from \(H^U\), which is simply a set of homotopy classes, the elements of which are identified with the free edges of \(H^U_G\). The first five steps construct the full homotopy graph representative. The recurrent homotopy graph representative includes the following additional step.

  1. R

    Recursively remove any control or free edge that has no preimage. Note that any remaining homotopy edges must connect two non-removed control edges.

Alternatively, the collapsed homotopy graph representative includes the following additional step.

  1. C

    Collapse all inert homotopy edges, i.e. those homotopy edges that eventually map to a single vertex. Then, in the event that multiple homotopy edges connect the same two vertices, keep only one of these edges.

Either of steps R or C can be applied by itself, or they can be applied in combination, forming the recurrent collapsed homotopy graph representatives or simply the reduced homotopy graph representative, for short.

The recurrent and reduced homotopy graphs of the trellis \(T_{3}\) are shown in Fig. 10c, d. A somewhat more involved example of the transition from the recurrent homotopy graph to the reduced homotopy graph, by applying step C, is shown in Fig. 11 for the trellis \(T_{3e}\).

Fig. 10
figure 10

a The unstable homotopy elements of the trellis \(T_3\). b The corresponding full homotopy graph. c The recurrent homotopy graph. d The reduced homotopy graph (Color figure online)

Fig. 11
figure 11

a The recurrent homotopy graph and b the reduced homotopy graph for the trellis \(T_{3e}\). This trellis is similar to \(T_3\) except that the lobes inside the main square are extended such that they “overshoot”, or transect, one another. (Compare with Fig. 10.) Despite this initial difference, the reduced homotopy graphs and graph maps for \(T_3\) (Fig. 10d) and \(T_{3e}\) (Fig. 11b) are the same (Color figure online)

It is clear from the construction and the properties of the homotopy action that the image of any edge \(\epsilon \) of \(H^U_G\) is an edge-path which contains no two consecutive edges in the same region.

Theorem 3.10

The homotopy graph constructed in Algorithm 3.9 is an unstable controlled graph, which is also spanning, i.e. all vertices are endpoints of control edges. The corresponding homotopy graph map is an optimal controlled graph map.

Proof

Straightforward from the construction. The conciseness of the dynamics ensures that the graph map is optimal. \(\square \)

We can also construct the homotopy graph representative of \((f^{-1},(T^S,T^U))\), which we call the stable homotopy graph representative of \((f, (T^U,T^S))\). The stable homotopy graph and graph map are denoted \({H_G^S}\) and \(h_{G}^s\).

Remark

It will be noted that each 2n-gon in the complement of the trellis generically is crossed by \(2n-3\) unstable bridge classes. The complements of these edges form either strips along an unstable segment, or triangles bounded by three homotopy classes. For a bigon, however, this formula suggests \(-1\) edges, and indeed, the case of a bigon is rather degenerate. For this paper, we consider a bigon to contain no non-trivial homotopy element.

3.3 The Skeleton Graph

The skeleton graph representative of a trellis was defined in Collins (2004) and gives an alternative representative to the homotopy graph representative. It can be defined by the axioms given in Definition 3.12 below and is the unique graph map satisfying these axioms. The direct computation of the skeleton graph representative relies on an algorithm similar to that of Bestvina and Handel (1995) for computing train-tracks. In Sect. 4.2, we shall show that the dual of the recurrent homotopy graph map is precisely the skeleton graph representative, yielding an alternative computation.

Definition 3.11

For a trellis T of the map f, satisfying Assumptions 2.1, a compatible skeleton graph\({K_G^U}\) and skeleton graph map\({k_{G}^u}\) for (Tf) satisfy:

  1. (i)

    \({K_G^U}\) is an unstable controlled graph.

  2. (ii)

    \({K_G^U}\) is a skeleton graph of \(M \setminus T^U\), i.e. \({K_G^U}\) restricted to any region is a tree.

  3. (iii)

    \({k_{G}^u}\) is a controlled graph map (Definition 2.14) such that the image of any unstable arc \(\alpha \) embedded in \({K_G^U}\) lies in the homotopy class of \(f(\alpha )\).

There are many possible skeleton graphs compatible with a given trellis, as (for example) a region with 4 unstable boundary segments may contain a valence-4 vertex or two valence-3 vertices (in two possible configurations). Further, the image under \({k_{G}^u}\) of an arc in \({K_G^U}\) joining two stable segments need not be concise.

Definition 3.12

A skeleton graph map \({k_{G}^u}\) compatible with (Tf) is optimal if in addition to the conditions of Definition 3.11, it satisfies:

  1. (iv)

    The map \({k_{G}^u}\) is locally injective when restricted to the free edges.

In Collins (2004), the following result was shown.

Theorem 3.13

Properties (i)–(iv) of Definitions 3.11 and 3.12 yield a unique \({K_G^U}\) and \({k_{G}^u}\). For every orbit \((w_0,w_1,\ldots )\) of \({k_{G}^u}\) with \(w_i\) in region \(R_i\), there is an orbit \((x_0,x_1,\ldots )\) of f with \(x_i \in R_i\), and if \((w_0,w_1,\ldots )\) is periodic, then so is \((x_0,x_1,\ldots )\). The topological entropy of f is at least that of \({k_{G}^u}\).

From this point forward, whenever we mention the skeleton graph representative, we mean the optimal compatible skeleton graph and map \(({K_G^U},{k_{G}^u})\).

Just as for the homotopy graph representative, we can remove and collapse edges. A recurrent compatible skeleton graph is computed from a skeleton graph representative by the following additional step.

  1. R

    Recursively remove any skeleton edge that has no preimage, and then remove any control edge that does not thereby share a vertex with any skeleton edge.

Alternatively, a collapsed skeleton graph representative includes the following additional step.

  1. C

    Collapse all inert skeleton edges, i.e. those skeleton edges that eventually map to a single vertex, and, in the event that multiple skeleton edges connect the same two vertices, keep only one of these edges.

Either of steps R or C can be applied by itself, or they can be applied in combination, forming a recurrent collapsed skeleton graph representative.

Note that conditions (i) are equivalent to saying that the topological pair (GC) is homotopy equivalent to the pair \((M\setminus T^U,T^S\setminus T^U)\). The dynamical conditions (iii) are equivalent to saying that the map \(g:(G,C)\rightarrow (G,C)\) is homotopy equivalent to \(f:(M\setminus T^U,T^S\setminus T^U)\rightarrow (M\setminus T^U,T^S\setminus T^U)\). The optimality condition implies that the graph map is efficient in the sense of Bestvina and Handel (1995) and Collins (2004).

We note that the image of the skeleton graph restricted to any component of \(M\setminus (T^U\cup T^S\cup C^S)\) is injective. This means that no image of an edge back-tracks, and the incident edges at any vertex map to distinct edge-paths with distinct initial edges. For example, in Example 4.2, at the vertex with incident edges \(\bar{c}_1,\bar{c}_2,\bar{c}_3\), we have \(\bar{c}_1\mapsto c_3\bar{c}_2\), \(\bar{c}_2\mapsto c_4\) and \(\bar{c}_3 \mapsto c_5\bar{z}_{20} z_{18} d_1\), beginning, respectively, with edges \(\bar{c}_3,\bar{c}_4,\bar{c}_5\). In particular, any vertex maps to a vertex of equal or higher valence.

4 Duality

In this section, we consider duality relationships involving the homotopy dynamics and the skeleton dynamics. We first define a duality relation on controlled graph maps and show the main result of this paper that the dual of the (backward) homotopy graph map is the skeleton graph map. We also show a duality relation between the unstable and stable homotopy dynamics. We also show how the forward homotopy graph can be projected onto the skeleton graph.

4.1 The Dual Graph Map

Example 4.1

For the trellis \(T_3\) we have the stable homotopy graph \({H_G^S}\) shown in Fig. 12a. The controlled dual graph (Definition 2.10), denoted \(({H_G^S})^*\), is then as shown in Fig. 12b. The control edges of the dual graph cross the stable segments of \(T_3\). The free edges of \(({H_G^S})^*\) cross the edges of \({H_G^S}\) representing bridge classes. In the region with edges \(\beta _1\), \(\beta _2\) and \(\beta _3\), there are therefore three edges of \(({H_G^S})^*\), labelled \(b_1\), \(b_2\), and \(b_3\), meeting at a valence-3 vertex. Note that \(({H_G^S})^*\) is a skeleton graph, as defined in Sect. 2.3.

Fig. 12
figure 12

a The stable homotopy graph \({H_G^S}\) (dark blue) with control edges \(C^S\) and free edges \(E^S\) for the trellis \(T_3\). b The dual graph \(K^U_G\) (red), being the graph-theoretic dual of \(T^S \cup E^S\) in the complement of \(T^U \cup C^S\) (Color figure online)

Having constructed a dual skeleton graph \(({H_G^S})^*\) to the (stable) homotopy graph \({H_G^S}\), we now consider a dual map \((h_{G}^s)^*\) to the homotopy action \(h_{G}^s\). This graph map will be determined by the order in which the images of skeleton edges are forced to cross stable bridge edges.

Fig. 13
figure 13

The reduced skeleton graph for the trellis \(T_4\). The labels for the stable bridge classes are shown in Fig. 8b (Color figure online)

Example 4.2

For the trellis \(T_4\) in Fig. 8, we obtain the dual skeleton graph in Fig. 13 if we only focus on the “interior” region of the trellis. (Technically, Fig. 13 shows the reduced skeleton graph; details will be given later.)

The skeleton edge a is homotopic to the curve \(\alpha ^u\) (Fig. 8), and the image \(f([\alpha ^u]) = [\alpha ^u] \cdot [\beta ^u]\) has essential crossings with \(\alpha ^s\) and \(\beta ^s\). Hence, the image f(a) is homotopic to the curve \(a \bar{z}_{24}z_{14} b\), where \(z_i\) denotes a control edge, indexed by its position along \(T^S\). Thus, \((h_{G}^s)^*(a) = a \bar{z}_{24}z_{14}b\). Similarly, the skeleton edge b is homotopic to \(\beta ^u\), and \(f([\beta ^u]) = [\gamma _1^u]\), which has essential crossings with \(\gamma _1^s\) and \(\bar{\gamma }_2^s\), so \((h_{G}^s)^* (b) = c_1 \bar{c}_2\).

The skeleton edge \(c_1\) is not in any unstable bridge class. To compute its image, we instead compute essential crossings of \(c_1\) with preimages of stable arcs (Fig. 14). We note that \(f^{-1}([\gamma _2^s]) = [\gamma _1^s]\cdot [\iota _3^s]\cdot [\delta _2^s]\cdot [\bar{\iota }_2^s]\cdot [\bar{ \beta }^s]\) and \(f^{-1}([\gamma _3^s]) = [\delta _1^s]\cdot [\bar{\iota }_3^s]\cdot [\bar{\gamma }_1^s]\), so \((h_{G}^s)^* (c_1)\) should contain both \(c_2\) and \(\bar{c}_3\). This suggests that \( (h_{G}^s)^* (c_1) = c_2\bar{c}_3\). Since \(f^{-1}([\gamma _4^s]) = [\gamma _2^s]\), we have \( (h_{G}^s)^*(c_2) = c_3\). Since \(f^{-1}([\gamma _5^s]) = f^{-1}([\delta _1^s]) = [\bar{\gamma }_3^s]\cdot [\iota _3]\cdot [\bar{\delta }_1^s]\), we have \( (h_{G}^s)^*(c_3) = \bar{d}_1 \bar{z}_{10} z_{11} \bar{c}_5\). Similarly, \( (h_{G}^s)^*(c_4) = \bar{d}_3 \bar{z}_9 z_{12} \bar{e}\) and \( (h_{G}^s)^*(c_5) = \bar{d}_2\). It can be seen that the images so constructed yield a consistent image for the end vertices of \(c_3\) (Fig. 14).

Fig. 14
figure 14

Preimages of stable homotopy elements crossing the unstable skeleton graph for the trellis \(T_4\) (Color figure online)

In summary, \((h_{G}^s)^*\) yields the following action on the skeleton graph,

$$\begin{aligned} a\mapsto & {} a \bar{z}_{24} z_{14} b, \quad b \mapsto c_1 \bar{c}_2, \quad e \mapsto a \bar{z}_{24} z_{14} b, \nonumber \\ c_1\mapsto & {} c_2 \bar{c}_3, \quad c_2 \mapsto \bar{c}_4, \quad c_3 \mapsto \bar{d}_1 \bar{z}_{18} z_{20} \bar{c}_5, \quad c_4 \mapsto \bar{d}_3 \bar{z}_{16} z_{22} \bar{e}, \quad c_5 \mapsto \bar{d}_2, \nonumber \\ d_1\mapsto & {} d_2 \bar{d}_1 \bar{z}_{18} z_{20} \bar{c}_5 c_3, \quad d_2 \mapsto c_2, \quad d_3 \mapsto c_1. \end{aligned}$$
(6)

This construction of the graph map on the skeleton graph given in Example 4.2 generalises. Given a stable homotopy arc \([\alpha ^s]\), the homotopy preimage \(h^{-1}[\alpha ^s]\) can be written as the concise product \([\beta _1^s]\cdot \cdots \cdot [\beta _k^s]\), where each \([\beta ^s_i]\) is a bridge class. We identify each bridge class \([\beta ^s_i]\) with its edge \(\beta ^s_i\) in \({H_G^S}\), so that the concise product representation of \(h^{-1}[\alpha ^s]\) is identified with a multiarc in \(C_SM\). Since each \(\beta ^s_i\) is dual to an edge \(b^u_i\) of the skeleton graph, and since \(\beta ^s_i\) and \(\beta ^s_{i+1}\) always lie in different regions for each \(i=1,\ldots ,k-1\), the intersections of \(h^{-1}[\alpha ^s]\) with the tree \({({H_G^S})}^*\) are tight (Definition 2.6). Further, by Lemma 2.7, the homotopy preimages \(h^{-1}([\alpha ^s])\) of all bridge classes \([\alpha ^s]\) can be simultaneously put in minimal position with respect to \({({H_G^S})}^*\) by a common isotopy. In this tight configuration, each edge \(e^u\) of \({({H_G^S})}^*\) crosses the preimages of homotopy arcs in a well-defined order \(h^{-1}([\alpha ^s_1]),\ldots , h^{-1}([\alpha ^s_l])\) with no back-tracking by Lemma 2.8. Finally, we define the dual graph map \((h_{G}^s)^*\) applied to this edge \(e^u\) to be the edge-path \(a^u_1,\ldots ,a^u_l\), where \(a^u_i\) is the edge of \({({H_G^S})}^*\) dual to \(\alpha ^s_i\). This edge-path also contains the necessary control edges \(z^u_j\) between the free edges \(a^u_i\). The dual graph map \((h_{G}^s)^*\) applied to a control edge \(z^u\) of \(({H_G^S})^*\) maps to a control edge \({z^u}'\) such that if \(z^u\) crosses segment S of \(T^U\), then \({z^u}'\) crosses the segment S that contains \(f^{-1}(S)\). We have therefore shown:

Theorem 4.3

(Dual to homotopy graph map) There is a natural controlled graph map \((h_{G}^s)^*\) acting on the dual graph \({({H_G^S})}^*\) to the stable homotopy graph \({H_G^S}\), as constructed above. This action forms a dual to the homotopy dynamics. In particular, the dual skeleton edge \(a^u\) to the stable bridge class \([\alpha ^s]\) maps across edge \(b^u\) if, and only if, the corresponding dual bridge \([\beta ^s]\) maps under \(h_{G}\) to a concise product containing \([\alpha ^s]\).

4.2 Duality Between the Homotopy and Skeleton Dynamics

We now state and prove the main theorem of the paper, which gives the relationship between the homotopy dynamics and the skeleton dynamics.

Theorem 4.4

Let \(({H_G^S}, {h_{G}^s})\) be the recurrent stable homotopy graph representative and \(({K_G^U}, {k_{G}^u})\) be the collapsed unstable skeleton graph representative. Then \({K_G^U}= {({H_G^S})}^{*}\) and \({k_{G}^u}= {({h_{G}^s})}^*\).

Proof

The basic structure of this proof is to show that the dual to the homotopy graph representative \(((H^S_G)^*, (h^s_{G})^*)\) satisfies Definition 3.12 for the skeleton graph representative. First, by construction of the dual (Definition 2.10), \((H^S_G)^*\) is an unstable controlled graph, which proves property (i) of Definition 3.11.

Second, by Lemma 2.13 we have already seen that the dual of any stable spanning graph, such as \(H^S_G\), is a skeleton graph, thereby yielding property (ii).

Third, by the construction of the dual map (Theorem 4.3), \((h^s_{G})^*\) is a controlled graph map. Next, suppose a free edge e maps to an edge-path \(b^u z c^u\), where \(z \in (h^s_{G})^* (C)\) is a control edge and \(b^u\) and \(c^u\) are edge-paths. Then there is a control edge \(z' \in C\) such that \(z = (h^s_{G})^*(z')\). But this means that e must have a transverse intersection with \(T^S\), which is not true since e lies in a single region. Hence, e does not map to any control edge in \((h^s_{G})^* (C)\). This completes the proof of property (iii).

Finally, we show that \((h^s_{G})^*\) is locally injective on the free edges. Note, for an arbitrary bridge class \([\alpha _s]\), \(f^{-1}\circ \alpha ^s\) is homotopic to a tight edge-path that passes through each region at most once (since \(C_SM\) is simply connected) and hence crosses any edge of the skeleton graph at most once. By the construction of the dual map in Theorem 4.3, \((h^s_{G})^*\) applied to any edge of \((H^S_G)^*\) cannot map to two copies of the same edge. Hence, \((h^s_{G})^*\) restricted to any edge is injective.

By a similar argument, we show that \((h^s_{G})^*\) is locally injective at a vertex connecting free edges in \((H^S_G)^*\). Suppose \((h^s_{G})^*\) were not locally injective at a vertex; then, \((H^S_G)^*\) would have two free edges \(a_1^u\) and \(a_2^u\) beginning at a common vertex such that \((h^s_{G})^*\) applied to either \(a_1^u\) or \(a_2^u\) would begin with the same initial edge \(b^u\). Then, for a homotopy edge \([\alpha ^s]\), the concise description of \(h^s_{G}([\alpha ^s])\) would contain two homotopy elements in the same region, one each intersecting \(a_1^u\) and \(a_2^u\). But we have already determined that there is a single homotopy element in each region for the concise description. Hence, \((h^s_{G})^*\) is locally injective at a vertex of free edges. Combining this with the local injectivity along each free edge allows us to conclude that \((h^s_{G})^*\) is locally injective when restricted to the free edges, condition (iv) of Definition 4.4

By step R of Algorithm 3.9, every free edge in the recurrent homotopy graph \(H^S_G\) has a preimage under \(h^s_{G}\). Thus, none of the dual edges in \((H^S_G)^*\) maps to a trivial edge-path under \((h^s_{G})^*\). \(\square \)

We illustrate the construction by another example.

Example 4.5

Consider the trellis \(T_3\) in Fig. 12. The edges \(\alpha ,\beta _1,\beta _2,\beta _3,\gamma ,\delta \) of the stable homotopy graph \(H^S\) are dual to (i.e. cross) the edges \(a,b_1,b_2,b_3,c,d\) of the skeleton graph \({K_G^U}\) . These homotopy elements map

$$\begin{aligned} \alpha\mapsto & {} \alpha \,\bar{\zeta }_8\,\delta \,\zeta _6\,\beta _3, \ \ \beta _1\mapsto \alpha \,\bar{\zeta }_8\,\delta \,\zeta _6\,\beta _3, \ \ \beta _2\mapsto \beta _1\,\bar{\zeta }_6\,\bar{\delta }\,\zeta _8\,\bar{\alpha }, \\ \beta _3\mapsto & {} \beta _2, \ \ \gamma \mapsto \alpha \,\bar{\zeta }_8\,\delta \,\zeta _6\,\beta _3, \ \ \delta \mapsto [\bullet ], \end{aligned}$$

where we have ignored the trivial dynamics on the free edges \(\epsilon _1\), \(\epsilon _2\), \(\epsilon _3\). The corresponding transition matrix (Sect. 2.3) is

(7)

where we have only recorded transitions between the free edges.

The skeleton edges map

$$\begin{aligned} a\mapsto & {} a \bar{z}_8 c z_6 b_1 \bar{b}_2, \ b_1\mapsto b_2, \ b_2\mapsto b_3, \ \\ b_3\mapsto & {} a \bar{z}_8 c z_6 b_1, \ c \mapsto [\bullet ], \ d \mapsto a \bar{z}_8 c z_6 b_1 \bar{b}_2 , \end{aligned}$$

with corresponding transition matrix

(8)

We see that \(A_H = A_S^T\), illustrating that the stable homotopy graph map is dual to the unstable skeleton graph map.

If we reduce the homotopy and skeleton graphs by recursively deleting edges with no preimages (Step R), and also collapsing edges with trivial image (Step C), we see that the edge c is collapsed and its dual counterpart \(\gamma \) is removed, whereas the edge d is removed and its dual counterpart \(\delta \) is collapsed. The resulting graphs are shown in Fig. 15 and are again dual to each other, as are the graph maps

$$\begin{aligned} \alpha \mapsto \alpha \,\bar{\zeta }_8\,\zeta _6\,\beta _3, \ \ \beta _1\mapsto \alpha \,\bar{\zeta }_8\,\zeta _6\,\beta _3, \ \ \beta _2\mapsto \beta _1\,\bar{\zeta }_6\,\zeta _8\,\bar{\alpha }, \ \ \beta _3\mapsto \beta _2 \end{aligned}$$

and

$$\begin{aligned} a\mapsto a \bar{z}_8 z_6 b_1 \bar{b}_2, \ b_1\mapsto b_2, \ b_2\mapsto b_3, \ b_3 \mapsto a \bar{z}_8 z_6 b_1. \end{aligned}$$
Fig. 15
figure 15

The reduced homotopy graph and its dual skeleton graph for the trellis \(T_3\) (Color figure online)

The following result shows that applying the collapsing process applied to the dual of the full stable homotopy graph map also yields the skeleton graph representative.

Proposition 4.6

The skeleton graph representative is obtained from the dual of the full stable homotopy graph map by collapsing all inert skeleton edges.

Proof

The collapsed edges are precisely those which cross elemental homotopy arcs which are removed when constructing the recurrent homotopy graph. Removing an edge from the homotopy graph induces a collapsing of the corresponding edge in the dual graph. \(\square \)

4.3 Time-Reversal Symmetry of the Homotopy Dynamics

We consider the intersections of unstable homotopy elements with stable homotopy elements. We first construct a geometric figure such that the representatives of the homotopy classes of \(H^U\) and \(H^S\) are tight, as shown in Fig. 16. The homotopy representative \(\alpha ^u\) crosses \(\alpha ^s\), and \(\beta _1^u\) crosses \(\beta _3^s\) and \(\bar{\beta }_2^s\) in that order. The image \(f\circ \alpha ^u\) belongs to homotopy class \(f([\alpha ^u]) = [\alpha ^u]\cdot [\gamma ^u]\cdot [\beta _1^u]\), so it has essential intersections with \(\alpha ^s\), \(\gamma ^s\), \(\beta _3^s\), and \(\bar{\beta }_2^s\) in that order.

Fig. 16
figure 16

Minimal representatives of unstable and stable bridge classes for \(T_3\) (Color figure online)

The following results directly from Lemma 2.3.

Theorem 4.7

(Time-reversal symmetry) For all \([\alpha ^u] \in H^U\) and all \([\beta ^s] \in H^S\) (using the full homotopy action), the number of essential intersections of \(f([\alpha ^u])\) with \(\beta ^s\) is equal to the number of essential intersections of \(f^{-1}([\beta ^s])\) with \(\alpha ^u\).

Proof

First, note that if \((T^U,T^S)\) is a trellis for f, and h is a homeomorphism such that \(h(x)=x\) for all \(x\in T^U\cup f(T^S)\), then \((T^U,T^S)\) is a trellis for \(h\circ f\). Similarly, if h is a homeomorphism such that \(h(x)=x\) for all \(x\in f^{-1}(T^U)\cup T^S\), then \((T^U,T^S)\) is a trellis for \(f\circ h\).

Now, suppose \(f\circ \alpha ^u\) is homotopic to a path \(\phi ^u\) which intersects \(\beta ^s\) once. By pulling tight (Lemma 2.3) there is an isotopy \((g^u_t)_{t\in [0,1]}\) of M such that \(g^u_0= id \), \(g^u_t(x)=x\) for \(x\in T^U\cup f(T^S)\), and \(g^u_1\circ (f\circ \alpha ^u)=\phi ^u\). Then \(g^s_t=f^{-1}\circ (g^u_t)^{-1}\circ f\) is an isotopy such that \(g^s_0= id \), \(g^s_t(x)=x\) for \(x\in f^{-1}(T^U)\cup T^S\), and \(g^s_1\circ (f^{-1}\circ \beta ^s)=f^{-1}\circ (g^u_1)^{-1} \circ f \circ f^{-1}\circ \beta ^s = f^{-1}\circ (g^u_1)^{-1} \circ \beta ^s\). Hence, intersections of \(g^s_1\circ (f^{-1}\circ \beta ^s)\) with \(\alpha ^u\) are conjugate to intersections of \(\beta ^s\) with \(g^u_1\circ f \circ \alpha ^u\). In particular, if \(f\circ \alpha ^u\) is homotopic to a curve with n intersections with \(\beta ^s\), then \(f^{-1}\circ \beta ^s\) is homotopic to a curve with n intersections with \(\alpha ^u\). \(\square \)

Note that if each component of \(M\setminus (T^U\cup f(T^S))\) is simply connected, then \(f([\alpha ^u])\) has at most one essential intersection with \(\beta ^s\) for any \(\alpha ^u\) and \(\beta ^s\).

4.4 Projection of the Homotopy Graph onto the Skeleton Graph

We notice that there is also a relationship between the unstable skeleton graph and the unstable homotopy graph. Each homotopy graph element is homotopic to an edge-path in the skeleton graph, and the concise description of the homotopy type of the image of the homotopy graph element is equivalent to the image edge-path in the skeleton graph. For example, comparing Fig. 8a, 9, 10, 11, 12, and 13, we have \(\gamma _1^u \sim c_1\bar{c}_2\), with \(c_1\bar{c}_2 \mapsto c_2\bar{c}_3 \bar{c}_4 \sim _u \gamma _2^u \sim _u f\circ \gamma _1^u\).

We now describe this relationship between the (unstable) homotopy and skeleton graphs.

Lemma 4.8

Let \([\alpha ^u]_u\) be a homotopy element and \(a_1\cdots a_k\) the edge-path in the skeleton graph which is homotopic to \(\alpha ^u\). Then the concise description of \([f\circ \alpha ^u]_u\) crosses the same stable homotopy arcs whose preimages contain \(\alpha ^s_1,\ldots ,\alpha ^s_k\), where each \(\alpha ^s_i\) is dual to \(a_i\), for all \(i = 1, \ldots , k\).

Proof

The reduced skeleton graph map \({k_{G}^u}\) is locally injective on each region, so the representative of any non-trivial homotopy element maps to an edge-path that does not back-track. This edge-path therefore crosses each stable homotopy arc at most once and hence crosses the same arcs as the concise description of \([f\circ \alpha ^u]_u\). \(\square \)

We now show that the forward homotopy graph and skeleton graph can each be easily computed from the other.

Theorem 4.9

The homotopy graph \({H_G^U}\) and map \({h_{G}^u}\) are related to the skeleton graph \({K_G^U}\) and map \({k_{G}^u}\) by an edge-splitting followed by an edge-identification.

Proof

Each edge in the homotopy graph embeds as an edge-path in the skeleton graph. Since each edge in the homotopy graph lies in a single region, the image of the edge in the skeleton graph does not back-track, so equals the projected image under the skeleton graph map. In other words, there is a projection \(p_{G}^u:{H_G^U}\rightarrow {K_G^U}\) such that \({k_{G}^u}(p_{G}^u(\alpha ))=p_{G}^u({h_{G}^u}(\alpha ))\) for all homotopy elements \(\alpha \).

We next construct the split graph \(\widetilde{H}_G^U\) of the homotopy graph \({H_G^U}\). Since a given edge \(\alpha \) in \({H_G^U}\) projects to an edge-path \(a_1\ldots a_l\) of length l in \({K_G^U}\), we split \(\alpha \) into l pieces \(\alpha _1, \alpha _2, \ldots ,\alpha _l\), i.e. \(\alpha \) is represented by the edge-path \(\alpha _1 \alpha _2\ldots \alpha _l\). We extend the projection \(p_{G}^u\) to the split graph \(\widetilde{H}_G^U\) in the natural way, i.e. \(p_{G}^u(\alpha _i)\) is defined to be \(a_i\). We next extend \({h_{G}^u}\) to a map \(\tilde{h}_{G}^u\) acting on \(\widetilde{H}_G^U\). Since \(p_{G}^u({h_{G}^u}(\alpha )) = {k_{G}^u}(p_{G}^u(\alpha ))\), we must require \(p_{G}^u(\tilde{h}_{G}^u (\alpha _1\alpha _2\ldots \alpha _k))={k_{G}^u}(a_1){k_{G}^u}(a_2) \cdots {k_{G}^u}(a_l)\). Since each edge of the split homotopy graph projects to exactly one edge of \({K_G^U}\), we can take \(\tilde{h}_{G}^u (\alpha _1)\) to be the initial arc of \(\tilde{h}_{G}^u (\alpha )\) with length \(|{k_{G}^u}(a_1)|\), so that \(p_{G}^u(\tilde{h}_{G}^u (\alpha _1))={k_{G}^u}(p_{G}^u(\alpha _1))\). We construct the remaining \(\tilde{h}_{G}^u (\alpha _2), \tilde{h}_{G}^u (\alpha _3),\ldots \) recursively.

We have therefore constructed a graph \(\widetilde{H}_G^U\) for which there is a surjective inclusion \(i_{G}^u:{H_G^U}\rightarrow \widetilde{H}_G^U\), and a projection \(p_{G}^u:\widetilde{H}_G^U\rightarrow {K_G^U}\) mapping edges to edges. The induced dynamics \(\tilde{h}_{G}^u\) on \(\widetilde{H}_G^U\) satisfies \(\tilde{h}_{G}^u \circ i_{G}^u = i_{G}^u \circ {h_{G}^u}\) and \(p_{G}^u\circ \tilde{h}_{G}^u = {k_{G}^u}\circ p_{G}^u\). \(\square \)

By combining Theorems 4.4 and 4.9, we obtain the following result:

Corollary 4.10

  1. (a)

    \({h_{G}^u}\) is related to \({h_{G}^s}\) by an edge-splitting, duality, and edge-identification.

  2. (b)

    The transition matrix of \({h_{G}^u}\) is shift equivalent to the dual of the transition matrix of \({h_{G}^s}\).

Example 4.11

Consider the homotopy and skeleton graphs shown in Fig. 17 for the trellis \(T_3\) (Fig. 15).

Fig. 17
figure 17

a Reduced homotopy graph for trellis \(T_3\) (Fig. 15). b Reduced skeleton graph for \(T_3\), obtained by projecting the \(\beta _i\)’s in (a) onto the \(b_i\)’s (Color figure online)

The control edges map \( z_0,z_2\mapsto z_0, \ z_4\mapsto z_2, \ z_6,z_8 \mapsto z_4, \) and homotopy graph map \({h_{G}^u}\) and the skeleton graph map \({k_{G}^u}\) take

$$\begin{aligned} {h_{G}^u}(\alpha )= & {} \alpha \bar{z}_8 z_6 \beta _1, \quad {h_{G}^u}(\beta _1)=\beta _2, \quad {h_{G}^u}(\beta _2)=\beta _3 z_6 \bar{z}_8 \bar{\alpha }, \quad {h_{G}^u}(\beta _3)=\alpha \bar{z}_8 z_6 \beta _1; \nonumber \\ \end{aligned}$$
(9)
$$\begin{aligned} {k_{G}^u}(a)= & {} a\bar{z}_8z_6b_1\bar{b}_2, \quad {k_{G}^u}(b_1)= b_2, \quad {k_{G}^u}(b_2)= b_3, \quad {k_{G}^u}(b_3)= a\bar{z}_8z_6b_1. \end{aligned}$$
(10)

We take a projection of \({H_G^U}\) into \({K_G^S}\) given by

$$\begin{aligned} p_{G}^u(\alpha )= a, \quad p_{G}^u(\beta _1)= b_1\bar{b}_2, \quad p_{G}^u(\beta _2)= b_2\bar{b}_3, \quad p_{G}^u(\beta _3)= b_3\bar{b}_1. \end{aligned}$$

We split \(\beta _1\), \(\beta _2\), and \(\beta _3\) each into two edges, e.g. \(\beta _1=\beta _{1,1}\beta _{1,2}\), with

$$\begin{aligned} p_{G}^u(\beta _{1,1})= & {} b_1 , \ p_{G}^u(\beta _{1,2})=\bar{b}_2, \\ p_{G}^u(\beta _{2,1})= & {} b_2, \ p_{G}^u(\beta _{2,2})=\bar{b}_3, \\ p_{G}^u(\beta _{3,1})= & {} b_3, \ p_{G}^u(\beta _{3,2})=\bar{b}_1. \end{aligned}$$

Since \({h_{G}^u}(\beta _1)=\beta _2\) we have \(p_{G}^u({h_{G}^u}(\beta _1))=b_2\bar{b}_3\), and we verify \({k_{G}^u}(p_{G}^u(\beta _1))={k_{G}^u}(b_1\bar{b}_2)={k_{G}^u}(b_1){k_{G}^u}(\bar{b}_2)=b_2\bar{b}_3\). We take \(\tilde{h}_{G}^u(\beta _{1,1})=\beta _{2,1}\) since \({k_{G}^u}(p_{G}^u(\beta _{1,1}))=b_2=p_{G}^u(\beta _{2,1})\), and take \(\tilde{h}_{G}^u(\beta _{1,2})=\beta _{2,2}\). Since \({h_{G}^u}(\beta _3)=\alpha \bar{z}_8z_6\beta _1\), and \({k_{G}^u}(p_{G}^u(\beta _3))={k_{G}^u}(b_3){k_{G}^u}(\bar{b}_1) = a\bar{z}_8z_6b_1\,\bar{b}_2\), we take \(\tilde{h}_{G}^u(\beta _{3,1})=\alpha \bar{z}_8z_6\beta _{1,1}\) and \(\tilde{h}_{G}^u(\beta _{3,2})=\beta _{1,2}\). The graph map \(\tilde{h}_{G}^u\) obtained by splitting is

$$\begin{aligned} \tilde{h}_{G}^u(\alpha )= & {} \alpha \bar{z}_8z_6\beta _{1,1}\bar{\beta }_{1,2} , \quad \tilde{h}_{G}^u(\beta _{1,1})=\beta _{2,1}, \quad \tilde{h}_{G}^u(\beta _{1,2})=\beta _{2,2}, \\ \tilde{h}_{G}^u(\beta _{2,1})= & {} \beta _{3,1}, \quad \tilde{h}_{G}^u(\beta _{2,2})=\beta _{3,2}\bar{z}_6z_8\bar{\alpha }, \quad \tilde{h}_{G}^u(\beta _{3,1})=\alpha \bar{z}_8z_6\beta _{1,1}, \\ \tilde{h}_{G}^u(\beta _{3,2})= & {} \beta _2. \end{aligned}$$

It is clear that this map \(\tilde{h}_{G}^u\) satisfies the projection conditions \( p_{G}^u(\tilde{h}_{G}^u(\epsilon )) = {k_{G}^u}(p_{G}^u(\epsilon )) \) for every split edge \(\epsilon \). For example, we have

$$\begin{aligned} p_{G}^u(\tilde{h}_{G}^u(\bar{\beta }_{2,2}))= & {} p_{G}^u(\alpha \bar{z}_8z_6\bar{\beta }_{3,2}) = a\bar{z}_8z_6b_1 = {k_{G}^u}(b_3) = {k_{G}^u}(p_{G}^u(\bar{\beta }_{2,2}), \\ p_{G}^u(\tilde{h}_{G}^u(\beta _{3,1})= & {} p_{G}^u(\alpha \bar{z}_8z_6\bar{\beta }_{1,1}) = a\bar{z}_8z_6b_1 = {k_{G}^u}(b_3) = {k_{G}^u}(p_{G}^u(\beta _{3,1}). \end{aligned}$$

Note that Theorem 4.4 implies that the skeleton graph shows how to partition the state space into regions bounded by stable curves such that the chaotic dynamics is contained in rectangles. This is similar to the construction of “strips” in Rom-Kedar (1994), and of uniformly hyperbolic representatives in Collins (2005). For at every vertex of valence greater than two of the skeleton graph, we can introduce new homotopy curves dual to the edges at that vertex. Since the vertices are invariant, these homotopy curves can be made to map into themselves. Further, since every homotopy element maps to a sequence of homotopy elements, these curves are never crossed by \(T^S\) under backward iteration. The elements of the new trellis are rectangles, each corresponding to a stable homotopy element. A similar decomposition can be performed for unstable homotopy elements using the forward skeleton graph. The effect of introducing new stable and unstable arcs on the forward skeleton graph is shown in Fig. 18.

Fig. 18
figure 18

The effect on the forward skeleton graph of adding new homotopy elements to the trellis (Color figure online)

5 Conclusions

In this paper, we have considered the relationship between the approach to studying homoclinic dynamics by the use of skeleton graphs of trellises, and of homotopy lobe dynamics. We have shown that the two approaches are dual to each other, in the sense that the “bridge classes” of the homotopy lobe dynamics of the inverse map are dual to the “free edges” of the skeleton graph representative. The homotopy dynamics can be directly constructed by considering iteration of elemental homotopy classes under the diffeomorphism, yielding a canonical construction of the skeleton graph representative by duality, as opposed to constructing an initial skeleton graph simplifying by folding and pulling tight. In both cases, we have shown how to represent the dynamics via a combinatorial graph embedded in the surface. The two approaches are complementary in the sense that the homotopy dynamics more directly captures the structure of the homoclinic orbits forced by the trellis, whereas the skeleton graph provides a direct proof of existence of periodic orbits via the Nielsen fixed point theory.

We note that a similar theory could be developed for periodic orbits, with the skeleton graph corresponding to train-tracks and the homotopy dynamics corresponding to iteration of arcs joining periodic points. However, the theory of finite developments of homoclinic tangles is in some sense actually easier than the theory for periodic orbits. In particular, the skeleton graph and homotopy graphs are unique, while a train-track for a pseudo-Anosov mapping class is not unique, but is related by zipping.

Although in the exposition we have used examples of planar horseshoe trellises, the results generalise in a straightforward way to arbitrary irreducible trellis types in surfaces of higher genus.

An interesting project for further work would be to automatically extract the trellis topology from a computation of a geometric trellis and hence compute the homotopy and skeleton graph representatives.