^{1}

^{*}

^{1}

^{1}

Given a simple graph G with n vertices, m edges and k connected components. The spanning forest problem is to find a spanning tree for each connected component of G. This problem has applications to the electrical power demand problem, computer network design, circuit analysis, etc. In this paper, we present an time parallel algorithm with processors for constructing a spanning forest on proper circle graph G on EREW PRAM.

Given a simple connected graph G with n vertices, the spanning tree problem is to find a tree that connects all the vertices of G. Generally, there exist a number of different spanning trees in a connected graph. Let T be a tree with n vertices. Then the following statements are equivalent [

1) T contains no cycles, and has n − 1 edges;

2) T is connected, and has n − 1 edges;

3) T is connected, and each edge is a bridge;

4) Any two vertices of T are connected by exactly one path;

5)T contains no cycles, but the addition of any new edge creates exactly one cycle.

Given a simple graph G with n vertices and k components, the spanning forest problem is to find a spanning tree for each component of G. The spanning forest F has n − k edges. This problem has applications, such as electric power systems, computer network design and circuit analysis [

In general, it is known that more efficient algorithms can be developed by restricting classes of graphs. For instance, Wang et al. proposed an optimal parallel algorithm for constructing a spanning tree on permutation graphs that runs in O ( l o g n ) time using O ( n / log n ) processors on the EREW (Exclusive Read Exclusive Write) PRAM [

Let F be a family of nonempty sets. A simple graph G is the intersection graph of F if there exists a one-to-one correspondence between the vertices of G and the sets in F , such that two vertices in G are adjacent if and only if their corresponding sets have a nonempty intersection. A circle graph is an undirected graph isomorphic to the intersection graph of a finite set of chords in a circle. It is not difficult to show that the class of circle graphs contains all the complete bipartite graphs. Circle graphs have been introduced by Even and Itai in [

In this study, we define proper circle graphs that are subclass of circle graphs. We propose a parallel algorithm for spanning forest problem on a proper circle graphs. It can run in O ( l o g n ) time with O ( n / log n ) processors on the EREW PRAM.

We first illustrate the chord diagram before defining the circle graph. There is a unit circle C such that the consecutive integer i , 1 ≤ i ≤ 2 n are assigned clockwise on the circumference (n is the number of chords). A chord i is the line in a circle C that connects two points a i and b i ( a i < b i ) on C and is denoted by [ a i , b i ] . Without loss of generality, each chord i has two terminal points a i and b i , and all terminal points are distinct. We assume that chords are labeled in increasing order of their corner points b i ’s, i.e., i < j if b i < b j . The geometric representation described above is called the chord diagram. We next introduce the circle graphs. An undirected graph G c is a circle graph if it can be represented by the following chord diagram; each vertex of the graph corresponds to a chord in the chord diagram, and two vertices are adjacent in G c if and only if their chords intersect.

In the following, we define proper circle graphs. If a i < a j for any two chords i and j ( i < j ) in the chord diagram, such chord diagram is called “proper.” The proper circle graph is a graph that is constructed by a proper chord diagram.

In the following, we introduce the expanded chord diagram constructed from a chord diagram for solving the problem easier. An expanded chord diagram can be constructed by transforming chord [ a i , b i ] in chord diagram to a horizontal line segment such that left and right endpoints have values a i and b i , respectively.

We describe some properties on the proper circle graph which are useful for constructing the algorithm for spanning forest problem. For two chords i and j ( i < j ) in the (normal) chord diagram, we say chords i and j are disjoint if b i < a j . Moreover, we say chord j contain i if a j < a i .

The following Lemma 1 is well known [

i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|

a i | 1 | 2 | 3 | 5 | 6 | 11 | 12 | 13 | 16 | 18 | 19 | 20 |

b i | 4 | 7 | 8 | 9 | 10 | 14 | 15 | 17 | 21 | 22 | 23 | 24 |

Lemma 1. Let D be chord diagram and G c be a circle graph corresponding to D. Moreover, let ED be an expanded chord diagram constructed from D. Then, vertices i and j ( i < j ) are adjacent in G c if and only if chord i and j are not disjoint and i does not contains j in ED.

We can establish the following lemma using Lemma 1.

Lemma 2. Let D be proper chord diagram and G be a proper circle graph corresponding to D. Moreover, let ED be an expanded chord diagram constructed from D. Then, vertices i and j ( i < j ) are adjacent in G if a j < b i for two chords i and j in ED.

(Proof) By Lemma 1, vertices v i and v j ( i < j ) are adjacent in G c if and only if chord i and j are not disjoint and i does not contains j in ED. By the definition of proper circle graph, a i < a j for any two chords i and j ( i < j ) in the chord diagram. Therefore, a j < a i (that is, contain) never occur in proper chord diagram. Then, vertices i and j ( i < j ) are adjacent in G if a j < b i for two chords i and j in ED. □

In this section we propose a parallel algorithm for constructing a spanning forest F of a given proper circle graph G. The spanning forest F is constructed from proper chord diagram D corresponding to G. Input of the algorithm is each chord terminal points a i and b i of D. All chords have been sorted by corner point b i in increasing order. Instead of using a sophisticated technique, we propose simple parallel algorithms using only the parallel prefix computation [

Lemma 3. After executing Step 3 of Algorithm CSF, F consists of the spanning forest of proper circle graph G.

(Proof) In Step 2 of Algorithm CSF, we compute an array M ( i ) for 1 ≤ i ≤ n . M ( i ) is the largest chord number that intersects chord i. This means ( i , M ( i ) ) is an edge in proper circle graph G and M ( i ) is the largest vertex adjacent to i.

In Step 3 of Algorithm CSF, we add an edge in G if i > M [ i ] . A graph that adds just one edge to a vertex larger than itself from each vertex is connected. Moreover, M ( i ) of root vertices have same value as themselves. Then, after executing Step 3, each component in G is connected and has n ′ vertices and n ′ − 1 edges. By the properties of tree, F is a spanning forest of G. □

We analyze the complexity of Algorithm CSF. In Step 1, we initialize F and M [ i ] . This step can be implemented in O ( l o g n ) time using O ( n / log n ) processors by applying Brent’s scheduling principle [

i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|

a i | 1 | 2 | 3 | 5 | 6 | 11 | 12 | 13 | 16 | 18 | 19 | 20 |

b i | 4 | 7 | 8 | 9 | 10 | 14 | 15 | 17 | 21 | 22 | 23 | 24 |

M i | 3 | 5 | 5 | 5 | 0 | 8 | 8 | 9 | 12 | 12 | 12 | 0 |

computed in O ( l o g n ) time using O ( n / log n ) processors by applying parallel prefix computation [

Theorem 4. Algorithm CSF constructs a spanning forest of trapezoid graph G in O ( l o g n ) time with O ( n / log n ) processors on EREW PRAM.

In this paper, we presented a parallel algorithm to solve the spanning forest problem on proper circle graphs. This algorithm can be implemented in O ( l o g n ) time with O ( n / log n ) processors on an EREW PRAM computation model using only parallel prefix computation [

We express many thanks to anonymous referees for their valuable advices on the theory of our attacks and their helpful editorial comments. This work was supported by JSPS KAKENHI Grant Number 25330019 and 17K00324 both.

Honma, H., Nakajima, Y. and Sasaki, A. (2017) A Parallel Algorithm for the Spanning Forest Problem on Proper Circle Graphs. Journal of Computer and Communications, 5, 48-55. https://doi.org/10.4236/jcc.2017.514005