• 沒有找到結果。

Proof of Theorem 5.2

在文檔中 圖的接觸表示法 (頁 91-99)

Convex Polygonal Duals

5.4 Proof of Theorem 5.2

In this section we give the full proof of Theorem 5.2. This section can be skipped without loss of continuity.

It is evident from the definition of t-FAA that, if the drawing can be straighten to satisfy the assignment, each inner face is assured to have at most t sides. Therefore, to prove Theorem 5.2, the only two things we need to deal with are (i) stretchability constraint and (ii) convexity constraint.

(Terminologies) We extend the graph-theoretic definitions of cycle, internal region, and outer region to pseudo-segments. Given a plane graph G and an FAA with ΣG the contact system of pseudo-segments corresponding to the FAA, a subset S (⊆ ΣG) of pseudo-segments is a cycle if there exists a cycle C in G which induces S (i.e., SC = S). Given a subset S⊆ ΣG, the internal region of S, denoted by in(S), is the set of faces in G surrounded by S. The outer region of S is the set of faces in G excluding the ones in in(S).

We deal with (i) stretchability constraint first.

Lemma 5.1. Let G be a biconnected plane graph whose degree 2 vertices are all in V (FO). It admits a t-SLR iff there exists a t-FAA such that each cycle has at least 3 free vertices.

Proof. Let ΣG denotes the contact system of pseudo-segments corresponding to the given FAA. The statement of this lemma is equivalent to "ΣG is stretchable iff each cycle in G has at least 3 free vertices".

We first prove the following claim:

Claim: Let S be a set of connected pseudo-segments and s /∈ S be a segment such that in(S) = in(S∪ {s}). Then S ∪ {s} has at least as many extremal points as S does.

Proof of Claim. Based on the location of s with respect to S, there are two cases:

1. s is located in in(S). Certainly the claim holds as the extremal points of S and S∪ {s} are identical. See Fig. 5.3(2) for an example. A new segment {g, h} is

added to the set S = {{a, b}, {c, d}, {e, f}} depicted in Fig. 5.3(1). After the inclusion, the extremal points remain to be{a, c, e}.

2. s is located in out(S). Since the inclusion of s does not enlarge in(S), s touches S in at most 1 point; otherwise, a new cycle enlarging the internal region is formed.

Therefore, the inclusion of s can only make at most 1 extremal point in S non-extremal, and it happens only when an extremal point in S touches the interior portion of s. However, since at least 1 of the 2 endpoints of s does not touch S, a new extremal point must be generated after the inclusion of s. See Fig. 5.3(3) for an example. The addition of the new segment s = {i, j} changes the set of extremal points from{a, c, e} to {c, e, i, j}.

As we have checked all the cases, the claim holds. See also Fig. 5.3(4) for a demon-stration of a situation that the inclusion of s lowers the number of extremal points but increases the internal region.

We write m(S) to denote the number of maximal edge-connected set of faces in in(S), and we let B1, B2, . . . , Bm be these sets of faces. We write Ci to denote the cycle enclosing Bi. In view of the above claim, the following statement is true:

To search for a subset of pseudo-segments of cardinality greater than 1 that has at most 2 extremal points, it suffices to check only candidate set X (set of set of pseudo segments) such that, for each S ∈ X:

1. Any proper subset of S encloses a smaller internal region than in(S);

2. S is connected (since the number of extremal points of S is the sum of that of its connected components).

Note that the first condition implies S = i∈{1,...,m(S)}SCi.

Our next task is to narrow down the candidate set to cycles only (i.e. the ones satisfying m(S) = 1 in the above candidate sets). For any S ∈ X such that m(S) > 1, we show that it is always possible to find another set of pseudo segments ˜S ∈ X with

b

Figure 5.3: Illustration of inclusion of a new segment into a set of pseudo segments.

b

Figure 5.4: Illustration of finding ˜S.

smaller number m such that the number of extremal points in ˜S ≤ max(2, the number of extremal points in S).

Suppose that S ∈ X, and m(S) > 1. We choose an integer k such that the set S = i∈{1,...,m(S)},i̸=k SCi remains a connected set of pseudo segments. Since each Bi is chosen to be a maximal edge-connected set of faces, S ∩ SCk contains exactly 1 segment. Furthermore, if we let S∩ SCk ={s}, SCk− {s} does not touch sin both of its two endpoints. We divide the situation into two cases:

1. There is an extremal point of SCk located in SCk − {s}. Then, S contains no more extremal points than S does;

2. There is no extremal point of SCk located in SCk − {s}. Then SCk has at most 2 extremal points.

As a result, choosing ˜S to be one of S, SCk that has smaller number of extremal points always works. The two cases are depicted in Fig. 5.4, where white dots indicate extremal points. Fig. 5.4(1) shows S =i∈{1,...,3}SCi. Fig. 5.4(2) depicts the situation that S = SC2∪ SC3 is chosen to be ˜S when k = 1; Fig. 5.4(3) shows the case of k = 3, in which ˜S is set to be SC3.

As we have narrowed down the candidate set X to cycles only, we now know that

only cycles matter in deciding stretchability of ΣG. To complete the proof, It suffices to prove the following two statements:

1. Given a cycle C in G, the number of the extremal points in SC is smaller than or equal to the number of free vertices in C.

2. Given a subset of pseudo segments S that is a cycle, we can find a cycle C in G such that S = SC, and that the number of the extremal points in S equals the number of free vertices in C.

First of all, we identify three types of points p in SC:

1. p is located in C, and p is an extremal point of S. Then, it must be also a free vertex which is either unassigned or assigned to a face not containing any edge in C.

2. p is located in C, and p is an endpoint of a segment s ∈ S and is interior to another segment s∈ S. Then, it must be also a free vertex which is assigned to a face containing an edge in C.

3. p is not located in C, and p is an extremal point of S.

Take Fig. 5.5 as an example. Let C = (b, c, e, g, h), then SC = {{a, c}, {b, h}, {a, g}, {d, e}, {g, f}}. The points a, b, c, d, e, f, g, h are of types 3, 2, 2, 3, 2, 3, 1, 2, respectively. Note that a free vertex is either of type 1 or of type 2; an extremal point is either of type 1 or of type 3.

We define a mapping from free vertices of C to extremal points in S as follows:

1. For a type 1 free vertex v, we map it to itself.

2. For a type 2 free vertex v, we map it to the type 3 endpoint u of the segment s such that v is an interior point of s and that the path (u, . . . , v) along s does not share any edge with the cycle C.

b

Figure 5.5: Illustration of relating extremal points to free vertices.

Also consider the above example, the free vertices b, c, e, g, h are mapped to end-points a, d, f, g, a, respectively.

Proof of Statement 1. It suffices to show that the above mapping is onto. Suppose that an endpoint v is not being mapped to. It must be of type 3. Let it be an endpoint of a segment s. We walk along the segment s from v until we reach C. We must stop at an junction point v which is interior to s and is an endpoint of another segment s. It is immediate that vshould have been mapped to v.

Proof of Statement 2. We choose C to be the cycle that encloses in(S) (i.e. in(S) = in(C)), It suffices to show that the above mapping is an 1-1 correspondence between extremal points in S and free vertices in C. As we already argued that the mapping is onto, we only need to show that it is 1-1.

The only situation that violates the 1-1 condition is that a type 3 point p is being mapped by several type 2 points through different segments. This is not possible ac-cording to our choice of C since two of these segments and a portion of C must form a region belonging to in(S)\ in(C). Consider again the same example, type 3 extremal point a is mapped to two type 2 free vertices b, h through segments{a, c}, {a, g}, and there is a face F surrounded by these two segments and a portion of the cycle belonging to in(S)\ in(C).

Hence the lemma is concluded.

Our next task is to deal with (ii) convexity constraint. The idea of our strategy is to construct a modified t-FAA ˆX on a modified graph ˆG such that each vertex v∈ V (G) is automatically forced to be a convex corner in any face F it incident to.

F

Figure 5.6: Illustration of proof of Lemma 5.2.

Given a biconnected plane graph G whose degree 2 vertices are all in V (FO), and given its t-FAA X, we define ˆG and ˆX as follows. For each vertex v ∈ V (G) of degree

> 2, for each inner face F incident to v such that v is not assigned to F , let e1, e2be the two edges in E(F ) that incident to v, we subdivide these two edges. Let the two new vertices introduced by subdividing e1, e2 be v1, v2, respectively. We add a new edge e ={v1, v2}, which divides F into two regions. Lastly, we force v1, v2 to be assigned to the face that is not formerly a region of F . See the upper part of Fig. 5.6 for an illustration.

It can be easily seen that X can be straighten in the way that each face in G is a convex polygon iff ˆX is stretchable. Therefore, to complete the proof of Theorem 5.2, it suffices to prove the following lemma:

Lemma 5.2. Let G be a biconnected plane graph whose degree 2 vertices are all in V (FO), and let X be a t-FAA of G. ˆX is stretchable iff each cycle in G has at least 3 strongly-free vertices with respect to X.

Proof. (⇒) Regarding necessity, it suffices to prove that, for each cycle C in G, we can find a cycle C in ˆG such that the number of free vertices in C equals the number of strongly-free vertices in C. This statement implies that, when ˆX is stretchable, all cycles in G has at least 3 strongly-free vertices with respect to X.

The procedure of finding Cis described as follows. Let v be an unassigned vertex in V (C) incident to exactly one face F in out(C). In other word, v is a free but not strongly-free vertex in C. Let e, e1, e2, v1, v2be the edges and vertices described in the

construction of ˆG (for our chosen v, F ). We first let C = C. Then, for each such v, we replace (v1, v, v2) with e = (v1, v2) in C. It is clear from the definition of assignment ˆX that both v1, v2are not free in C. As a result, a vertex in C is free iff it is strongly-free in C.

(⇐) For sufficiency, we prove that, when ˆX is not stretchable, we can always find a cycle Cin G that has at most 2 strongly-free vertices with respect to X. We first select C to be a cycle in ˆG of at most 2 free vertices. Among those cycles of at most 2 free vertices, we choose C to be the one having the least number of newly added edges (i.e.

the edescribed in the construction of ˆG).

If there is no newly added edges in C, simply setting C = C suffices. In the below, we assume there are some newly added edges in C.

Let e the a newly added edge in C, and let e1, e2, v1, v2 be the relevant edges and vertices as defined before. All possible situations are enumerated in the lower part of Fig. 5.6. For each case except the last one, we describe an modification leading to another a cycle ˜C having at most 2 free vertices but not containing e.

For (1),(2), we replace the portion (v1, v2, v) in C with (v1, v). For (3),(4) we replace the portion (v1, v2) in C with (v1, v, v2). For (5), we replace the path (v1, v2, . . . , v) with (v1, v). The change of free vertices is summarized in the below table:

Case Among {v, v1, v2}, the ones "must" be free in C.

Among {v, v1, v2}, the ones "may" be free in C.˜

1 v2 v

2 v1 v

3 None v

4 v1, v2 v

5 v1, v2 v

Note that we get two cycles after the modification for case (3). Since v may become a new free vertex in both new cycles, and since the number of free vertices in C is at

most 2, the total number of free vertices in these two new cycles is at most 4. As a result, one of them contains at most 2 free vertices. Choosing ˜C to be this one suffices. For cases (1),(2),(4),(5), it is immediate from the table that the resulting cycle ˜C contains at most 2 free vertices.

Therefore, that the existence of configurations of cases (1-5) contradicts our choice of C is concluded. The following modification construct the desired cycle C from C which is free of any configuration of cases (1-5). For each newly added edges e in C, its local structure must obey case (6). We modify the cycle by replacing (v1, v2) with (v1, v, v2). After the modification, both v1, v2 remains non-free. However, v may become a new free vertex. As the face (v1, v, v2) is the only face v incident to in the outer region of the resulting cycle, v is not qualified to be strongly-free. By doing so for all e in C, we get a desired cycle C.

在文檔中 圖的接觸表示法 (頁 91-99)