Edge-Disjoint Fibonacci Trees in Hypercube

,


Introduction
High speed computing is a key requirement for many applications of science and technology. Parallel computers perform high speed computing with thousands of processors operating parallelly and concurrently. The interconnection network of a parallel computer connects various components of the system and plays a crucial role in the computational process. A natural way to represent this interconnection network is to construct a graph where each processor of the system is represented by a vertex and each link connecting two processors is represented by an edge. This representation is the genesis for the interdisciplinary research involving engineering and computational aspects of parallel computers and graph theory.
Among the interconnection networks of parallel computers, the binary hypercube has received much attention. An important property of a hypercube, which makes it popular, is its ability to efficiently simulate the message routings of other interconnection networks. Defining mathematically, an n-dimension hypercube, , has 2 vertices each labelled with a binary string of length . Two vertices are adjacent if and only if their labels differ in exactly one position. Figure 1 shows hypercubes of dimensions 1, 2, and 3.
The problem of efficiently implementing parallel algorithms on parallel computers has been studied as a graph embedding problem, which is to embed the communication graph (underlying a parallel algorithm ) within the interconnection network topology (underlying a parallel computer ) with minimum communication overhead. Graph embeddings are mathematical models capturing the issues involved in the implementation of parallel algorithms on a parallel computer (see [1]) and establishing equivalence between interconnection networks of two parallel computers (see [2,3]).
Formally defining, an embedding of (guest) graph ( , ) into (host) graph ( , ) is a function : → such that if ( , V) is an edge in , then ( ) and (V) are connected by a path in . Dilation is one of the important parameters that measure the quality of an embedding. Defining mathematically, dilation ( ) := max{dist ( ( ), (V)) : ( , V) ∈ }, where dist ( , ) denotes the length of the shortest path connecting two vertices and in in . The dilation measures the communication delay when graph is embedded on graph . If dilation equals 1, then it implies that there is no communication latency and is isomorphic to a subgraph of and we write ⊆ . Since one aims to reduce the communication latency in a network, the goal of a parallel algorithm designer is to map the algorithm graph into the corresponding network such that ⊆ .  the design of parallel algorithms which require basic operations like merging, sorting, and searching. Hence, there is a large literature on embedding of various kinds of trees into the graphs of interconnection networks. In particular, embedding of binary trees into hypercubes has received special attention since trees serve as computational structures for parallel algorithms that employ, divide, and conquer paradigm.
Several researchers work on the problem of embedding a set of subgraphs, such as paths, rings, and trees, satisfying some constraints in a network. The problem of finding edgedisjoint spanning trees is an important example [4][5][6]. A number of trees of a graph are said to be edge-disjoint if no two trees contain the same edge of . Besides being of theoretical interest, this problem has two practical applications. One is to enhance the ability of fault tolerance. One way to achieve fault tolerant interprocessor communication is by exploiting and effectively utilizing the disjoint paths that exist between pairs of source and destination. The other application is to develop efficient collective communication algorithms in distributed memory parallel computers [5]. Several researches have been done to recognise what trees and how many of them can be accommodated in the hypercube; see [4][5][6].
It has been proved in [7] that a Fibonacci tree F ℎ of height ℎ is a subgraph of a hypercube with dimension ⌊0.75ℎ⌋ + 1.5. Since the hypercube ⌊0.75ℎ⌋+1.5 is not big enough to accommodate two copies of F ℎ , we choose ℎ to embed at least two copies of edge-disjoint Fibonacci trees. In this paper, we prove that, for ℎ ≥ 3, the hypercube ℎ contains edgedisjoint copies of two F ℎ , two F ℎ−2 , . . ., and two F , where = 2 if ℎ is even and = 3 if ℎ is odd. This is denoted by

Theorem 2.
For every ℎ ≥ 3, the hypercube ℎ contains two edge-disjoint Fibonacci trees F ℎ and F ℎ of height ℎ such that roots of F ℎ and F ℎ are labelled 0 ℎ and 0 ℎ−2 11, respectively. Proof. We prove the result by induction on ℎ. To do so, it is sufficient to give two labellings ℎ : F ℎ → ℎ and ℎ : F ℎ → ℎ for the tree F ℎ . For the basic case ℎ = 3, 4, the two labellings for each of F 3 and F 4 are given in Figures 3 and 4, respectively. In Figure 3(c) (resp., Figure 4(c)), we show the two trees F 3 and F 3 (resp., F 4 and F 4 ) inside 3 (resp., 4 ) as dashed and dotted lines, respectively.   For ℎ ≥ 5, we give a labelling procedure for F ℎ and F ℎ . We first provide the labelling for F ℎ . By induction hypothesis we are given embeddings (labellings) ℎ−1 : F ℎ−1 → ℎ−1 and ℎ−2 : F ℎ−2 → ℎ−2 . For notational convenience, we denote ℎ−1 (F ℎ−1 ) by ℎ−1 and ℎ−2 (F ℎ−2 ) by ℎ−2 . We extend the labellings ℎ−1 and ℎ−2 to a labelling ℎ of F ℎ by prefixing the labels of all the vertices of F ℎ−1 by 1 and the labels of all the vertices of F ℎ−2 by 01 and label the root of F ℎ by 0 ℎ ; see Figure 5(a). We note that the roots of F ℎ−1 and F ℎ−2 are labelled 10 ℎ−1 and 010 ℎ−2 and both are adjacent to the root of F ℎ which is labelled 0 ℎ . In a similar way, we next provide the labelling for F ℎ . By induction hypothesis we are given embeddings (labellings) ℎ−1 : F ℎ−1 → ℎ−1 and ℎ−2 : F ℎ−2 → ℎ−2 . For notational convenience, we denote ℎ−1 (F ℎ−1 ) by ℎ−1 and ℎ−2 (F ℎ−2 ) by ℎ−2 . We extend the labellings ℎ−1 and ℎ−2 to a labelling ℎ of F ℎ by prefixing the labels of all the vertices of F ℎ−1 by 1 and the labels of all the vertices of F ℎ−2 by 01 and label the root of F ℎ by 0 ℎ−1 11; see Figure 5(b). The recursive labelling technique of F ℎ (and hence F ℎ ) does not alter the adjacency property of the vertices since ℎ (and hence ℎ ) is an injective extension of ℎ−1 and ℎ−2 ( ℎ−1 and ℎ−2 ). The trees F ℎ and F ℎ are the required two edge-disjoint copies of * ℎ in ℎ .
Proof. In the labelling technique of F ℎ discussed in Theorem 2, the root is the only vertex whose label starts with 00. Hence, apart from the two copies of F ℎ , the edges of 00 ℎ−2 are unused in ℎ . By recursion, ℎ−2 contains 2F ℎ−2 ∪2F ℎ−4 ∪⋅ ⋅ ⋅∪2F , hence the theorem. As an illustration, referring to Figure 4, the hypercube 4 apart from containing two F 4 shown in dashed and dotted lines, it also contains two F 2 as follows: since F 2 is isomorphic to a path on four vertices, we give two path labellings (1)   This interconnection network was introduced by Hsu in [9]. Several topological properties of the Fibonacci cube have been studied over the recent years and various extensions have been introduced; see [10,11]. Also, recently there has been some work done on graph indexing and we refer to [12][13][14].

Conclusion
In this paper we proved that, for every ℎ ≥ 3, the hypercube ℎ of dimension ℎ contains two edge-disjoint copies of F ℎ , F ℎ−2 , . . . F 2 as subgraph (that is with dilation 1). This result shows that an algorithm with Fibonacci tree as its underlying data structure can be made to run concurrently on a hypercube network with no communication latency. Thus, this mathematical result will have a significant interest in the fields of parallel computing and interconnection networks.