1 Introduction

All graphs considered in this paper are undirected, finite, may have parallel edges, but have no loops. Let \(G=(V(G),E(G))\) be a graph. The order and size of G are denoted respectively by v(G) and e(G), i.e. \(v(G)=|V(G)|\), \(e(G)=|E(G)|\). A graph is said to be trivial if it has only one vertex and nontrivial otherwise. The graph without edges are empty graphs. The case \(V(G)=\emptyset \) is sometimes also included in the set of graphs and called the null graph. The degree \(d_G(v)\) of a vertex v in G is the number of edges incident with v. A graph is called k-regular if all vertices have degree k. A nontrivial graph is called k-edge connected if at least k edges are needed to be removed in order to disconnect the graph.

A subgraph H of G is called a spanning subgraph of a graph G if \(V(H)=V(G)\). For a graph G, we use \(\tau (G)\) to denote the maximum number of edge-disjoint spanning trees in G. A subgraph obtained by vertex deletions only is called an induced subgraph. For \(X\subseteq V(G)\), G[X] denotes the subgraph induced by X, i.e. \(G[X]=G-(V{\setminus } X)\).

The union of two graphs \(G_1\) and \(G_2\) is the graph \(G_1\cup G_2\) with vertex set \(V(G_1)\cup V(G_2)\) and edge set \(E(G_1)\cup E(G_2)\). The intersection \(G_1\cap G_2\) of \(G_1\) and \(G_2\) is defined analogously.

A graph which can be drawn in the plane \(\mathbb {E}^2\) in such a way that edges meet only at points corresponding to their common ends is called a planar graph, and such a drawing is called a planar embedding of the graph or a plane graph. For undefined notations and terminologies, we refer the readers to Bondy and Murty (1976).

A link L is the disjoint union of embeddings of circles \(S^1\)’s ( simple closed curves) into the Euclidean 3-space \(\mathbb {E}^3\). A link diagram D is a planar representation of a link L. Given a nontrivial connected plane graph G, we can construct an alternating link diagram D(G) via the medial construction as shown in Fig. 1. The trivial graph corresponds to a simple circle surrounding it, i.e. the trivial knot diagram. When G is disconnected, the corresponding a link diagram will be the disjoint union of diagrams corresponding to components of G.

Fig. 1
figure 1

A plane graph G and its medial graph \(G_m\) (in red); turning vertices of \(G_m\) to crossings of link diagrams: the alternating link diagram D(G) (in red) constructed from G (Color figure online)

For each crossing of a link diagram there are two ways to smooth the crossing: the A-splitting (parallel to the edge of G) and the B-splitting (crossing the edge of G) as illustration in Fig. 2. Let D be a link diagram. A state S of D is a selection for each crossing to be A-split or B-split. Give a state S, making the corresponding split for each crossing gives a number of disjoint embedded closed circles, called state circles, for S. We call the state which possesses maximum number of state circles to be a maximum state. Note that the maximum state may not be unique.

Fig. 2
figure 2

A crossing and its A-split and B-split

The idea of studying links via graphs has been proven to be successful in many ways, for instance, the proof (Thistlethwaite 1987) of a near 100-year conjecture posed by Tait in the late 1900s. Let G be a plane graph. Jin et al. (2015) defined \(s_{\max }(G)\) to be the number of state circles of a maximum state of D(G), call it the number of maximum state circles of G. In other words, \(s_{max}(G)\) is the maximum number of cycles over all bent Eulerian partitions of \(G_m\).

This number is an upper bound of the maximum number of circles of Seifert states of the corresponding alternating link diagram, while the maximum number of circles of Seifert states of an alternating link diagram is related to the genus of corresponding unoriented alternating link, a classical geometric invariant of links (Cheng et al. 2010; Liu and Zhang 2012). In addition, Nakamura et al. (2014) introduced the state polynomial P(Dx) for a virtual link diagram D which includes a classical link diagram as a special case. So, \(s_{max}(G)\) is exactly the degree of P(D(G); x) plus one.

Jin et al. (2015) observed that

$$\begin{aligned} s_{\max }(G)=\max \limits _{H\subseteq G}\{e(H)+2c(H)-v(H)\}, \end{aligned}$$
(1)

where the summation is over all spanning subgraphs H of G and c(H) is number of connected components of H. Thus, the notion of the number of maximum state circles can be extended from planar graphs to any abstract graphs. Later we shall use s(H) to denote \(e(H)+2c(H)-v(H)\).

From (1), \(s_{\max }(G)\) is independent of the particular embedding of a planar graph G. A weak point of (1) is that computing \(s_{\max }(G)\) for a plane graph G is still time consuming. In Sect. 2, we show that

Theorem 1.1

For any graph G,

$$\begin{aligned} s_{\max }(G)=s(H)=e(H)+2c(H)-v(H), \end{aligned}$$

where H is the spanning subgraph of G whose each component C is a maximal subgraph of G with \(\tau (C)\ge 2\).

Note that “C is a maximal subgraph of G with \(\tau (C)\ge 2\)” in Theorem 1.1 means that there is no other subgraph F of G with \(\tau (F)\ge 2\) properly contains C, and thus C is an induced subgraph of G. The uniqueness of H will be proved in Theorem 2.4. In Sect. 3, we provide a polynomial-time algorithm to find the spanning subgraph H of a graph G, as described in the above theorem. In the last Sect. 4, we pose a problem for further study.

2 The proof and some consequences

A fundamental structural theorem on edge-disjoint spanning trees in a graph, found independently by Nash-Williams (1961) and Tutte (1961), will play an important role in our investigation.

Theorem 2.1

(The Nash-Williams–Tuttte Theorem) A graph G has k edge-disjoint spanning trees if and only if, for every partition \(\mathcal {P}\) of V(G) into nonempty parts,

$$\begin{aligned} e(G/\mathcal {P})\ge k(|\mathcal {P}|-1), \end{aligned}$$

where \(e(G/\mathcal {P})\) is the graph obtained from G by contracting each part of \(\mathcal {P}\) into a single vertex.

Note that the trivial graph \(K_1\) is a graph which contains k edge-disjoint spanning trees for any \(k\ge 1\). The following result is an easy consequence of the above theorem.

Corollary 2.2

(Gusfield 1983) If a graph G is 2k-edge-connected, then \(\tau (G)\ge k\).

To prove Theorem 1.1, we need the following lemma.

Lemma 2.3

Let \(G_1\) and \(G_2\) be two graphs with \(V(G_1)\cap V(G_{2})\ne \emptyset \). If \(\tau (G_i)\ge 2\) for each \(i\in \{1,2\}\), then \(\tau (G_1\cup G_2)\ge 2\).

Proof

Assume that \(T_{1}\) and \(T_{2}\) are two edge-disjoint spanning trees of \(G_{1}\); \(T_{1}'\) and \(T_{2}'\) are two edge-disjoint spanning trees of \(G_{2}\). It is easy to see that \(T_1\cup (T_1{'}{\setminus } E(G_1))\) and \(T_2\cup (T_2{'}{\setminus } E(G_1))\) are two edge-disjoint connected spanning subgraphs of \(G_1\cup G_2\). Each connected spanning subgraph of \(G_1\cup G_2\) contains a spanning tree, thus \(\tau (G_1\cup G_2)\ge 2\). \(\square \)

Theorem 2.4

For a graph G, there is unique spanning subgraph H of G such that each component C of H is a maximal subgraph of G with \(\tau (C)\ge 2\).

Proof

By Lemma 2.3, for a vertex \(v\in V(G)\), there is unique maximal subgraph \(G_v\) of G with \(v\in V(G_v)\) and \(\tau (G_v)\ge 2\). So, the result follows.\(\square \)

Now we are ready to prove our main theorem.

Proof of Theorem 1.1

Suppose that H is a spanning subgraph of G such that \(s_{\max }(G)=s(H)=e(H)+2c(H)-v(H)\) with c(H) as small as possible. Let \(H_{1}\), \(H_{2}\), \(\ldots \), \(H_{k}\) be all components of H, where \(k=c(H)\).

Claim 1 Each \(H_i\) is an induced subgraph of G for \(i=1,2,\ldots ,k\).

Suppose that \(H_j\) is not an induced subgraph of G for some j. Then \(e(G[V(H_j)])>e(H_j)\). Let \(H'\) be the spanning subgraph of G obtained from H by replacing \(H_j\) with \(G[V(H_j)]\). It is clear that \(s(H')-s(H)>0\). This proves the claim.

It remains to show the following claim.

Claim 2 Each component \(H_{i}\) (\(1\le i\le k\)) is a maximal subgraph of G with two edge-disjoint spanning trees.

Without loss of generality, let \(H_1\) has no two edge-disjoint spanning trees. By Theorem 2.1, there is a partition \(\mathcal {P}\) of \(V(H_1)\)  :  \(V_{1_{1}}\), \(V_{1_{2}}\) , \(\ldots \), \(V_{1_{p}}\) such that

$$\begin{aligned} e(H_{1}/ \mathcal {P})< 2(|\mathcal {P}|-1), \end{aligned}$$

where \(p=|\mathcal {P}|\). Let \(H'\) be the spanning subgraph obtained from H by replacing \(H_1\) with \(G[V_{1_{1}}]\), \(G[V_{1_{2}}]\) , \(\ldots \), \(G[V_{1_{p}}]\). So,

$$\begin{aligned} s(H')-s(H)&=[e(H')+2c(H')-v(H')]-[e(H)+2c(H)-v(H)]\\&=-e(H_{1}/ \mathcal {P} )+2(|\mathcal {P}|-1)>0, \end{aligned}$$

contradicting the choice of H.

Next we show that each \(H_i\) is a maximal subgraph of G with two edge-disjoint spanning trees. Suppose that \(H_1\) is not maximal with respect to the above property. By Claim 1, there exists an induced subgraph \(H_1'\) of G with two edge-disjoint spanning trees such that \(H_1\subseteq H_1'\) and \(V(H_1)\subset V(H_1')\).

Let \(\mathcal {A}=\{j\ |\ V(H_j)\cap V(H_1')\ne \emptyset \) with \(1\le j\le k\}\) and let \(H_1^*=G[\cup _{j\in \mathcal {A}} V(H_j)]\). By Lemma 2.3, \(H_1^*\) has two edge-disjoint spanning trees. By Theorem 2.1, for any vertex partition \(\mathcal {P}_1\) of \(H_1^*\), \(e(H_{1}^*/ \mathcal {P}_1 )-2(|\mathcal {P}_1|-1)\ge 0\).

Let \(H''\) be the spanning subgraph of G obtained from H by replacing those components \(H_j, j\in \mathcal {A}\) with \(H_1^*\). Let \(\mathcal {P}_1\) be the partition of \(V(H_1^*)\) composed of \(V(H_j), j\in \mathcal {A}\). Therefore,

$$\begin{aligned} s(H'')-s(H)&=\left[ e(H'')+2c(H'')-v(H'')\right] -\left[ e(H)+2c(H)-v(H)\right] \\&=e(H_{1}^*/ \mathcal {P}_1 )-2(|\mathcal {P}_1|-1)\ge 0. \end{aligned}$$

By the maximality of s(H), \(s(H'')=s(H)\). However, \(c(H'')<c(H)\), contradicting the choice of H.

This completes the proof of the claim and thus the proof of the theorem. \(\square \)

Corollary 2.5

If G is a graph with \(\tau (G)\ge 2\), then \(s_{\max }(G)=e(G)-v(G)+2\).

Proof

By the assumption, G is itself a maximal subgraph of G with \(\tau (G)\ge 2\). So, by Theorem 1.1,

$$\begin{aligned} s_{max}(G)=s(G)=e(G)-v(G)+2c(G)=e(G)-v(G)+2. \end{aligned}$$

\(\square \)

Corollary 2.6

If G is a 4-edge-connected graph, then \(s_{\max }(G)=e(G)-v(G)+2\).

Proof

It is an immediate consequence of Corollaries 2.2 and 2.5. \(\square \)

For a plane graph G, f(G) denotes the number of faces in G.

Theorem 2.7

[Euler’s Formula (Bondy and Murty 1976)] For a connected plane graph G, \(v(G)-e(G)+f(G)=2.\)

By Theorem 2.7 and Corollary 2.6, we can immediately obtain the following result in Jin et al. (2015).

Corollary 2.8

[(Theorem 4.4 in Jin et al. (2015)] If G is a 4-edge-connected plane graph, then \(s_{\max }(G)=f(G)\).

Corollary 2.9

Let G be a graph. If \(\tau (F)<2\) for any nontrivial subgraph F of G, then

$$\begin{aligned} s_{\max }(G)=v(G). \end{aligned}$$

Proof

Let H be spanning subgraph of G whose each component is a maximal subgraph of G with two edge-disjoint spanning trees. By Theorem 1.1, \(s_{\max }(G)=e(H)+2c(H)-v(H)\). By the assumption, each component of H must be trivial, implying that H is empty. Therefore,

$$\begin{aligned} s_{\max }(G)=s(H)=e(H)-v(H)+2c(H)=0-v(G)+2v(G)=v(G). \end{aligned}$$

\(\square \)

Let \(I_k\) denotes the graphs with exactly two vertices joined by k parallel edges. Note that there are just two connected cubic graph of order 4, i.e. \(K_4\) and \(G_4\) as shown in Fig. 3 (the left one).

Fig. 3
figure 3

Two small graphs \(G_4\) and \(G_3\) with parallel edges

Corollary 2.10

If G is a connected cubic graph then

$$\begin{aligned} s_{\max }(G)=\left\{ \begin{array}{ll} 3=v(G)+1,&{} \quad \text {if } \,G\cong I_3\\ v(G),&{} \quad \text {otherwise}\\ \end{array} \right. \end{aligned}$$

Proof

Since G is cubic, v(G) is even. If \(v(G)=2\), the \(G\cong I_3\). It is clear that \(\tau (G)\ge 2\), and thus by Corollary 2.5, \(s_{\max }(G)=e(G)-v(G)+2=3=v(G)+1\).

If \(v(G)=4\), then \(G\cong K_4\) or \(G\cong G_4\). It is clear that \(\tau (G)\ge 2\). By Corollary 2.5, \(s_{\max }(G)=e(G)-v(G)+2=4=v(G)\).

Next assume that \(v(G)\ge 6\).

Claim If F is a nontrivial subgraph of G with \(\tau (F)\ge 2\), then \(F\cong I_2\) or \(F\cong G_3\).

Since \(\tau (F)\ge 2\), we have \(e(F)\ge 2(v(F)-1)\). On the other hand, since \(\Delta (F)\le 3\), \(e(F)\le \frac{3}{2} v(F)\). Combining the above two inequalities with \(v(G)\ge 6\), it follows that \(v(F)\le 4\) and \(F\ne G\). So, we conclude that \(F\cong I_2\) or \(F\cong G_3\) (the right one as shown in Fig. 3).

To apply Theorem 1.1, let H be the spanning subgraph of G whose each component C is a maximal subgraph of G with \(\tau (C)\ge 2\). By the above claim, each component of H is isomorphic to \(K_1\), or \(I_2\), or \(G_3\). Let \(c_1\), \(c_2\) and \(c_3\) be the number of components of H, which are isomorphic to \(K_1\), or \(I_2\), or \(G_3\).

$$\begin{aligned}\left\{ \begin{array}{ll} c_1+2c_2+3c_3=v(H)&{} \text { }\\ c_1+c_2+c_3=c(H)&{} \text {}\\ 2c_2+4c_3=e(H)&{} \text {}\\ \end{array} \right. \end{aligned}$$

By Theorem 1.1,

$$\begin{aligned} s_{max}(G)= & {} s(H)\\= & {} \ e(H)-v(H)+2c(H) \\= & {} \ (2c_2+4c_3)-(c_1+2c_2+3c_3)+2(c_1+c_2+c_3) \\= & {} \ c_1+2c_2+3c_3 \\= & {} \ v(G) . \end{aligned}$$

So, the proof is completed. \(\square \)

In next section, we give a polynomial-time algorithm for finding the spanning subgraph H of G such that each component C of H is a maximal subgraph of G with \(\tau (C)\ge 2\). Thereby, the computing the \(s_{max}(G)\) for any graph is polynomial.

3 An algorithm

The following optimization problem closely related to the above is widely studied, see Clausen and Hansen (1980), Hobbs (1989), Held and Karp (1971), Kundu (1974), Roskind and Tarjan (1985), Tarjan (1974), Tarjan (1976) and Yao (1975).

The edge-disjoint spanning tree problem

Input a graph with w(e) as the multiplicity for each edge e.

Output determine \(\tau (G)\) and find \(\tau (G)\) edge-disjoint spanning trees of G.

Zhang and Ou (2008) introduced the following operation when they were investigating the dynamic density of a graph. For a connected graph G, let T be a spanning tree of G, and F be a spanning forest of \(G{\setminus } T\).

Zhang–Ou operation

If \(E(G){\setminus } (T\cup F)\ne \emptyset \), then we choose an edge \(e_0\in E(G){\setminus } (T\cup F)\).

First, the edge \(e_0\) is colored red. Then, for the spanning tree T, the subgraph \(T+e_0\) of G contains a unique cycle C. Color all these edges in C with red. Second, for each red \(e'\in T\), color all edges of the unique cycle contained in \(F+e'\) (if this cycle exists). Take all newly colored edge \(e''\), color all edges in the unique cycle of \(T+e''\) and so on. This will be repeated until one of the following two cases occurs:

  1. 1.

    A red edge \(e^{(1)}\) joins two distinct components of F;

  2. 2.

    No more edge can be further colored.

If (1) happens, \(F+e^{(1)}\) is larger than F. However, the edge \(e^{(1)}\) may not be that extra edge \(e_0\). That is, it is possible that the edge \(e^{(1)}\) came from the spanning tree T. Now, let us trace back our coloring process. The edge \(e^{(1)}\) was colored red because it is contained in a cycle of \(T+e^{(2)}\), where \(e^{(2)}\) was colored red before the edge \(e^{(1)}\) was colored. Continue this trace-back procedure, we find a sequence of edges \(e^{(1)}, \ldots , e^{(s)}\) such that \(e^{(i)}\in T\) if i is odd and \(e^{(i)}\in F\) if i is even for any \(i\ge 1\). Note that s is even and \(e^{(s)}\) is the extra edge \(e_0\) that the process started with. In addition, \(e^{(i)}\) was colored red because it is contained in the cycle of \(T+e^{(i+1)}\) if i is odd (\(F+e^{(i+1)}\) if i is even). Now, the forest F is ready to be expanded by the following adjustment,

$$\begin{aligned} F:= F+e^{(1)}-e^{(2)}+\cdots +e^{(s-3)}-e^{(s-2)}+e^{(s-1)} \end{aligned}$$

and

$$\begin{aligned} T:=T -e^{(1)}+e^{(2)}+\cdots -e^{(s-1)}+e^{(s)}. \end{aligned}$$

Lemma 3.1

(Page 6 in Zhang and Ou 2008) If (2) happens, then \(\tau (H-e)\ge 2\) for any \(e\in E(H)\), where H is the subgraph of G induced by all red edges. In particular, \(T\cap H\) and \(F\cap H\) are two edge-disjoint spanning trees of H.

Theorem 3.2

Let G be a connected graph and let \(\mathcal {C}(G)=\{(T, F)|\ T\) is a spanning tree of G, F is a spanning forest of \(G{\setminus } {T}\}\). If for a pair \((T', F')\in \mathcal {C}(G)\), the case (2) occurs for any edge \(e\in E(G){\setminus } (T'\cup F')\), then \(|F'|\ge |F|\) for any \((T, F)\in \mathcal {C}(G)\).

Proof

Assume that the result is not true and let \((T'',F'')\) be a pair in \(\mathcal {C}(G)\) such that \(|F''|\) is maximum, and subject to this, \(|(T''\cup F'')\cap (T'\cup F')|\) is maximum.

Claim 1 There is an (red) edge \(e_0\in (T'\cup F'){\setminus } (T''\cup F'')\).

Since \(|T''\cup F''|>|T'\cup F'|\), there exists an edge \(e''\in (T''\cup F''){\setminus } (T'\cup F')\). First color \(e''\) in red and start Zhang–Ou operation for the pair \((T', F')\). Let \(H'\) be the subgraph induced by all red edges. by Lemma 3.1, \(\tau (H'-e'')\ge 2\). Moreover, \(T'\cap H'\) and \(F'\cap H'\) are two edge-disjoint spanning trees of \(H'\). This proves the claim.

Now we start another coloring process. First color \(e_0\) in red and start Zhang–Ou operation for the pair \((T'', F'')\). By the maximality of \(F''\), (2) happens. By the argument similar to the proof of Claim 1, there is a red edge \(e^*\in (T''\cup F''){\setminus } (T'\cup F')\) and a red edge sequence \(e^{(1)}, e^{(2)} \ldots , e^{(r)}\) such that \(e^{(1)}=e^*, e^{(r)}=e_0\). We consider two possible cases.

Case 1 \(e^*\in T''\)

Then r must be even. Let

$$\begin{aligned} T^{*}= & {} T''-e^{(1)}+e^{(2)}-\cdots -e^{(r-1)}+e^{(r)} \\ F^{*}= & {} F''-e^{(2)}+e^{(3)}+\cdots -e^{(r-2)}+e^{(r-1)}. \end{aligned}$$

Case 2 \(e^*\in F''\)

Then r must be odd. Let

$$\begin{aligned} T^{*}= & {} T''-e^{(2)}+e^{(3)}-\cdots -e^{(r-1)}+e^{(r)}\\ F^{*}= & {} F''-e^{(1)}+e^{(2)}-\cdots -e^{(r-2)}+e^{(r-1)}. \end{aligned}$$

In the above two cases, it is clear that \((T^{*}, F^{*})\in \mathcal {C}(G)\) and

$$\begin{aligned} |(T^{*}\cup F^{*})\cap (T'\cup F')|>|(T''\cup F^{''})\cap (T'\cup F')|, \end{aligned}$$

contradicting that \(|(T''\cup F'')\cap (T'\cup F')|\) is maximum. \(\square \)

Theorem 3.3

Let G be a connected graph and let \(\mathcal {C}(G)\)={\((T, F)|\ T\) is a spanning tree of G, F is a spanning forest of \(G{\setminus } {T}\}\). Assume that \((T', F')\in \mathcal {C}(G)\) with the property that \(|F'|\ge |F|\) for any \((T, F)\in \mathcal {C}(G)\) and let \(F_1', \ldots , F_t'\) be all components of \(F'\). Let \(\Gamma _i=G[V(F_i')]\) for each i. If \(\tau (G')\ge 2\) for a subgraph \(G'\) of G, then \(G'\subseteq \Gamma _i\) for some \(i\in \{1, \ldots , t\}\).

Proof

Suppose that \(G'\) is a subgraph of G with \(\tau (G')\ge 2\) such that \(V(G')\cap V(\Gamma _i)\ne \emptyset \) for each \(i\in \{1, \ldots , s\}\), where \(2\le s\le t\). Let \(T_1'\) and \(T_2'\) be two edge-disjoint spanning trees of \(G'\). Note that \(T_1'\cup (T{\setminus } T_1')\) is a connected spanning subgraph of G and \(T_2'\cup (F{\setminus } T_2')\) is spanning subgraph of G with \(c(T_2'\cup (F{\setminus } T_2'))<c(F)\). Moreover, they are edge-disjoint. Take a spanning tree \(T^*\) of \(T_1'\cup (T{\setminus } T_1')\) and a spanning forest \(F^*\) of \(T_2'\cup (F{\setminus } T_2')\) with \(c(F^*)=c(T_2'\cup (F{\setminus } T_2'))\). It is clear that \((T^*,F^*)\in \mathcal {C}(G)\). However, \(|F^*|>|F'|\), a contradiction. \(\square \)

figure a

Theorem 3.4

Algorithm 1 is correct. That is, Algorithm 1 finds the spanning subgraph H of G whose each component C is a maximal subgraph of G with \(\tau (C)\ge 2\).

Proof

By induction on the order n of G. The result is trivially true for \(n=1\). Now assume that \(n\ge 2\). If \(\tau (G)=1\), then after Step 2.2, we will find a pair \((T',F')\in \mathcal {C}(G)\) with maximum \(|F'|\). Let \(F_1', \ldots , F_t'\) be all components of \(F'\). By Theorem 3.3, any maximal subgraph \(G'\) of G with \(\tau (G')\ge 2\), \(G'\subseteq H_i\) for an integer \(i\in \{1, \ldots , t\}\), where \(\Gamma _i=G[V(F_i')]\) for each i. By Substep 3.2, we will repeat the algorithm for each \(\Gamma _i\). Thus, by induction hypothesis, our algorithm will find the spanning subgraph \(H_i\) of \(F_i\) whose each component C is a maximal subgraph of \(F_i\) with \(\tau (C)\ge 2\). It is clear that \(H=\cup _{i}^t H_i\). \(\square \)

4 Concluding remark

The genus of an oriented link is the minimum genus of any connected orientable surface spanning it. The genus of an unoriented link L, denoted by g(L), is the minimum taken over all possible orientations. Genus is an important invariant in knot theory. However, it is hard to compute in general.

Let D be a link diagram of a link L. Let \(\overrightarrow{D}\) be an orientation (going straight ahead when meeting a crossing) of D. Splitting each crossing of \(\overrightarrow{D}\) in the only way compatible with the orientation, we obtain a set of mutually disjoint simple circles, called Seifert circles (Seifert 1935) (see Fig. 4). We use \(\overrightarrow{s}_{\max }(D)\) to denote the maximum number of Seifert circles of \(\overrightarrow{D}\) taken over all possible orientations of D. It is clear that for a plane graph G,

$$\begin{aligned} \overrightarrow{s}_{max}(D(G))\le s_{max}(D(G)). \end{aligned}$$

In some special cases, the equality holds. For example, G is 3-edge connected even plane graph (i.e. the degree of each vertex is even). Let G be a plane graph. In fact, the genus g(L(G)) of the link L(G) the link diagram D(G) represents is related to \(\overrightarrow{s}_{max}(D(G))\) by the following equation (Crowell 1959; Gabai 1986; Murasugi 1958).

$$\begin{aligned} g(L(G))=\frac{2-\overrightarrow{s}_{\max }(D(G))+e(G)-\mu (L(G))}{2}, \end{aligned}$$
(2)

where \(\mu (L(G))\) is the number of components of the link L(G), i.e. the number of straight-ahead walks of \(G_m\) or the number of left-right paths of G.

Fig. 4
figure 4

a Splitting a crossing in the way compatible with the orientation; b Seifert circles of trefoil knot

It is interesting to formulate a graph-theoretical problem and find an efficient algorithm for computing \(\overrightarrow{s}_{\max }(D(G))\).