Sense l inestimable ajuda de la gent del CFIS i sobretot, de Josep Grané, no hauria pogut imaginar arribar a fer un projecte com aquest.

Size: px
Start display at page:

Download "Sense l inestimable ajuda de la gent del CFIS i sobretot, de Josep Grané, no hauria pogut imaginar arribar a fer un projecte com aquest."

Transcription

1 Acknowledgements Aquest projecte suposa el final d un llarg camí que vaig començar ara fa sis anys. Durant aquest temps, molta gent ha estat al meu costat ajudant-me a formar-me i a ser millor persona. Família, amics, companys i professors, a tots ells els hi agraeixo aquest esforç. Molt especialment, volia mencionar als meus directors del projecte, Ramón Beivide i Mateo Valero, que han tingut un paper crucial en la seva elaboració. Els seus consells i ajuda sempre que els necessitava m han demostrat la seva gran vàlua com a persones i científics. També voldria destacar a la gent del departament d Arquitectura de Computadors de la Universitat Politècnica de Catalunya i al grup d Arquitectura i Tecnologia de Computadors de la Universitat de Cantàbria, que em van estimular a anar més lluny en aquest projecte. No puc oblidar la col laboració de Carmen Martínez i Enrique Vallejo, que em van rebre com un amic a Santander. Sense l inestimable ajuda de la gent del CFIS i sobretot, de Josep Grané, no hauria pogut imaginar arribar a fer un projecte com aquest. Finalment, vull destacar per sobre de tot el paper de la meva família. Els meus pares, la meva germana i la Isabel sempre han estat un exemple d amor i sacrifici envers la meva persona. i

2 ii Acknowledgements

3 Contents 1 Introduction 1 Gaussian Graphs 5.1 Some Ideas about Z[i] Gaussian Graphs Weight Distribution of Gaussian Graphs The Odd Case The Even Case Representing Gaussian Graphs as Two Attached Squares Notable Gaussian Networks The Square Torus as a Gaussian Network The Doubly Twisted Torus as a Gaussian Network The Dense Midimew as a Gaussian Network The Rectangular Twisted Torus The Twisted Torus as a Circulant Graph Distance-related Parameters of Gaussian Graphs Unicast Routing in Gaussian Networks Dense Gaussian Networks Unicast Routing Collective Communications Technological Aspects: Folding and Expansion Gaussian versus Torus Networks Hierarchical Gaussian Networks A First Approach Generalized Hierarchical Gaussian Networks Perfect Gaussian Codes Perfect Codes for Gaussian Graph Metrics Perfect Codes over Quotient Rings of Gaussian Integers Uniqueness Result Lee Codes: a Remarkable Subcase Super-Gaussian Networks iii

4 iv CONTENTS 4..1 Routing in Super-Gaussian Networks Conclusions 73 A Appendix I. Mathematical Development 75 A.1 Basic Definitions A. Properties of the Gaussian Integers A.3 Prime Decomposition A.4 The Gaussian Integers Modulo a + bi B Appendix II. Broadcast in Gaussian networks 87 Bibliography 93

5 List of Figures.1 Gaussian graph G 3+4i Circulant graph C 5 (3, 4) Tesselation generated by β = + 3i Tesselation generated by β = + 5i Tesselation generated by β = + 7i Tesselation generated by β = + 6i Tesselation generated by β = 3 + 5i Tesselation generated by β = 5 + 5i Tesselation generated by the Gaussian graph G +7i Lines r i and s j in the Gaussian graph generated by β = + 7i Tesselation generated by the Gaussian graph G 3+11i Lines r i and s j in the Gaussian graph generated by β = i Gaussian graph generated by β = 5 + 5i Different representation of G +5i Constructing different Gaussian graphs Square Torus of size Doubly twisted Torus of 17 nodes Different representation of G +3i Rectangular twisted Torus G 4+4i Twisted Torus of 16 nodes Routing in Gaussian graph generated by α = 4 + 4i Unicast routing algorithm Routing record generator Routing in dense Gaussian network G 3+4i with the weight distribution Routing in dense Gaussian network G 3+4i with the two squares distribution Classical proof of the Pythagorean Theorem One-to-all broadcast algorithm Folded Torus Folded dense Gaussian network Expansion of the dense Gaussian network G 3+4i Hierarchical Gaussian network HG 1+i v

6 vi LIST OF FIGURES 3.11 Hierarchical Gaussian network HG 3+4i Central distribution for G t+(t+1)i Corners distribution for G t+(t+1)i Perfect 1-error correcting code over Z[i] 6+7i Perfect code over G Perfect code over G 3+4i Routing in super-gaussian graph G (3+4i) B.1 Broadcast in G +7i with a + b = 53 odd B. Broadcast in G 3+7i with a + b = 58 even

7 Chapter 1 Introduction The use of replicated hardware interconnected by a suitable interconnection network is emerging as a design solution for multiple digital systems. Currently, networks are used in the design of systems on chip, cluster microprocessors and on-chip multiprocessors. Input/output devices are nowadays being integrated in computer systems by using switched networks. Clusters of computers, multiprocessors and massively parallel processors rely on the effectiveness of their interconnection mechanisms. Finally, switch fabrics for local, metropolitan and wide area networks are beginning to be designed around switched or direct interconnection networks. In the last decades, hundreds of parallel systems have been designed. The most used network topologies have been Meshes, Tori and Hypercubes. Nowadays, Hypercube architectures have declined in importance but lower degree topologies such as Tori and Meshes still compete in the design of the latest parallel systems [1], [9], [13]. Circulant graphs are also attractive topologies that have been extensively studied due to their good distance-related properties and their optimal connectivity. In fact, the Illiac IV, one of the most popular parallel computers of its time, used a degree four circulant graph of 64 nodes. Graph Theory constitutes a powerful modeling tool which has multiple applications in computer and communication science and engineering. In particular, Graph Theory has been widely used for modeling networks, processors being represented as graph nodes and communication links represented as the edges connecting them. Three basic graph parameters are diameter, average distance and connectivity. Diameter and average distance should be low to minimize communication delays and connectivity should be high for robustness. Symmetry is another desirable topological property that simplifies network analysis and design. In addition, most popular networks have an associated metric, borrowed from Coding Theory, that facilitates their definition and analysis. Such metrics correspond to the graph distance among nodes in the considered network. For example, the 1

8 CHAPTER 1. INTRODUCTION Hamming distance is the appropriate metric for Hypercubes, the Manhattan distance for Meshes and the Lee distance for Tori [3], [7]. Hence, there is a clear relationship between the field of Interconnection Networks and the field of Coding Theory. Consequently, we can define codes whose characteristics are based on the topological properties of their underlying graphs. In this work, we introduce and algebraically characterize a new class of undirected graphs denoted as Gaussian Graphs. Then, we solve certain problems on them which have applications in the design of computer networks and in the definition of new perfect error correcting codes for two-dimensional signal constellations. The graphs analyzed in this work are denoted as Gaussians because their nodes are labeled by means of Gaussian integers. The Gaussian integers Z[i] are complex numbers in which both the real and imaginary parts are ordinary integers, that is, Z[i] := {x + yi x, y Z}. They form a countable subset of the complex numbers which is closed under addition and multiplication i.e., the Gaussian integers are a subring of the complex numbers. The units of this subring are the four Gaussian integers which have multiplicative inverses, namely ±1 and ±i. Despite the presence of the imaginary unit i, they are quite similar to the traditional integers. In fact, Z[i] is an Euclidean Domain and hence we can construct an Euclidean algorithm to find the greatest common divisor between two Gaussian integers. Furthermore, they are a Principal Ideal Domain and have a unique factorization into a product of Gaussian primes. The Gaussian integers have played important roles in the development of two of the greatest theorems of mathematics of the last two centuries: the reciprocity theorems and Fermat s Last Theorem leading to the beginning of algebraic number theory. It is known that if p is an integer prime of the form 4k + 1, then the ring of Gaussian integers modulo m + ni, where m + n = p, is a finite field of p elements, which is therefore isomorphic to the finite field Z p, but which folds up its structure in a more interesting -dimensional way. In this work, we employ quotient rings of Gaussian integers as the adequate mathematical model to deal with certain mesh-like graphs with wrap-around links. Since Gaussian integers are the coordinates of integer points in the complex plane, they can be used to model well-known degree four graphs which can be naturally laid on the plane. This new labeling facilitates the analysis of these graphs as it incorporates their inherent two-dimensional nature. Moreover, we can easily solve important problems in these graphs by exploiting the well-known algebraic structure underlying them. Our study includes Tori, rectangular twisted Tori, doubly twisted Tori and Midimew graphs. We will show that all these known topologies are members of the more general family of Gaussian graphs.

9 In respect to Coding Theory, a metric denoted as the Mannheim distance was introduced by Huber in [1] to design error correcting codes for two-dimensional signal spaces. We have proved that, actually, the Mannheim distance is not a true metric because it does not fulfill the triangular inequality. Instead, we will use in this work a new metric denoted as Gaussian distance. This new Gaussian metric corresponds to the graph distance in Gaussian graphs. Hence, this new distance allows us to propose a new family of error correcting codes for two-dimensional constellations. The results obtained in this work can be summarized in the following way. First of all, we establish an unpublished relationship between certain graph families and the ring of Gaussian integers. Then, we show how well-known interconnection networks are members of the more general class of the Gaussian graphs. Next, we solve some distance-related problems in these graphs by obtaining the weight distribution of their nodes and providing optimal routing for them. Then, we concentrate on dense Gaussian graphs, those Gaussian graphs containing the maximum number of nodes for a given diameter. We provide an optimal broadcast algorithm for these graphs and we consider certain technological issues such as obtaining practicable lay-outs and providing a simple expansibility. We also study the possibility of building hierarchical structures made up of Gaussian graphs that might be useful for the design of effective and optimized interconnection networks. Finally, we establish a relationship between the problem of finding perfect t-dominating sets on these graphs and the existence of perfect codes able to correct up to errors of weight t. The rest of this work is organized as follows. In Chapter we firstly review some well-known properties of Z[i]. Then, we introduce Gaussian graphs and we obtain the weight distribution of the nodes of these graphs. Next, we list and algebraically characterize some well-known topologies previously used as interconnection networks that, actually, are Gaussian graphs. Using our result about the weight distribution we obtain a routing algorithm and characterize the most important topological properties of these graphs. In Chapter 3 we will deal with the special case of the dense Gaussian graph, developing unicast and broadcast algorithms, finding a suitable layout and building hierarchical networks. In Chapter 4 we construct different perfect codes based on Gaussian graphs. Finally, we summarize the main findings obtained in this work in Chapter 5 and outline possible future trends of investigation. 3

10 4 CHAPTER 1. INTRODUCTION

11 Chapter Gaussian Graphs All over this work we are going to deal with Gaussian integers and graphs defined on them. Thus, it is important to understand the basis of this algebraic ring in order to apprehend the results presented in this work. In Appendix I we give a list of some of the most useful properties of Gaussian integers, which we encourage to read. In this Chapter, we introduce Gaussian graphs and we study the weight distribution of their nodes. We will also find a different representation of Gaussian graphs, which will help us to better understand these graphs. Afterwards, we give the connection between Gaussian graphs and important networks that have been widely used in Computer Architecture. Finally, we analyze the topological properties of Gaussian graphs and give a general and optimal routing algorithm for them..1 Some Ideas about Z[i] We define the Gaussian integers as a subset of the complex numbers C. Definition 1 Z[i] = {a + bi C a, b Z, i = 1} is the set of the Gaussian integers. Thus, Z[i] is a commutative ring with identity. Given a Gaussian integer α = a + bi, the conjugate of α is ᾱ = a bi. Moreover, we can define the norm in an algebraic sense (see Definition 58) of a Gaussian integer. Definition Given a Gaussian integer α = a + bi Z[i], we can compute its norm as the product of α and ᾱ. N(α) = α ᾱ = (a + bi)(a bi) = a + b. This norm is multiplicative (see Proposition 50) and the only elements in Z[i] with norm equal to 1 are {±1, ±i}, which are the units of the ring (see Corollary 51). This norm allows us to ensure that Z[i] is an Integral Domain. As a consequence we 5

12 6 CHAPTER. GAUSSIAN GRAPHS have that there are no zero divisors in this ring (see Proposition 57). Furthermore, this norm gives to Z[i] the structure of Euclidean Domain (see Theorem 71). This is a very important result as it implies that we have an Euclidian Algorithm to find the greatest common divisor of two elements in Z[i] and the coefficients of the Bézout s identity (see Theorem 6). We will denote the greatest common divisor of two elements α, β Z[i] as (α, β). Moreover, as Z[i] is an Euclidian Domain, we obtain as a consequence that it is also a Principal Ideal Domain and a Unique Factorization Domain (see Theorem 70). These algebraic properties allow us to use the fact that an element is prime if and only if it is irreducible (see Proposition 67), which is more useful and forces that prime ideals are the same as maximal ideals. We also have a finite prime decomposition which is unique up to elements differing by a unit (see Definition 66). Also as a consequence, all the ideals in Z[i] are principal, which means that every ideal is generated by a unique element in Z[i] (see Definition 63). In order to define Gaussian graphs, we consider Z[i] modulo an ideal I generated by a Gaussian integer α = a+bi, denoted as Z[i] α. We can see that Z[i] α is a finite ring of cardinal N(α) = a +b (see Proposition 89). On purpose of better understanding this finite ring, we want to obtain a Theorem of decomposition of Z[i] α, analogous to the case of Z N. We can express Z N as a product of factors of the form Z e, where p i i N = p e p en n, with p i different primes and e i positive integers (see Theorem 79). Thus, we need to know which are the different primes in Z[i]. In Theorem 78 we determine that the primes in Z[i] are unit multiples of 1 + i, π or π, where N(π) = p is a prime in Z with p 1 (mod 4) and p, where p is a prime in Z with p 3 (mod 4) (see Theorem 78). Now, using the Chinese Remainder Theorem (see Theorem 81) we can get a decomposition of Z[i] modulo an ideal I generated by α as a product of factors of the form Z[i] e, where α = π i πe 1 i 1... πn en, with π i different Gaussian prime and e i positive integers (see Theorem 8). Finally, given α Z[i], we are also interested in knowing how is the ideal generated N(α) by an element β in Z[i] α. In Theorem 91 we obtain that this ideal has N((α,β)) elements.. Gaussian Graphs Now that we have a notion of the basis of the ring of the Gaussian integers, we are going to introduce Gaussian graphs. If 0 α = a + bi Z[i], we consider Z[i] α the ring of the classes of Z[i] modulo the ideal generated by α, denoted as (α).

13 .. GAUSSIAN GRAPHS 7 As we have said, this is clearly a finite set with exactly N(α) = a + b elements. For simplifying the notation we will denote by β both to the element of Z[i] and its class in Z[i] α. Next, given 0 α = a + bi Z[i] we define a graph over Z[i] α in the following way. Definition 3 Let α = a + bi Z[i]. We define the Gaussian graph generated by α, G α = (V, E), as follows: V = Z[i] α is the nodes set. E = {(η, β) V V β η ±1, ±i (mod α)} is the links set. As an example, a representation of the Gaussian graph generated by α = 3 + 4i can be seen in Figure.1. This graph has 5 nodes that can be labeled by means of the Gaussian integers modulo (3 + 4i). Figure.1: Gaussian graph G 3+4i In general, given α = a + bi we can suppose 0 a b as we have the following Proposition. Proposition 4 Given a and b two integers, we have the following graph isomorphisms: G (a+bi)i m = Ga+bi = Gb+ai = G(b+ai)i m

14 8 CHAPTER. GAUSSIAN GRAPHS Proof. As the ideal generated by a+bi and (a+bi)i m is the same, then the first and the third part of the proposition is straightforward. For the second part we must consider the following graph isomorphism: Φ : Z a+bi Z[i] b+ai x + yi y + xi This function is well defined as Φ((c + di)(a + bi)) = (c di)(b + ai). Moreover, it is clearly exhaustive and, as both graphs have the same cardinal, it is a bijection. Finally, the adjacencies are preserved as Φ(x ± 1 + yi) = y + (x ± 1)i and Φ(x + (y ± 1)i) = (y ± 1)i + xi. Now, we define the distance d α between two elements η and β in Z[i] α as the graph distance between nodes η and β in G α. Note that d α (η, β) = min{ x + y (β η) x + yi (mod α)} We call to the mapping d α : Z[i] α Z[i] α Z + the Gaussian distance or Gaussian metric over Z[i] α. Gaussian graphs are regular graphs of degree four and vertex-symmetric, which simplifies their study. Consequently, we can analyze them starting from any node (we will use node zero unless any other is stated). Hence, the weight of a node η is w α (η) = d α (η, 0) = min{ x + y η x + yi (mod α)} Thus, we can use these definitions in the case of the Figure.1. For example, we have that d 3+4i ( 3i, 1 + i) = 3, as 1 + i ( 3i) = 1 + 5i = ( + i) + (3 + 4i), and d 3+4i (i, 3) =, as 3 i = i (3 + 4i). We also have that w 3+4i (1 + i) = and w 3+4i ( 1 i) = 3. In [6] it is proved that for values of a and b relatively primes, i.e. (a, b) = 1, these graphs are isomorphic to a well-known subfamily of circulant graphs of degree four whose number of nodes can be written as the sum of two squares. A circulant graph with N vertices and jumps {j 1, j,..., j m } is an undirected graph in which each vertex n, 0 n N 1, is adjacent to all the vertices n ± j i mod N, with 1 i m. We denote this graph as C N (j 1, j,..., j m ). It is clear that a circulant graph C N (j 1, j,..., j m ) is connected if and only if (j 1, j,..., j m, N) = 1. An example of a degree four circulant graph with 5 nodes and jumps j 1 = 3 and j = 4 can be seen in Figure.. In fact, this graph is isomorphic to the graph in Figure.1. To understand better the isomorphism, we have to note that a jump in the direction of ±1 in the Gaussian graph corresponds to a jump of ±a in the circulant graph. Equivalently, the jump in the direction of ±i corresponds to a jump

15 .. GAUSSIAN GRAPHS 9 Figure.: Circulant graph C 5 (3, 4) of ±b in Z N. Next, we state the main result in [6] in Theorem 5. Theorem 5 Let α = a + bi Z[i] such that (a, b) = 1. We have that C N(α) (a, b) and G α are isomorphic graphs. The graph isomorphism is where j ax + by mod N(α). Φ : Z N(α) Z[i] α j x + yi mod α This theorem tells us that all the degree 4 circulants of the form C a +b(a, b) are, actually, Gaussian graphs. Moreover, this graph isomorphism is the tool needed to prove in Section.5 that the doubly twisted Torus introduced in [31] and the dense Midimew introduced in [4] are other two particular members of the family of Gaussian graphs. In general, when we consider a Gaussian graph generated by α = a + bi with (a, b) 1, we would like to know whether it is a circulant graph or not. The answer to this point is given in the next Theorem. Theorem 6 Let α = a+bi Z[i]. If the Gaussian graph generated by α is circulant, then necessarily (a, b) = 1. Proof. Let consider d = (a, b), d > 1. If we suppose that the Gaussian graph G a+bi is circulant, then there exists an isomorphism between this graph and C a +b (j 1, j )

16 10 CHAPTER. GAUSSIAN GRAPHS for some values of j 1, j Z N. This isomorphism φ must have φ(1) = ±j 1 and φ(i) = ±j for an appropiate election of signs, as it must preserve adjacencies. If d > 1 we have that a +b a +b i 0 (mod a+bi) as a +b = a bi (a+bi). Now, using d d d d the isomorphism we have that a +b j d 1 a +b j d 0 (mod a + b ), which implies that d j 1, j. By definition of the greatest common divisor, we get 1 < d (j 1, j, N). Thus, the Gaussian graph is not connected. This is a clear contradiction with the definition of these graphs. This Theorem implies that a Gaussian graph is circulant if and only if it is generated by a Gaussian integer of the form α = a + bi with (a, b) = 1. Another interesting property concerning Gaussian graphs is that if we follow the links in a fixed direction (for example, i or 1), we obtain cycles of the same length. This is a direct application of the next Proposition. Proposition 7 Let α = a + bi Z[i]. Given m Z, we have that k 0 (mod α) if and only if ki 0 (mod α) Proof. The proof is direct as k 0 (mod α) k = (c + di)(a + bi) ki = ( d + ci)(a + bi) ki 0 (mod α)..3 Weight Distribution of Gaussian Graphs In the previous Sections we have introduced an algebraic tool to deal with Gaussian graphs. Now, our goal is to obtain a geometric characterization of these graphs. By using this geometric approach we infer in this Section a general weight distribution for Gaussian graphs which topologically characterize them. Figure.3: Tesselation generated by β = + 3i Gaussian graphs can be viewed as bi-dimensional Meshes with wrap-around links in which nodes are labeled by means of their integer coordinates in the complex plane.

17 .3. WEIGHT DISTRIBUTION OF GAUSSIAN GRAPHS 11 Figure.4: Tesselation generated by β = + 5i Figure.5: Tesselation generated by β = + 7i It is known that certain families of graphs can be fully represented by plane tessellations [35], [17]. If each node in a Gaussian gr aph is represented by a unitary square with its four neighbors attached to its sides, the graph can be fully characterized by a tile of area N = a + b that tessellates the plane. We give some examples of such tiles in Figures.3,.4 and.5 for odd values of N and in Figures.6,.7 and.8 for even values of N. Given α = a + bi Z[i], we define the weight distribution Ω α (s) as the number of different nodes at distance s from the origin, i.e. the nodes with Gaussian weight s. It is clear that given k the diameter of a Gaussian graph G α, the only possible values of s such as Ω α (s) 0 are for s {0, 1,..., k}. The proof of the main result in this Section is separated in two cases. For any α = a + bi Z[i], we will firstly

18 1 CHAPTER. GAUSSIAN GRAPHS Figure.6: Tesselation generated by β = + 6i Figure.7: Tesselation generated by β = 3 + 5i study odd values of N = a + b and secondly, even values..3.1 The Odd Case Let α = a + bi Z[i] be such that N = a + b is odd. Let k be the diameter of the graph G α. We denote the set of all couples (x, y) with x + y minimum by S graph. Next we are going to detail the weight distribution of G α, that is, we are going to give algebraic expressions for Ω α (s) with s {0, 1,..., k}. According to Theorem 4, we can take a and b two positive integers such that 0 a < b 1, as if a = b then N is even. A preliminary result was obtained in [18], but here we introduce its generalization. Note that b+a 1 0 is an integer number as a + b 1 (mod ) a + b 1 (mod ). We denote by Q = Q b+a 1, the square with vertices ( b+a 1, 0), (0, b+a 1 ), ( b+a 1, 0), (0, b+a 1 ). Just note that Q t = {x + iy Z[i] x + y t}.

19 .3. WEIGHT DISTRIBUTION OF GAUSSIAN GRAPHS 13 Figure.8: Tesselation generated by β = 5 + 5i We can see this square in Figures.3,.4 and.5 colored in red. In fact, this square is placed with an angle of 45 degrees with the axes of the plane. We will say that given η, β Z[i] the distance between them in the complex plane is D(η, β) = Re(η β) + Im(η β). Our aim is to proof the following Theorem. Theorem 8 Let 0 a b 1 be natural numbers such that N = a + b being an odd integer. The weight distribution of the graph G a+bi is as follows: Ω α (0) = 1. Ω α (s) = 4s if 1 s t. Ω α (s) = 4(b s), if t < s b 1. where t = b+a 1. Hence, the diameter of the graph is b 1. Proof. The proof will be given in a few lemmas below. Lemma 9 We have that Q S graph. Proof. We show that regions Q + (ua vb, ub + va) = {(x + ua vb, y + ub + va) : x + y = s, s {0, 1,..., b+a 1 }; u + v 1} do not intersect with Q. Note that we have D(0, (u + vi)(a + bi)) a + b as D(0, (u + vi)(a + bi)) N((u + vi)(a + bi)) N(u + vi)(a + b ) b for u + v 4. For u + v < 4 the inequality clearly holds.

20 14 CHAPTER. GAUSSIAN GRAPHS Now, if we have an element γ Z[i] that is in the intersection of two squares, we would have: D(0, γ) a + b 1 and D(ua vb + (ub + va)i, γ) a + b 1 Using the triangular inequality we would get a contradiction: D(0, ua vb + (ub + va)i) D(0, γ) + D(γ, ua vb + (ub + va)i) a + b 1 Therefore, the square Q + (ua vb, ub + va) and the square Q do not intersect. Hence Q S graph. Corollary 10 We have that Ω α (0) = 1 and Ω α (s) = 4s where 1 s b+a 1. Now, we consider the case s b+a Figure.9: Tesselation generated by the Gaussian graph G +7i Lemma 11 We have that Ω α (s) = 4(b s), where b+a s b 1. Proof. If we represent different copies of our graph centered in η 0 (mod a + bi), by lemma.3.1 we have that centered in the points of the form (u + vi)(a + bi), we can put a copy of the square Q, as it can be seen in Figure.9. Now, we have a region in the plane closed by four copies of Q and determined by the following lines:

21 .3. WEIGHT DISTRIBUTION OF GAUSSIAN GRAPHS 15 r 1 : y = x + b 3a + 1 r : y = x + a + b 1 r 3 : y = x a + b + 1 r 4 : y = x + 3b a + 1 Firstly, we must check that these lines do really define a closed region. To see this, we only have to check that these lines are all different. In the case of r 1 and r 3, if we force the independent terms to be equal, then we obtain: a + b 1 = 3b a + 1 a = b + 1 Which is not possible as a < b. In the case of r and r 4, following the same steps we also obtain a contradiction. Thus, this is a closed region in the space. The lines s 1 : x = a+b and s : y = b a partition the region in 4 equal triangles as it is seen in Figure.10. The underlying discrete triangles are equal isosceles right triangles, each one having the same number of nodes in their interior as a+b and a b are odd. Figure.10: Lines r i and s j in the Gaussian graph generated by β = + 7i Moreover, each one of these discrete triangles is closer to different centers of the form (u + vi)(a + bi). In each one of the four quadrants we can find one different discrete triangle closer to the origin. Thus, we have 4 triangles of the same size that belong to S graph. In fact, the other 3 triangles are congruent to the 3 remaining triangles in the closed region.

22 16 CHAPTER. GAUSSIAN GRAPHS We have that all the nodes obtained are different by construction, and, counting the number of nodes, we see that this is a complete system of representants of minimal weight. As the cathetus length is b a+1, the number of points, T, in each triangle is T = Counting all the nodes S we get: b a 1 i=1 i = (b a) 1 8 S = Q +4 T = 1+4 b a 1 i=0 i+4 (b a) 1 8 = 1+ (b + a) 1 + (b a) 1 = a +b Now the result is clear as in each triangle we have exactly b s nodes at distance s from node 0, for s { b+a 1 + 1,..., b 1}. Corollary 1 Theorem 8 is true..3. The Even Case Next, we give a similar Theorem about the weight distribution of Gaussian graphs with even number of nodes. First of all, note that N = a + b 0 (mod ) a + b 0 (mod ). Hence a+b is always an integer. Once more, we can choose a and b two integers such that 0 a b 1. Theorem 13 Let 0 a b 1 be natural numbers with N = a + b being an even integer. The weight distribution of the graph G a+bi when a < b is as follows: Ω α (0) = 1. Ω α (s) = 4s, if 0 < s < t. Ω α (t) = (b 1). Ω α (s) = 4(b s), if t < s < b. Ω α (b) = 1. where t = a+b. When 0 < a = b, the weight distribution of the graph G b+bi is as follows: Ω α (0) = 1. Ω α (s) = 4s, if 0 < s < b.

23 .3. WEIGHT DISTRIBUTION OF GAUSSIAN GRAPHS 17 Ω α (b) = b 1. Hence, the diameter of the graph is b. Intuitively, just note that for the second case, a = b, we have that t = b and, as a consequence, we have to join the third and fifth expressions for obtaining Ω α (b) = (b 1) + 1 = b 1. Proof. The proof will be given in a few Lemmas below. Lemma 14 Let t = a+b and Q t 1 = {(x, y) x + y t 1}. We have: Q S graph. Proof. Similarly to the odd case, we show that regions Q + (ua vb, ub + va) = {(x + ua vb, y + ub + va) : x + y = s, s {0, 1,..., b+a 1}; u + v 1} do not intersect with Q. Note that we have D(0, (u + vi)(a + bi)) a + b as D(0, (u + vi)(a + bi)) N((u + vi)(a + bi)) N(u + vi)(a + b ) b for u + v 4. For u + v < 4, the inequality clearly holds. Now, if we have an element γ Z[i] that is in the intersection of two squares, we would have: D(0, γ) a + b 1 and D(ua vb + (ub + va)i, γ) a + b 1 Using the triangular inequality we would get a contradiction: D(0, ua vb + (ub + va)i) D(0, γ) + D(γ, ua vb + (ub + va)i) a + b Therefore, the square Q + (ua vb, ub + va) and the square Q do not intersect. Hence Q S graph. Lemma 15 Let t = a+b, N = a + b. If a < b, then we have Ω α (t) = (b 1), Ω α (s) = 4(b s) for t < s < b, and Ω α (b) = 1. In case that a = b, then we have that Ω α (b) = b 1. Proof. We first suppose that a < b. If we follow the same steps than in case of N odd, we can represent different copies of our graph centered in η 0 (mod a + bi). By lemma 14, we have that centered in points of the form (u + vi)(a + bi), we can put a copy of the square Q, as it can be seen in Figure.11. In this case, we have that the different copies of Q are not in contact. In fact, they are separated by the border of each square Q t = {x + iy x + y = t}. There are

24 18 CHAPTER. GAUSSIAN GRAPHS Figure.11: Tesselation generated by the Gaussian graph G 3+11i exactly 4(a+1) nodes that belong to two of these borders. At this point, we have to choose to what copy of S graph belongs each point. In fact, when we choose a point belonging to a copy of S graph, we are forcing another point to belong to another copy of S graph. Consequently, 14(a + 1) = (a + 1) of these nodes will be in S graph. Finally, there are 4( b a 1) different nodes that belong to only one copy of S graph. Joining the results, we get (a + 1) + 4( b a 1) = (b 1) nodes of weight t. Now, we have a region in the space closed by four copies of Q and determined by the following lines: r 1 : y = x + b 3a r : y = x + a + b r 3 : y = x a + b r 4 : y = x + 3b a Firstly, we must check that these lines do really define a closed region. To see this, we only have to check that these lines are all different. In the case of r 1 and r 3, if we force the independent terms to be equal, we obtain: a + b = 3b a a = b

25 .3. WEIGHT DISTRIBUTION OF GAUSSIAN GRAPHS 19 Which is not possible when a < b. In the case of r and r 4, following the same steps we also reach a contradiction. Thus, for a < b, this is a closed region in the space. In fact, this region is a ball of center γ = a+b + b a b a i and radius 1. The points γ, iγ and iγ are the centers of the symmetric and opposite balls and are congruent to γ modulo α. So, we select γ and add it to S graph. In Figure.11 the pink square represents this node. Apart from this node, the lines s 1 : x = a+b and s : y = b a partition the region in 4 equal triangles as it is seen in Figure.1. These discrete triangles are equal isosceles right triangles, having the same number of nodes. Figure.1: Lines r i and s j in the Gaussian graph generated by β = i Moreover, each one of these discrete triangles is closer to different centers of the form (u+vi)(a+bi). As in the odd case, in each quadrants we can find one different discrete triangle closer to the origin. Thus, we have 4 triangles of the same size that belong to S graph. In fact, the other 3 triangles are congruent to the 3 remaining triangles in the closed region. We have that all the nodes obtained are different by construction, and counting the number of nodes we obtain the result. As the cathetus length is b a 1, the number of points, T, in each triangle is T = b a 1 i=1 Counting all the nodes S we get: i = (b a)(b a 1) 8 S = Q + (b 1) + 4 T + 1 = b+a 1 i=0 (b a)(b a ) i + (b 1)

26 0 CHAPTER. GAUSSIAN GRAPHS = 1 + (b + a)(b + a ) + (b 1) + (b a)(b a ) + 1 = a + b Now the result is clear as in each triangle we have exactly b s nodes at distance s from the origin, for s { b+a + 1,..., b 1}. Figure.13: Gaussian graph generated by β = 5 + 5i For the case a = b = t, the closed region defined by the four lines disappears. In fact we have that Q b covers the whole space with 4(b 1) nodes that are equidistant to two copies of S graph and the points b, b, ib and ib, that are equivalent modulo α. This node is shown in Figure.13 in the intersection of the two lines. We choose b as a representant of the four nodes. Concerning the other nodes, once more when we decide that a node belongs to a copy of S graph, we are forcing another node to belong to another copy of S graph. We have that all the nodes obtained are different by construction, and counting the number of nodes S we obtain the result. b 1 b(b 1) S = i + (b 1) = b 1 = b i=1 Thus, we obtain that Ω α (b) = (b 1) + 1 = b 1. Corollary 16 Theorem 13 is true.

27 .4. REPRESENTING GAUSSIAN GRAPHS AS TWO ATTACHED SQUARES1.4 Representing Gaussian Graphs as Two Attached Squares Although in the previous Section we have obtained a general representation of the nodes in a Gaussian graph, the weight distribution does not help enough to clearly understand these graphs. In this way, our purpose in this Section is to find a more visual representation of the nodes and links in a Gaussian graph. This representation consists on two different squares of sides a and b placed together one next to the other. To see that we can use this visualization of Gaussian graphs, we have to prove the following Lemma. Lemma 17 Given a Gaussian integer α = a + bi, the graph G α accepts as a system of representants the set of nodes R, defined as the union of two squares Q a and Q b where Q a = {x + yi x {0,..., a 1}, y {0,..., a 1}} and Q b = {x + yi x {a,..., a + b 1}, y {0,..., b 1}}. Proof. Given α = a + bi Z[i], we can suppose that 0 a b 1. Next, we have that a system of representants of G α has N(α) = a + b elements. As we have that Q a = a and Q b = b, we only have to see that all the nodes in R = Q a Q b are different. Given η = x + yi, η = x + y i R such that x + yi x + y i (mod a + bi) we have to see that x = x and y = y. Now, x + yi x + y i (mod a + bi) x + yi = x + y i + (c + di)(a + bi), c, d Z { x x = ac bd y y = bc + ad Depending on the values of c and d, we have to analyze different cases. First, if we suppose that cd > 0, as a and b are positive integers, we have that bc + ad = a d +b c a+b. Now, as y, y {0,..., b 1}, we have that y y b 1 < a+b. Thus, we get a contradiction. Next, if we suppose cd < 0, we have that ac bd = a c + b d a + b. Now, as x, x {0,..., a + b 1}, we have that x x a + b 1 < a + b. Thus, we get once more a contradiction. The last possibility is to consider cd = 0. If we suppose c = 0, we have that x x = bd and y y = ad. As x x < a + b, the first condition implies that d <. We just have to consider two more cases. If d = 1, then x x = b and y y = a. The first condition forces that η Q a and η Q b. But the second condition forces η Q b. As Q a Q b =, we get once more a contradiction. The case d = 1 can be analyzed in the same way. Finally, if we suppose d = 0, we have that bc + ad = b c. Once more, as y y < b, this condition forces c = 0. Thus, the only possibility is x = x and y = y.

28 CHAPTER. GAUSSIAN GRAPHS An example of representation of G +5i can be seen in Figure.14. We can observe the two different configurations of the nodes. The first one has a square of side equal to and a second square of side equal to 5 with some wrap-around links. The second one comes from the weight distribution. (a) Using two squares (b) Using the weight distribution Figure.14: Different representation of G +5i Next, we can remark that the origin is in the left bottom corner of Q a. An other important aspect is to have an idea of how are positioned the wrap-around links in this new distribution. Firstly, for the horizontal links, we have that the nodes of the form η = mi, with m {0,..., a 1}, are congruent to η = mi + (1 i)(a + bi) = (a + b) + (b a + m)i. Thus, these nodes are horizontaly connected with the nodes

29 .4. REPRESENTING GAUSSIAN GRAPHS AS TWO ATTACHED SQUARES3 of the form γ = (a + b 1) + (b a + m)i, which lay on the right side of Q b. Thus, we have a skew of b a rows. The remaining nodes in this right side of Q b are of the form η = a + b 1 + mi, with m {0,..., b a 1}. They are congruent to η = a + b 1 + mi + i(a + bi) = a 1 + (a + m)i. Thus, they are connected to the points of the left side of Q b with imaginary part greater or equal to a, having a skew of a rows. In fact, the nodes of the form η = a + b 1 + mi, with m {0,..., b 1}, are always connected with the nodes in the left sides of the squares in the row r m + a (mod b). Secondly, we analyze the vertical wrap-around links. We have that the nodes of the form η = m, with m {0,..., b 1}, are congruent to η = (m + a) + bi. Thus, they are connected to the nodes of the form γ = (m + a) + (b 1)i. Here we have a skew of a columns. Finally, for the nodes of the form η = b + m, with m {0,..., a 1}, we have that they are congruent to η = b + m + i(a + bi) = m + ai. So, we have a skew of b columns in the other way round. In fact, the nodes of the form η = m, with m {0,..., a + b 1}, are always connected with the nodes in the top of the squares in the column c m + a (mod a + b). Reached this point, we have that fixed a value of b for a Gaussian graph, for every value of a b we have different Gaussian graphs. Depending on the sum of a + b the diameter will be b or b 1. Qualitatively spoken, the value of the diameter is independent to the value of a. Consequently, changing the value of a from 0 to b we are going to obtain different networks with the same diameter and increasing number of nodes. In the next Section, we are going to analyze some of these particular cases, but we can have an idea of the utility of this method in Figures.15, where we fix b = 4 and obtain the different Gaussian graphs for a {0,..., b}.

30 4 CHAPTER. GAUSSIAN GRAPHS (a) Gaussian graph G 4i (b) Gaussian graph G 1+4i (c) Gaussian graph G +4i (d) Gaussian graph G 3+4i (e) Gaussian graph G 4+4i Figure.15: Constructing different Gaussian graphs

31 .5. NOTABLE GAUSSIAN NETWORKS 5.5 Notable Gaussian Networks In this Section, we will consider different well-known degree four topologies that have been previously used as the basis to design popular computer interconnection networks. We will show that these relevant networks are, in fact, Gaussian networks. We denote as Gaussian networks all the interconnection networks having a Gaussian graph as underlying topology. Consequently, the algebraic tool presented in Section.3 can be applied to all these popular Gaussian networks in order to adequately explore their distance-related properties. We consider this theoretical result as a remarkable one in the field of Computer Networks. Using our algebraic approach we can extend the analysis and the application scope of both well-known and new interconnection networks. In next Sections, we analyze the topological properties of Gaussian networks and give a general and optimal routing algorithm for them..5.1 The Square Torus as a Gaussian Network Torus topologies have been broadly used as computer interconnection networks. Only adding wrap-around links to a mesh-like topology, as it is shown in Figure.16, we can obtain a network with higher performance and symmetry. The Torus topology has been used in many parallel computers. There are many well-known machines that have used this topology such as the Compaq 1364, the Cray X1E vector machine, the Cray T3D and the IBM BlueGene [1], [30], [1]. In fact, these last two examples are 3 dimensional Tori that have dimensional Tori as subnetworks. Figure.16: Square Torus of size 4 4

32 6 CHAPTER. GAUSSIAN GRAPHS When we have to choose the dimensions of a Torus, the most common option is to build an n n square Torus because its topological properties are optimized. Next, we are going to prove in Theorem 18 that the square Torus of size b, T b, is isomorphic to the graph G bi. The idea of understanding G bi as a Torus comes out directly from the visualization of the Gaussian graphs introduced in the previous Section. Theorem 18 Let 0 b Z. We have following isomorphism of graphs: T b = Gbi Proof. We define the following mapping between the nodes set of both graphs, where α = bi: µ : Z[i] α Z b Z b x + iy (x mod b, y mod b) First of all we should prove that this function is correctly defined. If we chose two different representants of a class modulo α we should get the same image. x 1 + iy 1 x + iy (mod α) x 1 + iy 1 = x + iy + γ bi, where γ Z[i]. If γ = c + di and taking imaginary and real parts we obtain the following equations. { x1 = x bd y 1 = y + bc Now we can see clearly that x 1 x (mod b) and y 1 y (mod b), which means that the function is well-defined. To see that the function is bijective we only have to check that it is exhaustive as the cardinal of the two spaces is the same. The definition of the mapping µ gives directly this fact. Finally, we have to demonstrate that it preserves adjacency. (x 1 + iy 1, x + iy ) E x 1 x + (y 1 y )i {±1, ±i} (mod bi) We can write this expression as x 1 x + (y 1 y )i = i m + (k 1 + k i) bi, with m Z. If we have m 0 (mod ) we can take imaginary and real parts and get the equations { x1 x = ±1 k b ±1 (mod b) y 1 y = k 1 b 0 (mod b)

33 .5. NOTABLE GAUSSIAN NETWORKS 7 which means that ((x 1, y 1 ), (x, y )) E. If m 1 (mod ) we can follow the same procedure and get the equations { x1 x = k b 0 (mod b) y 1 y = ±1 + k 1 b ±1 (mod b) which implies that ((x 1, y 1 ), (x, y )) E..5. The Doubly Twisted Torus as a Gaussian Network We are going to consider now another degree four topology, called doubly twisted Torus, which was introduced by Sequin in [31]. This topology is specially suitable for mapping binary trees onto the resulting processor array. Moreover, it allows a relatively uniform task distribution over all available nodes for most divide-andconquer-type problems. A mapping of the doubly twisted Torus into the plane of a silicon wafer was also proposed in that paper. An example of a doubly twisted Torus of 17 nodes can be seen in Figure.17. Figure.17: Doubly twisted Torus of 17 nodes Although in the original paper from Sequin the doubly twisted Torus was not treated as a circulant graph, a simple observation allows us to redefine this topology in the following way: Definition 19 A doubly twisted Torus of jump n is a circulant graph of 1+n nodes with jumps ±1, ±n. With this definition, we can easily prove that a doubly twisted Torus is a Gaussian network.

34 8 CHAPTER. GAUSSIAN GRAPHS Theorem 0 A doubly twisted Torus of jump n is isomorphic to the Gaussian network G 1+ni. Proof. By Definition 19 and as we have (1, n) = 1, we can use Theorem 5 and get directly the result..5.3 The Dense Midimew as a Gaussian Network Midimew networks are other interconnection structures that have been previously introduced for the design of interconnection networks. For a given number of nodes, the Midimew is the circulant graph of degree 4 with both minimal average distance and diameter among all degree 4 circulant graphs. This topology exhibits high homogeneity and connectivity. These networks were first introduced in [4] and extended in [3]. They can be defined in the following way: Definition 1 Midimews are circulant graphs of N nodes and jumps b and b 1, C N (b 1, b), where b =. N In particular, one of the most interesting case of Midimew networks is when N = t + t + 1. As t < N < t + 4t + = (t + 1) for t > 0, we have that b = = t + 1. It has been proved in [4] that a circulant graph of degree 4 N and given diameter t > 0, cannot have more than N = t + t + 1 nodes. This is the reason why this case is known as the dense Midimew of diameter t > 0. In fact, this topology reaches the Wong-Coppersmith bound introduced in [35] for the diameter of undirected circulant graphs of degree 4. Dense Midimews have a number of nodes which is the sum of the squares of two consecutive integers, as it is seen in equation.1. One example of these networks can be seen in Figure.18 using the two different representations that we have developed. N = t + t + 1 = t + (t + 1) (.1) Next, we define the dense Midimew as a Gaussian network. Theorem The dense Midimew of diameter t > 0 is isomorphical to the graph G t+(t+1)i Proof. Using that (t, t + 1) = 1, we can apply Theorem 5 and get that G t+(t+1)i is isomorphic to the circulant graph C N(t+(t+1)i) (t, t + 1). Now as N(t + (t + 1)i) = t +t+1 and by using the definition of dense Midimew we finally prove the result. This Theorem gives us the right to call G t+(t+1)i as the dense Gaussian network of diameter t > 0.

35 .5. NOTABLE GAUSSIAN NETWORKS 9 (a) Using two squares (b) Using the weight distribution Figure.18: Different representation of G +3i.5.4 The Rectangular Twisted Torus Some computer architectures have used a rectangular shape for their interconnection network topology. Although rectangular Meshes and Tori have the important drawback of having worst performance than a square topology, engineers have used this topology because it is very easy to build it up from square Meshes or Tori. Using a square topology, only Tori and Meshes with n nodes can be built. Joining two Tori of the same dimension, we can obtain networks with n+1 nodes with only n+1 rearrangements of their wrap-around links. An important architecture using this rectangular topology is the IBM BlueGene, that employs a 3-D Torus interconnection network with nodes, as explained in [1]. In this Subsection we introduce another Gaussian topology that should be very useful to improve the performance of the rectangular Tori of size b b. If we consider the network G b+bi for a given integer b > 0, we obtain a degree 4 network with b nodes. This special case of Gaussian network was used in [36] as part of the design of the Recursive Diagonal Torus. The authors used this topology to add new bypass links in the diagonal direction of a square Torus. This construction was proposed for massively parallel computers with the benefits of a smaller diameter and a near-optimal routing algorithm. Next, we define this Gaussian network. Definition 3 The rectangular twisted Torus of size b is the Gaussian graph generated by α = b + bi. Although we have the general weight distribution for representing Gaussian net-

36 30 CHAPTER. GAUSSIAN GRAPHS works, in this case we use the distribution of nodes that we introduced in Section 17, which helps us to better understand this topology. In Figure.19 we can see an example of this Gaussian graph. This network has a rectangular shape as we have two equal squares one next to the other. As there are torus-like wrap-around links in one direction (because a = b) and twisted links in the other, we call this network rectangular twisted Torus. Figure.19: Rectangular twisted Torus G 4+4i.5.5 The Twisted Torus as a Circulant Graph The work by Sequin in [31] around the doubly twisted Torus was an extension of previous results by Martin, who introduced and analyzed the twisted Torus in [4]. This network is based on a Torus topology adding a twist to the wrap-around links in just one dimension. An example of twisted Torus with 16 nodes can be seen in Figure.0. The Illiac IV is an example of a parallel computer that used this topology. As in the case of the doubly twisted Torus, this topology was not introduced as a circulant graph. However, it can be easily proved that this network is, actually, a circulant graph. Definition 4 The twisted Torus of size n m and jumps ±1, ±n is the circulant graph C n m (1, n). Reached this point, we would like to find a Gaussian integer a + bi, such as the twisted Torus and the Gaussian network G a+bi would be isomorphic. Nevertheless, we obtain a negative result.

37 .5. NOTABLE GAUSSIAN NETWORKS 31 Figure.0: Twisted Torus of 16 nodes Remark 5 Given 1 < n, m Z, we have that for any a, b Z there exists no isomorphism between C n m (1, n) and G a+bi. Proof. We just have to observe that in the case of C n m (1, n) the first jump creates a hamiltonian cycle in the graph, i.e. a cycle of length n m, and the second jump n creates a cycle of m nodes. In the case of G a+bi, we have by Proposition 7 that when we follow each one of the two fixed directions, the two resulting cycles have to have the same length. Thus, there is not an isomorphism between such graphs.

38 3 CHAPTER. GAUSSIAN GRAPHS.6 Distance-related Parameters of Gaussian Graphs In this Section, we analyze some of the most important topological properties of Gaussian graphs. According to the weight distribution of Z[i] α obtained in Section.3, we can easily obtain the distance-related properties that characterize these topologies, such as the diameter and the average distance. Corollary 6 Let α = a + bi be such that 0 a b 1. Let N = a + b be the norm of α. The diameter k of the Gaussian graph G α is: k = { b if N is even b 1 if N is odd Using another time the weight distribution of Gaussian graphs, we can obtain the average distance for any Gaussian graph by means of the following Theorem. Theorem 7 Let α = a + bi Z[i] with 0 a b. Let N = a + b be the norm of α. We can compute the average distance d in the Gaussian graph G α as: d = { 3bN+a 3 a 6(N 1) if N is even 3bN+a 3 3b a 6(N 1) if N is odd Proof. As Gaussian graphs have the property of node-symmetry, we can compute the average distance in these graphs as the average distance from the origin to the other nodes in the graph. For the case that N = a + b 1 (mod ) we can use the weight distribution for odd cases and after some algebraic manipulations, obtain the result. d = ( b+a 1 1 4s + a + b 1 s=1 = a3 + 3a b a + 3b 3 3b 6(a + b 1) = 3bN + a3 3b a 6(N 1) b 1 s= b+a+1 ) 4(b s)s where we have used the mathematical equality n 1 d=1 d = n3 3n +n 6. For the case that N = a + b 0 (mod ) we can use the weight distribution for even cases and after some algebraic manipulations, obtain the result. d = ( (b+a )/ 1 (4s ) + (b 1) a + b a + b 1 s=1 + b 1 (b+a+)/ ) (4(b s)s) + b

39 .6. DISTANCE-RELATED PARAMETERS OF GAUSSIAN GRAPHS 33 = a + 3b3 + a 3 + 3a b 6(a + b 1) = 3bN + a3 a 6(N 1) We can use Corollary 6 to compute easily the diameter of all the notable Gaussian networks that we have introduced in the previous Section. Furthermore, using Theorem 7 and the property of node-symmetry, we can compute the average distance of all these graphs. In the case of the square Torus T b, as we have a = 0 we obtain: d = = k = { 3bN+a 3 a 6(N 1) if N is even 3bN+a 3 3b a 6(N 1) if N is odd { bn if b is even (N 1) b if b is odd { b if b is even b 1 if b is odd In the case of the doubly twised Torus G 1+bi, as a = 1, we obtain: d = = k = { 3bN+a 3 a if 1 + b is even 6(N 1) 3bN+a 3 3b a if 1 + b is odd 6(N 1) { N if b is odd b b if b is even { b if b is odd b 1 if b is even If we pay attention at the dense Gaussian network G t+(t+1)i, as b = t + 1, a = t and N = t + t + 1 is odd, we obtain after algebraic manipulations: d = 3(a + 1)(a + a + 1) + a 3 3(a + 1) a 6(a + a) k = b 1 = t = t Finally, for the rectangular twisted Torus G b+bi, as b = a we have that N = b is even. Then, the average distance and diameter can be computed as: d = 3bN + a3 a 6(N 1) = N 1 3(N 1) b k = b = 6b3 + b 3 b 6(b 1)

40 34 CHAPTER. GAUSSIAN GRAPHS It is interesting to compare this last topology with the well-known rectangular Torus of size b b. First of all, we need to introduce some previous results concerning ring topologies. Remark 8 The diameter and average distance in a ring of N nodes are: d = k = { N+1 4 if N is odd N 4(N 1) if N is even { N 1 if N is odd N if N is even We can more or less understand the rectangular Torus as being composed by two independent rings of lengths b and b. Thus, the average distance of the rectangular Torus would be approximately: d = { b + b+1 b 1 b + b b 1 if b is odd ( 4 3b ) if b is even O 4(b 1) 4 If we want a more accurate calculation, it can be obtained from the following Proposition. Proposition 9 The rectangular Torus of size b b has the following expressions for its diameter and average distance: { 6b 3 3b +1 if b is odd 4b(b 1) d = 6b 3b+ if b is even 4(b 1) k = { 3b 1 if b is odd 3b if b is even Proof. Concerning the diameter of the network, as the horizontal ring has size b, its diameter is b. The vertical ring has size b and, using remark 8 and adding the two results, we obtain the formula in the proposition. Paying attention at all the possible movements, if we actually move in the vertical direction then we can move or not in the horizontal direction. In the case that we do not move in the vertical direction, then we are forced to move in the horizontal one. Putting this reasoning into equations, we can compute the average distance of a rectangular Torus as follows using the formulas introduced in remark 8: d = = { 1 b 1 b+1 {(b 1)( + b ) + b 4 {(b 1)( b + b ) + b 4(b 1) { 6b 3 3b +1 if b is odd 4b(b 1) 6b 3b+ if b is even O 4(b 1) b 1 if b is odd b b 1 if b is even ( 3b ) 4

41 .7. UNICAST ROUTING IN GAUSSIAN NETWORKS 35 Let us remark that just adding a skew to 4b links in the Rectangular Torus, we can obtain a significant reduction of the diameter and average distance in respect to the rectangular Torus. More in detail, we get a diameter s reduction of 33.3% and, in the case of the average distance, a reduction of 11.1%. As we will see, the routing algorithm for the Gaussian network G b+bi is extremely simple, so it could be a good idea to take into consideration the possibility of using rectangular twisted Tori instead of Rectangular Tori in the design of interconnection networks with a rectangular shape. Just to finish the Section we are going to devote a few words to the connectivity of Gaussian networks. Connectivity is strongly related with robustness and network reliability. Although it is not considered in detail in this work, Gaussian networks have both vertex-connectivity and edge-connectivity of 4. This means that Gaussian networks are maximally connected graphs in the sense introduced in [34]. Furthermore, these networks are both edge and node critical as, if an edge or node fails, then the edge or node connectivity decreases. The girth of these networks, which is the minimum length of any cycle in the graph, is also clearly 4..7 Unicast Routing in Gaussian Networks In this Section we present a general routing algorithm for all kind of Gaussian interconnection networks. One of the major challenges in a network is to find the minimum path between two nodes. Throughout the years, many efforts have been done in order to obtain optimal algorithms for finding minimum paths in circulant graphs, as for example the ones introduced in [8] or [0]. Such algorithms consider graphs whose vertices are labeled by integers and implement the Euclidean division algorithm which has a high computational cost. In other families of networks such as Tori or Midimews, the routing algorithm has been also studied in order to obtain a particular solution. We propose an alternative routing algorithm that takes advantage of the new labeling of the nodes in terms of Gaussian integers that facilitates the computation of the shortest path between any two nodes. The proposed algorithm constitutes a general solution for any Gaussian network and it is an all-at-once routing, as it computes the shortest path at the source node. We consider the routing problem in terms of Gaussian integers, that is, in the isomorphic Gaussian graph Z[i] α. If we want to find the path from a source node η to a destination node η we will have to compute r = x + iy η η (mod α) with x + y minimum. A method related with this idea was first introduced by Huber in [1] in order to find the values of x and y with only a division, but in [6] it was

42 36 CHAPTER. GAUSSIAN GRAPHS proved that this method was erroneous. Here, we propose a new algorithm coming from the next Lemma. This routing, that takes advantage of the new labeling of the nodes, is only based on integer sums and comparisons. Lemma 30 Let α = a + bi Z[i] and k the diameter of G α. Let η = x + yi and η = x + y i be such that x + y k and x + y k. If r η η (mod α) is such that Re(r) + Im(r) minimum, then r = (η η) + γα with γ {0, ±1, ±i, ±(1 + i), ±(1 i), ±, ±i}. Proof. We use the weight distribution introduced in Theorems 8 and 13. If N = a +b is odd, the node of S graph with maximum norm is the node σ = a+b 1 + b a 1 i. ( ) ( ) a+b 1 b a 1 We have that N(σ) = + = a +(b 1). Now, given η = x + yi and η = x + y i, as r = (η η) + γα with Re(r) + Im(r) minimum, we obtain that γα = r (η η). Applying the norm at both sides of the equality, we obtain: N(γα) = N(r (η η)) N(3σ) = 9 a + (b 1) Using that the norm is multiplicative and that N(α) = a + b, we get: N(γ) 9 a + (b 1) < 9 a + b The only possible values of γ that fulfill this inequality are {0, ±1, ±i, ±(1+i), ±(1 i), ±, ±i}. If N is even, the node of S graph with maximum norm is the node σ = a+b + b a ( ) i. ( ) a+b We have that N(σ) = + b a = a +b. So, following analogous steps as in the previous case we obtain the same restrictions for the norm of γ. This Lemma implies that if we want to travel from η to η, the obtention of r = x + yi (η η) (mod α) with x + y minimum needs the computation of the graph weight of, at most, 13 Gaussian integers. We denote the obtained result as (x, y) := routing record(η, η, a + bi). Note that x + yi gives us all the minimum paths from η to η in the Gaussian network G α. Example 1 Let α = 4 + 4i and consider the graph G α with N = = 3 nodes. This network is a rectangular twisted Torus of size 4 and we can see its representation in Figure.1. Most of wrap-around links are omitted for simplicity. Now, consider η = and η = + i. Next, we have to compute the nine possible

43 .7. UNICAST ROUTING IN GAUSSIAN NETWORKS 37 candidates for the minimum path. As η η = 4+i, we obtain the set of candidates S. S = η η+{0, 4+4i, 4 4i, 4+4i, 4 4i, 8i, 8, 8i, 8, 8+8i, 8 8i, 8+8i, 8 8i} S = {4+i, 8+6i, i, 6i, 8 i, 4+10i, 4+i, 4 6i, 4+i, 1+10i, 4 6i, 4+10i, 1 6i} It is clear that i = routing record(η, η, 3 + 4i), which gives us the path for reaching the node η from node η with a path of length of. In Figure.1 we can see in red the path from η (red node) to η (blue node). Figure.1: Routing in Gaussian graph generated by α = 4 + 4i

44 38 CHAPTER. GAUSSIAN GRAPHS

45 Chapter 3 Dense Gaussian Networks Among all the Gaussian graphs, those members having the maximum number of nodes for a given diameter are particularly interesting for designing interconnection networks. This fact motivates a deeper and accurate analysis of such networks, denoted as dense Gaussian networks in the previous Chapter. Although we focus our attention in the case of dense Gaussian networks, most of our results can be easily generalized for any Gaussian network. Depending on the number of nodes, networks for parallel computers are usually organized in two or three orthogonal dimensions. In a D Mesh, the longest path is the one connecting any of the two pairs of nodes located in opposite corners. Thus, the diameter of an N-node D Mesh is ( N 1). Adding N wrap-around links to an N-node Mesh leads to a Torus whose diameter is N or N 1 depending on whether N is even or odd. By adequately adding wrap-around links to certain Mesh-like topologies, we obtain dense Gaussian networks. Their diameter,, is just a half part of the diameter of its underlying Mesh. Hence, messages traveling between the farthests nodes in such a network will use paths whose distances are bounded by half of the maximum Euclidean distance in a square of size N N. N In this Chapter we are going to develop a routing algorithm in dense Gaussian networks for unicast and broadcast communications. Afterwards, we will solve some technological aspects based on these networks, such as the folding and expansion of their layout. As the Torus is probably the most used topology, we give a comparison between this topology and the dense Gaussian network. Finally, we introduce hierarchical structures based on these networks that might be very useful in the design of future parallel computers. 39

46 40 CHAPTER 3. DENSE GAUSSIAN NETWORKS 3.1 Unicast Routing There are many applications over dense Gaussian networks that can benefit from the two-dimensional labeling of nodes presented in the previous Chapter. We consider in this Section the unicast packet routing more in detail. To send a packet from node η to node β, we need to obtain γ = (β η) (mod α), with Re(γ) + Im(γ) minimum. Once γ is obtained, Re(γ) represents the number of links that the packet must traverse along the real axis (X) and Im(γ) the number of links along the imaginary axis (Y ). Then, the network interface will produce a packet header containing two fields, X and Y, which indicate the links to be taken in each axis; their signs indicate directions E/W and N/S. Routers will process the header information in the same way as in a Torus, decrementing the corresponding field header before sending the packet to the selected neighbor. A packet with X = 0 and Y = 0, will have reached its destination and will be delivered. Next, we present a new routing algorithm based on the general routing algorithm of the previous Chapter. Here, we can take advantage of the particular case of the dense Gaussian network to reduce the number of comprovations. We establish the following Lemma. Lemma 31 Let t be a positive integer and α = t + (t + 1)i Z[i]. Let η = x + yi and η = x + y i be such that x + y t and x + y t. If r η η (mod α) is such that Re(r) + Im(r) minimum, then r = (η η) + γα with γ {0, ±1, ±i, ±(1 + i), ±(1 i)}. Proof. Let r = (η η) + γα, that is, r + η η = γα. Lets consider γ = u + vi, where u, v Z. Now, γα = (u + vi)(t + (t + 1)i) = ((u v)t v) + ((u + v)t + u)i. We take absolute values on both sides of the equality and get: (u v)t v + (u+v)t+u = Re(γα) + Im(γα) = Re(r+η η ) + Im(r+η η ) 3t If u = 0, we have vt + v(t + 1) = v (t + 1) 3t, which forces v 1. For v = 0, we also obtain u 1. If u > 0 and v > 0, u + v t < (u + v)t + u 3t forces u + v = u + v < 3. If u > 0 and v < 0, u v t < (u v)t v 3t, which induces u + v = u v < 3. For the cases u < 0, we can use an analogous reasoning and get u + v < 3, with u > 0, v > 0. These conditions are clearly equivalent to the desired result. Now, we can take advantage of this new presented algorithm which is based just on sums and comparisons. Such an algorithm comes from the fact that the minimal path between two nodes, η = x + yi and β = x + y i, always results in one of nine possibilities, as it is illustrated in Figure 3.1. Given α = t + (t + 1)i, we consider

47 3.1. UNICAST ROUTING 41 Figure 3.1: Unicast routing algorithm. γ = β η = (x x) + (y y)i. Then, γ is either inside the region 0 or in any of the other eight neighbor regions labeled in the Figure from 1 to 8. As we have yet commented, we have to compute the weight of 9 Gaussian integers and choose the one with minimum weight. Algorithm 1 describes this simple routing mechanism. Such a routing can be easily implemented in hardware. A parallel implementation using nine adders and nine comparators will provide the fastest solution. Figure 3. presents an sketch of such a routing record generator circuit. Cheaper alternatives can also be implemented. Anyway, this routing reduces the complexity of previous mechanisms by avoiding integer divisions and it also provides an scalable implementation. Next, we give an example of routing in dense Gaussian networks. Example Let α = 3 + 4i and consider the graph G α with N = t + t + 1 = 5 nodes. Most of wrap-around links are omitted for simplicity. Now, consider η = i and η = 1 + i. Next, we have to compute the nine possible candidates for the minimum path. As η η = 3 + i, we obtain the set of candidates S. S = η η + {0, 3 + 4i, 3 4i, 4 + 3i, 4 3i, 1 + 7i, 7 i, 1 7i, 7 + i} = {3 + i, 6 + 6i, i, 1 + 5i, 7 i, + 9i, 4 + i, 4 5i, i} It is clear that i = routing record(η, η, 3 + 4i), which gives us the path for reaching the node η from node η with a path of length of. In Figures 3.3 and 3.4

48 4 CHAPTER 3. DENSE GAUSSIAN NETWORKS Data: η = x + iy): Source node; η = x + y i: Destination node; α = a + bi: graph generator Result: ( X, Y ): routing record(η, η, α) begin x := x x; y := y y; DO IN PARALLEL: begin { x0 := x 0; { y 0 := y 0; x := x + 1; { y := y (t + 1); x4 := x + (t + 1); { x1 := x t; { y 1 := y (t + 1); x3 := x + (t + 1); { y 3 := y t; x5 := x + t; { y 4 := y + 1; x6 := x 1; { y 6 := y + (t + 1); x8 := x (t + 1); y 8 := y 1; { y 5 := y + (t + 1); x7 := x (t + 1); y 7 := y + t; end ( X, Y ) := ( x i, y i ) such that x i + y i is minimum; end Algorithm 1: Unicast Routing Algorithm in dense Gaussian networks. Figure 3.: Routing record generator. we can see in red the path from η (red node) to η (blue node) for both distributions of the nodes.

49 3.. COLLECTIVE COMMUNICATIONS 43 Figure 3.3: Routing in dense Gaussian network G 3+4i with the weight distribution Figure 3.4: Routing in dense Gaussian network G 3+4i with the two squares distribution 3. Collective Communications In this Section we present an optimal broadcast routing for dense Gaussian networks. Efficient implementation of collective communications for parallel computing is a research topic that has received increasing attention in recent years. Broadcast communications are employed in many parallel applications such as matrix multiplication, LU factorization, Householder transformations and other basic linear algebra algorithms. Moreover, important architectural issues such as maintaining cache coherency and supporting barrier synchronization in multiprocessors may depend on the ability of the network to perform broadcasting communication [5], [7].

50 44 CHAPTER 3. DENSE GAUSSIAN NETWORKS Figure 3.5: Classical proof of the Pythagorean Theorem. The dissection depicted in Figure 3.5 constitutes one of the oldest proofs of the Pythagorean Theorem. It shows that the square of the hypotenuse h of a rightangled triangle can be seen as the sum of the area of four such triangles plus a square whose side is the difference between the two legs a and b of the triangle. Algebraically, h = 4( ab ) + (a b) = ab + a ab + b = a + b (3.1) Based on this Pythagorean dissection, we now present an optimal one-to-all broadcast algorithm, which is extremely simple and symmetrical for every packet and every node. Hence, it can be easily implemented in hardware. This algorithm exploits the optimal nature of dense Gaussian networks for embedding trees in them. As equation.1 tells us, dense Gaussian networks have a number of nodes which is the sum of two consecutive squares. Hence, in our case, a and b are respectively t and t + 1, and consequently, (t (t + 1)) = 1. This suggests to us that, once an arbitrary node is fixed, the rest of the network nodes should be divided into four different subsets having t(t+1) nodes each. This corresponds to the area of a rightangled triangle of consecutive integer catheti t and t + 1. We can identify in Figure 3.6 a unitary central square ((t (t + 1)) = 1) in which node 0 is located and four discrete right-angled triangles with identical legs of size t. We denote this special triangle as a t-triangle. It is easy to see that the area of a t-triangle equals the area of a right-angled triangle with legs of length t and t + 1. This geometric analysis allows us to present a dense Gaussian network of diameter t as a central node plus four t-triangular quadrants. The number of nodes of each quadrant corresponds to

51 3.. COLLECTIVE COMMUNICATIONS 45 the sum of the first t integers or the Triangular number of order t. Figure 3.6: One-to-all broadcast algorithm. We will refer to Figure 3.6 to describe our one-to-all broadcast algorithm. In this Figure, node 0 has four different neighbors: 1, 1, i and i. Each of these nodes is located on the right angle of a different t-triangular quadrant: node 1 belongs to quadrant SE, node i belongs to NE, node -1 belongs to NW and node i belongs to SW. From each one of these nodes located at distance 1 from node 0 we can visit d different nodes at distance d, with 1 < d t. We assume a router model with full-duplex links and all-port capability. Routers will support both unicast and broadcast routing, with the first header bit in every packet (B/U) indicating the class of routing service. In the case of broadcast routing, the second field in the packet header, denoted as distance, will be set to the network diameter, t, when the broadcast communication starts. Before each new hop, every router will decrement this field and when distance reaches zero, the broadcast will have finished. The third and last field in the packet header, denoted as NSEW, has four bits to indicate to the router the output ports to which the packet will be forwarded. We use bitmasks to deal with these bits that we denote as B mask. The resulting header is quite compact: log t plus 5 bits, nearly the same bits as needed for recording routing records for unicast traffic.

52 46 CHAPTER 3. DENSE GAUSSIAN NETWORKS Any node starting a broadcast injects a packet to its local router with B/U = 1, distance = t and NSEW = Thus, in the first step, the source node broadcasts in four directions, reaching the right angle of each t-triangle. In each t-triangle, the values of B mask must be updated depending on which t-triangle the packet is. For example, North output has a bitmask B mask = 1010, as we are in the NE t-triangle. The row (or column) reached by node 0 will continue to broadcast in both dimensions, while the other nodes will only propagate the packet along their column (or row) and updating their B mask. For example, nodes i and i on the NE triangle broadcast to the North and East and node 1+i only to the East, so that node 1+i does not receive a duplicate. Consequently, the broadcast occurs in t steps as Figure 3.6 reflects. In each step d, the 4d nodes at distance d from the source are reached with no contention. Note that the utilization of the network links is balanced, as in each step d, there are d packets traveling in each of the network quadrants. This means that it is possible to make a balanced use of the N, S, E and W network links when all nodes broadcast at once. By using broadcast bitmasks at each output port we can obtain a simple hardware implementation. The bitmasks are set at the begining of the broadcast and changed according to our algorithm. In this implementation, the broadcast packet is sent to the outputs whose bit is set in the header field NSEW, and then each output port will update that header field by doing a logical AND operation with its own B mask. As there are no duplicates, this algorithm uses N 1 = t + t links, which is the optimal number for a one-to-all broadcast operation. Besides, this algorithm is universal for every node and ends in time proportional to the diameter t, which is N. A similar broadcast in a Torus needs N steps. In addition, a of order of hardware implementation of our one-to-all broadcast is much simpler than equivalent optimal mechanisms for Torus networks, such as the introduced in [37]. Next, we present the broadcast algorithm in more detail.

53 3.. COLLECTIVE COMMUNICATIONS 47 Data: (B/U, distance, N SEW ): Header of the incomming packet Result: (B/U, distance, N SEW ): Header of the outcomming packet begin if (distance = t) then distance := distance 1; Send packet to N with NSEW = 1010 (NE Triangle); Send packet to W with NSEW = 1001 (NW Triangle); Send packet to S with NSEW = 0101 (SW Triangle); Send packet to E with NSEW = 0110 (SE Triangle); else CONSUME packet; if (0 < distance < t) then distance := distance 1; - Incoming packets with NSEW = 1010: Forward to N; Forward to E with NSEW = 0010; - Incoming packets with NSEW = 1001: Forward to W ; Forward to N with NSEW = 1000; - Incoming packets with NSEW = 0101: Forward to S; Forward to W with NSEW = 0001; - Incoming packets with NSEW = 0110: Forward to E; Forward to S with NSEW = 0100; - Incoming packets with NSEW = 1000 (0100, 0010, 0001): Forward to N (S,E,W ); end end end Algorithm : One-to-All routing algorithm in a dense Gaussian network.

54 48 CHAPTER 3. DENSE GAUSSIAN NETWORKS 3.3 Technological Aspects: Folding and Expansion Dense Gaussian networks, as D-Tori, are mesh-like topologies with wrap-around links, whose lengths grow with the network size. Since internal links are supposed to have unitary length, wrap-around links in square Torus grow as N, where N is the number of nodes. As a consequence, most applications can be negatively affected by this unbalance. In the case of the Torus, the Folded Torus represented in Figure 3.7 is a solution to equalize the network links by increasing the wire length to. With the same aim, a new layout for dense Gaussian networks was proposed in [33], obtaining as a result a maximum wire length bounded by 5. Figure 3.7: Folded Torus The proposed algorithm starts from a base layout having t rows and t + 1 columns plus a node in a separate row. Vertical links represent jumps in t + 1 and diagonal links represent jumps in t. After using different rotations and shuffles of the rows and columns of the network, we obtain a mapping of the dense Gaussian networks with no links larger than 5. As an example, this algorithm converts the initial layout into the final layout in Figure 3.8. Furthermore, just four planes are enough to lay all the network links without cutting links. An interesting property for any layout is the capability of increasing the number of nodes with the minimum impact on the existing layout. The proposed layouts can be easily scaled, adding the necessary nodes to go from a certain network size to the corresponding following one. In order to increase the diameter of the network by one unit, passing from a diameter of t > 0 to t+1, we have to add 4(t+1) nodes. For expanding the network, existing nodes must not be reordered. It is necessary to divide them in two parts and modify the connectivity of the border links. New nodes will lie in two rows in the middle of the network and on one side in each half, as shown in Figure 3.9. All nodes are renamed after the node addition. As can be seen, links remain in the same position, except those few that should connect old and new nodes, which might change.

55 3.4. GAUSSIAN VERSUS TORUS NETWORKS 49 (a) Initial layout for N = 41 (b) Final layout for N = 41 Figure 3.8: Folded dense Gaussian network. Figure 3.9: Expansion of the dense Gaussian network G 3+4i 3.4 Gaussian versus Torus Networks In this Section we compare Torus and dense Gaussian networks. Both networks are degree four symmetric graphs and employ the same number of links, N. However, the diameter of the dense Gaussian network with N nodes is just around 70.7% of the diameter of a Torus of the same size, as it was shown in Section.6. Furthermore, the average distance is also reduced to a value around 94% of the Torus one.

56 50 CHAPTER 3. DENSE GAUSSIAN NETWORKS A richer connectivity in a dense Gaussian network has as a counterpart a higher number of wrap-around links in its D layout. The minimum number of wraparound links in a D layout is 3t + 3 for the case of a dense Gaussian network, while a Torus has N of these links. Hence, the difference between the wrap-around links used by both networks is around a 6%. Then, we can conclude that a 30% diameter reduction is achieved by employing only about 6% more wraparound links. This seems to be a manageable cost when considering the impact that the diameter and connectivity have on network performance. We need to compare the two networks not only from the topological point of view, in which the dense Gaussian network is the clear winner, but also in terms of their cost, performance and implementation. Consequently, we will dedicate the rest of this Section to explore different factors that make a network topology suitable for a parallel system. For each one, we will describe how the Gaussian network fares against the Torus. N The network should be deadlock-free and provide adaptive routing at a reasonable cost even in the presence of failures. Simple and efficient adaptive routing and deadlock-avoidance mechanisms defined for Tori can be easily exported to dense Gaussian networks. For example, the fault-tolerant adaptive Bubble routing algorithm proposed in [9] can be successfully used in these networks even in the presence of arbitrary failures. It should be noticed that adaptive Bubble routing is being employed in the design of the IBM BlueGene/L supercomputer [6]. This routing mechanism has been proved to be the one having the best cost/performance ratio. The implementation costs are identical for both Tori and dense Gaussian networks. The network should provide both low latency and high throughput. It has been previously proved that reducing topological distances by skewing the wrap-around links in rectangular and L-shape Tori, results in better system performance [13], [8], [36]. These studies employed networks whose sizes were powers of two for comparison with popular Tori. Having lower distances implies higher network throughput and lower packet latencies which reduce the execution times of typical applications running over standard cc- NUMA multiprocessors. The network should efficiently support collective communications like one-toall and all-to-all broadcasting and reductions. This issue has already been explored in this Chapter. As the connectivity pattern of dense Gaussian networks allows to reach the maximum number of

57 3.4. GAUSSIAN VERSUS TORUS NETWORKS 51 nodes at each step of the broadcast, it is completed in the shortest possible time. Reduction collective operations can also beneficiate from Gaussian connectivity as they employ a similar communication topology. The network should provide optimal embedding of typical subgraphs employed in parallel computing. Many parallel applications are based on the mapping of square matrices over a given network. Tori embed such structures in a natural way. Dense Gaussian networks perform this requirement equally well. As these networks can be seen as two attached squares with sides t + 1 and t, we can directly map square matrices of such dimensions. In the densest Tori of diameter t (when N is odd) square matrices of size t + 1 can be directly mapped. With the same diameter, a Gaussian network can be seen as two attached squares of (t + 1) and t nodes. Consequently, we can embed the same matrices as a Torus and we still have t more nodes that can be used to map matrices of smaller size. Trees are also popular subgraphs in parallel computing. For example, they can be used to implement cache coherency protocols and synchronizing barriers in cc-numas and MPPs. Trees can also be embedded in both Torus and Gaussian networks. We have already shown a spanning tree embedded onto the dense Gaussian graph when describing the one-to-all broadcast strategy as illustrated in Figure 3.6. The depth of the spanning tree is the diameter of the network; thus the barrier will be completed earlier in the Gaussian network as it has the lowest diameter. For instance, in many problems the tree representing the particular calling structure of subroutines often degenerates to the linear chain of all left or all right children. It is desirable to have this case spread out over all available nodes. This case is correctly solved in a dense Gaussian network. A binary tree structure can be mapped onto these networks by mapping the two childrens of each node in the tree onto the nodes in the graph in two fixed directions (for example N and E). The network should be expandable. Incomplete Gaussian networks exist for any number of nodes which provides fine grain system expansibility by incorporating individual nodes. Nevertheless, if the full capabilities of dense Gaussian networks are to be exploited we need to increase in 4(t + 1) nodes a dense Gaussian of diameter t to obtain one of diameter t + 1. As it has been explained in Section 3.3, such expansion does not need the rearrangement of the preexistent network infrastructure. The network should be scalable.

58 5 CHAPTER 3. DENSE GAUSSIAN NETWORKS The number and shape of wrap-around network links has a significant impact on its final layout. Minimizing the number of wire s crosses and equalizing their lengths should be goals to be pursued in order to achieve a scalable network design. The wrap-around connectivity of the dense Gaussian network makes it difficult to produce such a compact layout. Nevertheless, optimal VLSI layouts have been explored in [36] for some Gaussian related topologies. This technique can be extended and improved when applied to a dense Gaussian network. As we explained in Section 3.3, the maximum wire length for the resulting layout is 5, regardless the number of network nodes. Furthermore, no more than four metal layers are needed for a complete planar implementation. A graceful expansion procedure has been also developed for this lay-out. 3.5 Hierarchical Gaussian Networks A First Approach Currently, the increasing number of transistors per chip is facilitating the design of Chip Multiprocessors (CMPs) as they provide high performance and cost-effective computing for many scientific and commercial workloads. By combining multiple CMPs higher performance can be achieved. Such is the case of Piranha [] and IBM Power4 [3]. Hence, it is necessary exploring new networks whose topological properties match the new requirements imposed by these emerging architectures. We explore in this Subsection hierarchical Gaussian networks as possible candidates for implementing such two-level interconnection networks. As N increases, the degree four topologies considered previously exhibit worst performance as their diameter and average distance grow in the order of N. Hierarchical networks are a good solution to fight against this problem. Although we can build hierarchical structures with any Gaussian network, we have chosen Dense Gaussian networks because of their optimal distance properties. A generalization for other cases is straightforward. Next, we define the level hierarchical Gaussian network. Definition 3 Given t a positive integer let β = t+(t+1)i. We define the -Level hierarchical Gaussian network HG β = (V, E) of G β as follows: V = Z[i] β Z[i] β E = {((α 1,1, α 1, ), (α 1,1, α, )) V V α 1, = α, and d(α 1,1, α,1 ) = 1, or α 1,1 = α,1 = 0 and d(α 1,, α, ) = 1}, where d is the graph distance in G β.

59 3.5. HIERARCHICAL GAUSSIAN NETWORKS 53 Figure 3.10: Hierarchical Gaussian network HG 1+i An intuitive visualisation of how to build this network is to take N dense Gaussian networks of N nodes and join their centers following the adjacency pattern of a dense Gaussian network of N nodes. A simple example with β = 1 + i can be seen in Figure Some of the wrap-around links are omitted for the sake of simplicity. Thus, we have that HG β has N = N(β) nodes and N + N links, where N = t + (t + 1). Also, it is clear that the diameter of this structure is 3t. This is neither a regular graph, as we have nodes of degree four and eight, nor a vertex-symetric graph. We denote the links in lower level of hierarchy as base links, while the links in the higher level are denoted as express links. However, we can use the symmetry of our network to obtain all the possible shortest paths from a source node s = (α 1, α ) to a destination node d = (α 1, α ). The idea of this routing algorithm is that if both nodes are in the same dense Gaussian network then we can follow a direct routing. In other cases, the routing consists in going to the center of the corresponding dense Gaussian network, then go up in the higher level of the hierarchy and attain the destination dense Gaussian network. Now, we just have to go to the destination node following the links in the dense Gaussian network. The complete algorithm can be found in Algorithm 3. Using this optimal routing algorithm and the symmetry of the hierarchical Gaussian network we obtain a formula for the average distance. We introduce first some known results. Remark 33 We have seen in Section.6 that the average distance in a dense Gaussian network of diameter t > 0 is d = t+1. The average distance to the 3 center of a dense Gaussian network is δ = N 1d, where N = N t + t + 1. Lemma 34 Given t a positive integer. Let β = t+(t+1)i. The average distance in HG β can be computed as 3N 1 d, where d is the average distance in a dense Gaussian N+1

60 54 CHAPTER 3. DENSE GAUSSIAN NETWORKS Data: s = (α 1, α ): Source node; d = (α 1, α ): Destination node; β = t + (t + 1)i: graph generator Result: (x 1, y 1, x, y, x 3, y 3 ) such that: (x 1, y 1 ) base links; (x, y ) express links; (x 3, y 3 ) base links begin if (α = α ) then (x 1, y 1 ) = routing record(α 1, α 1, t); (x, y ) = (x 3, y 3 ) = (0, 0); else (x 1, y 1 ) := routing record(α 1, 0, t) // links to reach the center of the dense Gaussian network ; (x, y ) := routing record(α, α, t) // links in the higher level of hierarchy ; (x 3, y 3 ) := routing record(0, α 1, t) // links to attain d; end end Algorithm 3: Routing Algorithm for HG β network and N = t + t + 1. Proof. When we want to travel from a source node α we have N 1 possible destination nodes. Some of them, N 1, are in the same dense Gaussian network, so they are in average at distance d. The others are in a different dense Gaussian network, so we have to reach the center of the ball, at average distance δ as the source node may be the center. Then we have to go to the other ball which is at average distance d. Finally we attain the destination node in the dense Gaussian network which is at average distance δ. This easy reasoning allows us to compute the average distance in HG β : d = N 1 N(N 1) d + Nd + (N 1)d d + (d + δ) = N 1 N 1 N + 1 = 3N 1 N + 1 d Joining all the previous results, we can build a hierarchical network with N O(4t 4 ) nodes, N + N 8t 4 links, diameter 3t and average distance 3N 1d t. N+1 We have also given a simple and optimal routing algorithm. Example 3 Let β = 3 + 4i and consider the network HG β in Figure 3.11 with 65 nodes. Most of base wrap-around and express links are omitted for the sake of clarity. Now, consider α = (1 + i, 1 + i) and α = ( i, 1 + i). As α α we have to follow the path 1 i to reach the center of the dense Gaussian network of

61 3.5. HIERARCHICAL GAUSSIAN NETWORKS 55 Figure 3.11: Hierarchical Gaussian network HG 3+4i α. Then, as ( 1 + i) (1 + i) = i we have to follow this path to find the destination dense Gaussian network. Finally i is the way to attain α. The total length of the path is 6. In order to connect the different on-chip multiprocessors, one important issue is where to place the external communication ports to connect to other on-chip multiprocessors. It is interesting to try to avoid concentring all the transmission lines in a specific place. Thus, we propose to spread all the external communication ports in the four corners of our chip. If we follow a Dimensional Order Routing (DOR) algorithm, most of the packets entering into a dense Gaussian network will be forwarded into the same direction as only a change of direction would be needed to convey packets among on-chip multiprocessors. As the nodes t and t are connected to the nodes ti and ti, we propose to place the communication ports in these nodes. In this way, we can obtain a distribution of the connection ports as shown in Figure This change would imply a slight increase in the diameter of the network, which is now 3t + 1. In Figures 3.1 and 3.13 we can see the two possibilities for

62 56 CHAPTER 3. DENSE GAUSSIAN NETWORKS distributing such external connections. Figure 3.1: Central distribution for G t+(t+1)i Figure 3.13: Corners distribution for G t+(t+1)i

63 3.5. HIERARCHICAL GAUSSIAN NETWORKS Generalized Hierarchical Gaussian Networks In this Subsection we develop a generalization of the -level hierarchical Gaussian network HG β to higher levels of hierarchy. More precisely, we can stablish the following definition. Definition 35 Given n and t two positive integers and β = t + (t + 1)i. We define the n-levels hierarchical Gaussian network nhg β = (V, E) of G β as follows: V = n i=1 Z[i] β. E = {((α 1,..., α n ), (γ 1,..., γ n )) V V α i = γ i = 0 for i < k with k {1,..., n}, d(α k, γ k ) = 1 and α i = γ i for all i > k}, where d is the graph distance in G β. Now in this network nhg β we have N n nodes with N n 1 i=0 N i = N n 1N links. N 1 This topology is neither regular as we have nodes of degree 4, 8,..., 4n, nor vertexsymmetric. Despite these facts and thanks to the symetry of the network, we can stablish a simple routing algorithm based on the case n =. Given two nodes α, α nhg β we have that α i = α i for all i > m for some integer m {1,..., n}. Note that we can have k = n. Then we have to go from (α 1,..., α n ) to (0, α,..., α n ), then (0, 0, α 3,..., α n ) to reach (0,..., 0, α k,..., α n ) and move to (0,..., 0, α k,..., α n) which is in a dense Gaussian network in the same level of hierarchy. Next step is going down to (0,..., 0, α k 1,..., α n), to reach (α 1,..., α M ). More in detail, the complete algorithm is explained in Algorithm 4. The diameter of the network is (n + 1)t as in the worst case we would have to ascend and then descend n levels of hierarchy. Following the same steps than for the case n = we obtain a formula for the average distance in the following lemma. Lemma 36 Given n, t two positive integers. Let β = t + (t + 1)i. The average distance in nhg β can be computed as (n 1)N n nn n d N n 1 where d is the average distance in a dense Gaussian network and N = t + t + 1. Proof. There are N n 1 possible destinations from a source node α. More precisely, if we have to go to the ith level of hierarchy, where i {0,..., n 1}, and then go down to the destination node, we have N i+1 N i = N i (N 1) possible destination

64 58 CHAPTER 3. DENSE GAUSSIAN NETWORKS Data: s = (α 1,..., α n ): Source node; d = (α 1,..., α n): Destination node; β = t + (t + 1)i: graph generator; n: levels of hierarchy Result: (x 1, y 1,..., x n, y n ) such that: (x i, y i ) links in i th -level of hierarchy. The first n pairs are the way up and the last n are the way down begin i=1; while ((α i α i) and (i < n) do (x i, y i ) = routing record(α i, 0, t); i = i + 1; end k = 1; while (k < i) do (x k, y k ) = routing record(0, α i, t); k = k + 1; end (x i, y i ) := routing record(α i, α i, t); i = i + 1; while (i <= n) do (x i, y i ) = (0, 0); (x i+n, y i+n ) = (0, 0); i = i + 1; end end Algorithm 4: Routing Algorithm for nhg β.

65 3.5. HIERARCHICAL GAUSSIAN NETWORKS 59 nodes as we have to substract the nodes that can be attained only using i 1 levels of hierarchy. Using the tipology introduced in Remark 33, we can express the average distance with the following formula: d = n 1 i i=0 (iδ + d)(n 1)N N n 1 = N 1 N n 1 = n 1 i=0 (i N 1 N i=0 + 1) d N i n 1 (N 1) N n 1 d in i 1 + N 1 n 1 N n 1 d N i = (n 1)N n nn n d N n 1 i=0 as we wanted to see. Thus, in this Subsection we have built a hierarchical structure with N n O( n t n ) nodes, N n 1 N N 1 O(n+1 t n ) links, diameter (n + 1)t and average distance d O((n 1) t+1 ). We have also given a simple and optimal routing algorithm. 3

66 60 CHAPTER 3. DENSE GAUSSIAN NETWORKS

67 Chapter 4 Perfect Gaussian Codes We concentrate now our attention on the proposal of perfect error correcting codes. The design of error correcting codes for two dimensional signal spaces has been considered in the recent technical literature. Hamming and Lee distances have been revealed to be inappropriate metrics to deal with QAM signal constellations. To solve this problem, some authors have constructed new error correcting codes by using the Mannheim metric as it was introduced in [1]. Others, have recently employed lattices and plane tessellations to derive codes that employ a distance induced by the Euclidean metric over certain graphs embedded in Flat Tori [11]. Finding perfect error correcting codes by means of a specific graph is equivalent to solve the problem of the perfect placement of resources in a computer network. In most parallel and distributed systems we can distinguish two types of nodes: resource nodes and user nodes. The former house replicable items such as power sources, I/O ports and function libraries, while the latter are located within a distance of t from a resource node, where t is a fixed positive integer. Obviously, resources are limited and expensive so the aim of any network configuration is to minimize the number of resource nodes while providing reasonable access to all user nodes. The problem of the perfect t-distance placement is how to place resource nodes such that any nonresource node can reach one of them (and only one) at distance t or less. Solving this problem is equivalent to finding a perfect t-dominating set of the graph that represents the network, which has many other interesting applications in different fields such as Coding Theory and Game Theory. We first introduce some definitions and notation. Definition 37 Given α = a + bi Z[i], an integer t > 0 and a node η G α, we define the ball of radius t centered in η embedded in G α as B t (η) = {γ Z[i] α d α (γ, η) t} A node η is said to t-dominate β G α if β B t (α). Then, a vertex subset S G α 61

68 6 CHAPTER 4. PERFECT GAUSSIAN CODES is called a perfect t-dominating set if every vertex of G α is t-dominated by a unique vertex in S. In [6] a particular method was introduced to find the perfect t-dominating set in those Gaussian graphs that are circulant graphs. Here, we are going to get a generalization of this method and use it to obtain perfect t-error correcting codes over Z[i] α for any α Z[i]. The codes that we construct in this Chapter are perfect codes using the Gaussian graph s distance, which in Chapter we defined as where η, β Z[i] α. d α (η, β) = min{ x + y (β η) x + yi (mod α)} In Subsection.5.1 we showed that the square Torus is a Gaussian graph. It is straightforward to note that the graph distance in a Torus of size b > 0 is the Lee distance between -coordinate vectors of Z b Z b. We can define the Lee distance in the following way: Definition 38 The Lee distance between two vectors a = (a 1,..., a n ) and b = (b 1,..., b n ) over Z N is defined as follows d L (a, b) = n min( a i b i, N (a i b i ) ), with 0 a i, b i N i=1 When n =, we have d L ((a 1, a ), (b 1, b )) = min( a 1 b 1, N (a 1 b 1 ) )+min( a b, N (a b ) ). Hence, the Lee metric is a particular case of the Gaussian metric. This fact has important implications in the study of the relationship between perfect codes for the Gaussian metric and the well-known perfect codes for the Lee metric introduced in [19], as we will see in Section 4.1. For the case of other Gaussian graphs studied in Chapter.5 such as the doubly twisted Torus or the rectangular twisted Torus, metrics induced by these graphs can be seen as modifications of the Lee metric, which have not been previously studied. 4.1 Perfect Codes for Gaussian Graph Metrics In [18] and [6], perfect t-error correcting group codes of length 1 were characterized over Z[i] α for the case in which α = a + bi with (a, b) = 1. In this Section we extend those results to any Gaussian graph. Also, we show how the well-known Lee perfect codes can be obtained from our result.

69 4.1. PERFECT CODES FOR GAUSSIAN GRAPH METRICS Perfect Codes over Quotient Rings of Gaussian Integers Now, we give sufficient conditions for the existence of a perfect t-error correcting code C in Z[i] α of lenght 1, whose elements constitute a subgroup of Z[i] α. This directly implies the existence of a perfect t-dominating set in G α. Similar approaches have been previously considered, at least, for Hypercubes [3], Tori [7] and Kronecker products of cycles []. Firstly, we introduce some technical results, which will lead us to the proposal of perfect codes inferred from Gaussian graphs. Next, we introduce the concept of perfect t-error correcting code of length 1 over Z[i] α. Definition 39 Given C Z[i] α non empty, we say that is a perfect code if there exist a positive integer t such that, for every β Z[i] α there exists a unique element γ C such that d α (β, γ) t. Note that if C is a perfect code for the value t, then it is a t-error correcting code. Also, C + β (mod α) is a perfect t-error correcting code and consequently, we can assume 0 C. Before stating the main result of this Section, note that, for every β Z[i] α and for every positive integer t we have that B t (β) has t + t + 1 = t + (t + 1) elements. Hence, if there exists a perfect t-error correcting code in Z[i] α then t + t + 1 divides N(α). Nevertheless, this is not a sufficient condition for obtaining such a set. For example, 85 ( ) divides 170 ( ) but there is not a 6-error correcting code in Z[i] 7+11i containing 0. The following result shows a stronger condition that allows us to construct perfect t-error correcting codes for Gaussian metrics. Theorem 40 Let α Z[i] and t be a positive integer, then i) If β = t + (t + 1)i divides α then C = (β) is a perfect t-error correcting code of length 1 over Z[i] α. ii) If β = t (t + 1)i divides α then C = (β ) is a perfect t-error correcting code of length 1 over Z[i] α. Proof. First note that, due to Theorem 91, C has exactly (a + b )/(t + (t + 1) ) elements. Next, we are going to see the first item of the Theorem. The second one follows the same procedure. We just need to prove that, if β 1, β C then d α (β 1, β ) t + 1. Consider β 1, β (β). Then, β 1 = α 1 β and β = α β, with α 1, α Z[i]. We have to prove that d α (β 1, β ) = d α (α 1 β, α β) = d α ((α 1 α )β, 0) t + 1. Note that it is enough to prove that for any η Z[i] such that ηβ 0 (mod

70 64 CHAPTER 4. PERFECT GAUSSIAN CODES α) it is fulfilled that d α (ηβ, 0) t + 1. It is clear that for η = {1, i, 1, i} we have d α (ηβ, 0) = t + 1. Suppose the contrary. If d α (ηβ, 0) < t + 1 then ηβ x + yi (mod α), with x + y < t + 1 minimum. Therefore, ηβ = (x + yi) + γ 1 α = (x + yi) + γ β, where γ 1, γ Z[i] and as β α, which implies x + yi = β(η γ ). Now, N(x + yi) 4t since x + y t. As N(β) = t + t + 1 > t for t > 0, then N(η γ ) <. Consequently, x + yi = βu, with u {1, i, 1, i}. So, in any case, x + y = t + 1, which is a contradiction. Example 4 Let α = 6+7i = ( i)(1+i)(1+4i). As 1+i divides 6+7i, the group C = (1+i) = {1+i, +4i, 3 i, +i, 1+3i, 5i, 5, 4+i, 4 i, 5, 5i, 1 3i, i, 3 + i, 4i, 1 i, 0} is a perfect 1-error correcting code over Z[i] 6+7i. Figure 4.1 illustrates this example, where we have omitted the wrap-around links for the sake of simplicity. Figure 4.1: Perfect 1-error correcting code over Z[i] 6+7i. Example 5 If we consider the codewords as C = (β), with β = t + (t + 1)i and C Z[i] α, where α = βη, the code C is perfect with length 1, with N(η) codewords, minimum distance t + 1 and covering radius t. Thus, this code can correct any error e of weight at most t. Concerning the decoding algorithm, when we receive a word γ Z[i] α, only a division to correct the word is needed. We have to divide by β = t + (t + 1)i and obtain the quotient q such that γ = qβ + r with N(r) < N(β). This quotient is the correct

71 4.1. PERFECT CODES FOR GAUSSIAN GRAPH METRICS 65 codeword. The detailed algorithm is as follows. Data: η = x + iy: Received word; β = t + (t + 1)i: Code generator; α = a + bi: Graph generator Result: γ = x + y i: Corrected word begin COMPUTE q, r such that η = qβ + r, with N(r) < N(β); COMPUTE x, y such that q x + y i (mod α), with x + y minimum; γ = x + y i; end Algorithm 5: Decoding Algorithm for the perfect t-error correcting code over Z[i] α Uniqueness Result In [5] perfect codes of length 1 for the Lee metric were characterized. In this section we describe perfect group codes of length 1 over Z[i] α. Now, to give the uniqueness result for perfect t-error correcting group codes of length 1 over Z[i] α we need to introduce the following result: Lemma 41 Let t be a positive integer and α Z[i]. For every η Z[i] α we have that B t (η) B t (0) = d α (η, 0) t + 1 Proof. ( ) Let η be such that d α (η, 0) t + 1 and suppose that there exists a node γ B t (η) B t (0), that is d α (η, γ) t and d α (β, γ) t. Therefore, t + 1 d α (η, β) d α (η, γ) + d α (β, γ) t, which is a contradiction. ( ) Let η be such that B t (η) B t (0) = and suppose the contrary, that is, d α (η, 0) t. We have to prove that B t (η) B t (0). It is clear that if we prove that B t (η) B t (0) for η with d α (η, 0) = t we have proven the result for any η with d α (η, 0) t. Hence, without loss of generality we can suppose that d α (η, 0) = t. Then, there exist a representant β of the class of η with β = x + yi, x + y = t minimum. Let s analyze the cases in which x, y 0, the others can be solved analogously. Hence, we have that 0 x t, y = t x. As x + y 0 (mod ), we have that x y (mod ). If x y 0 (mod ), then γ = a + b i Z[i] α and d α (0, γ) = t = d α (η, γ). This is a contradiction. If x y 1 (mod ), then γ = a 1 is also a contradiction. + b+1 i Z[i] α and d α (0, γ) = t = d α (η, γ). This

72 66 CHAPTER 4. PERFECT GAUSSIAN CODES Hence, using Theorem 91 and the previous comments we can prove the following: Theorem 4 Let α = a+bi and t a positive integer. If there exists a perfect t-error correcting ideal code C of length 1 over Z[i] α, then it must be the group generated by t + (t + 1)i or t (t + 1)i. N(α) t +(t+1). Proof. Since C is a perfect t-error correcting code over Z[i] α, it has cardinal Then, C must be generated by an element β = x + yi Z[i] such that β α, as we are in a Principal Ideal Domain (see Proposition 64). Moreover, this element must satisfy that #C = N(α) N(β) x + y = t + (t + 1). Now, let s prove that necessarily x + y = t + 1. If x + y < t + 1, we have that d α (β, 0) x + y < t + 1 and, by Lemma 41, B t (β) B t (0). This is a contradiction since 0 and β belong both to C. Next, if we suppose that x + y > t + 1, we get x + y > t + 1 x + y = t + (t + 1) Then, x > t + 1 y which implies x > (t + 1) (t + 1) y + y. By second equation we have that t + (t + 1) = x + y > (t + 1) (t + 1) y + y + y. This is equivalent to 0 > t(t + 1) (t + 1) y + y = ( y (t + 1))( y t), which is also a contradiction as y and t are integers. So, necessarily x + y = t + 1. Hence, β = x + yi with x + y = t + 1 x + y = t + (t + 1) It is easy to prove that this implies β = x + yi with x = t and y = t + 1 or x = t + 1 and y = t, from where we get that β = t + (t + 1)i or β = t (t + 1)i Lee Codes: a Remarkable Subcase In this Subsection we show how the perfect Lee codes introduced in [5] can be obtained as a particular case from Theorem 40. Also, we show that these Lee codes are essentially different to other codes based on Gaussian graphs, since they have different distance properties. Definition 43 Given C a code of N words over an alphabet Q with a distance function d, we define the distance matrix of the code C as a N N matrix A, where A i,j is the distance between c i and c j.

73 4.. SUPER-GAUSSIAN NETWORKS 67 It is clear that when we define a code as a subset of nodes C in a graph (V, E), the distance between two codewords c i = v i and c j = v j corresponds to the length of the minimum path between the nodes v i and v j. Thus, the distance matrix in this kind of codes is equal to the matrix of minimum distances between the nodes in C. Next, we introduce the results obtained by Golomb and considered by Berlekamp in [5]. Theorem 44 For any given t, there exists a perfect t-lee correcting code of block length n = over the alphabet Z q, where q = t + t + 1. This code may be taken as the negacyclic code generated by g(x) = x + (t + 1). Corollary 45 If t + t + 1 divides q,there exists a perfect t-lee correcting code of length n = over the alphabet of Z q. The perfect t-error correcting code from Theorem 44 uses the Lee distance in Z t +t+1 Z t +t+1 and has t + t + 1 words. In fact, we can see that this code coincides with the code built over the Torus Z[i] t +t+1 with C = (β), where β = t + (t + 1)i. Furthermore, this code is essentially different to the code built over Z[i] β with C = (β), that has the same number of nodes but different distance matrices as their underlying graphs have different diameters. Example 6 Consider β = 1 + i. We can build the Torus Z[i] 5 and the Gaussian network Z[i] 3+4i, where β 5 and β 3 + 4i. In Figures 4. and 4.3 we can see the two different 1-perfect codes of 5 codewords. Concerning the codes in Corollary 45, we can follow the same procedure and get this codes coincide with the codes built over the Gaussian graph Z[i] (t +t+1)k, for any integer K, choosing C = (β) with β = t + (t + 1)i. 4. Super-Gaussian Networks Large interconnection networks are interesting for many applications. However, rising the number of nodes of a network has as a drawback the consequent growing of its diameter and average distance. In order to avoid this problem, it is a good idea to augment the number of links in the graph. In [14], a proposal for reducing the topological distances in k-ary n-cubes was given. The idea of this article was to add long express channels that would connect distant nodes and reduce topological distances. In the case of the Gaussian graphs, we want to find a smart method to augment the number of links obtaining the same result. The answer to this problem is to use the perfect t-error correcting code found in the previous Sections. It is interesting to see how, after developing some applications to Coding Theory, we can use them again in the field of computer interconnection networks, which

74 68 CHAPTER 4. PERFECT GAUSSIAN CODES Figure 4.: Perfect code over G 5 Figure 4.3: Perfect code over G 3+4i reinforces the close relation of both problems. The networks that we consider in this Section are super-graphs of the dense Gaussian network of diameter t and the

75 4.. SUPER-GAUSSIAN NETWORKS 69 Gaussian network generated by α = (t + (t + 1)i). It is known that the square of any Gaussian integer leads to a Pythagorean triple. A Pythagorean triple, (x, y, z), is any triple of integers fulfilling the Diophantine equation x + y = z. There are evidences that ancient Greeks knew the triple (t + 1, t + t, t + t + 1), which is generated by squaring the Gaussian integer t + (t + 1)i. It is interesting to observe the connection between these Pythagorean triples and the Gaussian graphs generated by (t + (t + 1)i). According to the result obtained in Theorem 40, we have that if α = (t + (t + 1)i), then the ideal generated by t + (t + 1)i is a t-error correcting code of length 1 over Z[i] α. As we have yet remarked, this ideal is also a perfect t-dominating set of Z[i] α. Now, we consider this fact to define super-gaussian networks. Let t be a positive integer. We consider for the rest of the section β = t+(t+1)i and α = β. Obviously, G α has a perfect t-dominating set which is S = (β). Next, we define a super-graph of this graph, in the following way: Definition 46 Given t a positive integer, let β = t+(t+1)i and α = β. We define the super-gaussian network G α = (V, E) of G α as follows: V = Z[i] α. E = {(α 1, α ) V V d α (α 1, α ) = 1 or α 1, α S and d α (α 1, α ) = t+1}, where d α is the Gaussian distance in G α and S = (β) is its perfect t-dominating set. Note that we have added N links to the graph G α connecting the nodes in the perfect t-dominating set S. By similarity with [14], we denote these links as express links. Thus, G α has N vertices and N +N links, where N = N(β) = t +(t+1). It is not a regular graph but it contains two underlying degree four circulant graphs. Obviously, one of them is the Gaussian network generated by α, since G α is a subgraph of G α. The other subgraph of G α, which we denote as G α, has S as its vertex set and two vertices are adjacent if they are adjacent in G α but not in G α. Note that G α is regular of degree four since S is perfect. Then, we have: Theorem 47 With the notation above, the graphs G α and G β are isomorphic. Proof. Since S = (β) Z[i] α with β = t + (t + 1)i consider the graph isomorphism: φ : Z[i] β S Z[i] α α β α (mod α) Hence, G β is a subgraph of G α. Since the two subgraphs of G α have disjoint link sets, we will say that a link is base if it is a link of G α and express if it is link

76 70 CHAPTER 4. PERFECT GAUSSIAN CODES of G α. Adding express links to G α forces the loss of the vertex-symmetry of the network. However, this graph has significative advantages. Note that the diameter of G α is t(t + 1) 1 as (t + (t + 1)i) = (t + 1) + t(t + 1)i, by Corollary 6. Notwithstanding, the diameter of G α is just 3t Routing in Super-Gaussian Networks Now, we give the idea of the routing algorithm for the super-gaussian network G α. Let η, η be two vertices of G α given by their expression with minimum graph weight. Firstly, we have to compute integers q, r, q, r such that η = qβ + r, N(r) < N(β) and η = q β + r, N(r ) < N(β). Then, (x, y) := routing record(q, q, t) gives us the way of reaching the dominating vertex of η, q η, from the dominating vertex of η, which is qβ, in G β using the express links. The remainders r, r give us the way of reaching η, η from their dominating vertices qβ, q β, respectively, by using the base links. If a path in G α were shorter than the previous one, we would select it. The complete Algorithm is as follows: Data: η = x + yi: Source vertex; η = x + y i: Destination vertex; β = t + (t + 1)i: graph generator Result: (x 1, y 1, x, y, x 3, y 3 ) such that: (x 1, y 1 ) base links; (x, y ) express links; (x 3, y 3 ) base links begin COMPUTE q, r, q, r {η = qβ + r, N(r) < N(β)} and {η = q β + r, N(r ) < N(β)}; (x 1, y 1 ) = (Re( r), Im( r)), (x, y ) = routing record(q, q, t), (x 3, y 3 ) = (Re(r ), Im(r )) ; COMPUTE q, r {η η = q β + r, N(r ) < N(β) }; if ( Re(r ) + Im(r ) 3 j=1 ( x j + y j )) then (x 1, y 1 ) = (Re(r ), Im(r )), (x, y ) = (x 3, y 3 ) = (0, 0) ; end end Algorithm 6: Routing Algorithm for G α. Example 7 Let β = 3 + 4i and α = β. We consider the graph G α in Figure (4.4) with 65 vertices. Most of base wrap-around and express links are omitted for simplicity. Now, consider η = 1 + 1i and η = 5 5i. It is clear that η = ( + i)β + ( 1 + i) and η = ( i)β + (1 i). The remainders 1 + i and 1 i give us the path through base links to reach the centers of their corresponding balls. Then, (1, ) is the routing record for vertices + i and i in G 3+4i, which gives us the path through express links for reaching the dominating vertex of η from the dominating vertex of η. The total length of the path is 8, while only using the base links we obtain the path 3 + 7i of length 10.

77 4.. SUPER-GAUSSIAN NETWORKS 71 Figure 4.4: Routing in super-gaussian graph G (3+4i)

Perfect Dominating Sets in Gaussian Graphs

Perfect Dominating Sets in Gaussian Graphs Perfect Dominating Sets in Gaussian Graphs Carmen Martínez 1, Miquel Moretó 2 and Ramón Beivide 3. Abstract Gaussian Graphs are introduced and analyzed in this paper. The set of vertices of these Cayley

More information

PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS. 1. Introduction

PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS. 1. Introduction PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS HUNTER LEHMANN AND ANDREW PARK Abstract. A graph on n vertices is said to admit a prime labeling if we can label its vertices with the first n natural

More information

Definitions. Notations. Injective, Surjective and Bijective. Divides. Cartesian Product. Relations. Equivalence Relations

Definitions. Notations. Injective, Surjective and Bijective. Divides. Cartesian Product. Relations. Equivalence Relations Page 1 Definitions Tuesday, May 8, 2018 12:23 AM Notations " " means "equals, by definition" the set of all real numbers the set of integers Denote a function from a set to a set by Denote the image of

More information

NUMBER SYSTEMS. Number theory is the study of the integers. We denote the set of integers by Z:

NUMBER SYSTEMS. Number theory is the study of the integers. We denote the set of integers by Z: NUMBER SYSTEMS Number theory is the study of the integers. We denote the set of integers by Z: Z = {..., 3, 2, 1, 0, 1, 2, 3,... }. The integers have two operations defined on them, addition and multiplication,

More information

Glossary. Glossary Hawkes Learning Systems. All rights reserved.

Glossary. Glossary Hawkes Learning Systems. All rights reserved. A Glossary Absolute value The distance a number is from 0 on a number line Acute angle An angle whose measure is between 0 and 90 Acute triangle A triangle in which all three angles are acute Addends The

More information

Glossary. Glossary 981. Hawkes Learning Systems. All rights reserved.

Glossary. Glossary 981. Hawkes Learning Systems. All rights reserved. A Glossary Absolute value The distance a number is from 0 on a number line Acute angle An angle whose measure is between 0 and 90 Addends The numbers being added in an addition problem Addition principle

More information

Gaussian integers. 1 = a 2 + b 2 = c 2 + d 2.

Gaussian integers. 1 = a 2 + b 2 = c 2 + d 2. Gaussian integers 1 Units in Z[i] An element x = a + bi Z[i], a, b Z is a unit if there exists y = c + di Z[i] such that xy = 1. This implies 1 = x 2 y 2 = (a 2 + b 2 )(c 2 + d 2 ) But a 2, b 2, c 2, d

More information

EGMO 2016, Day 1 Solutions. Problem 1. Let n be an odd positive integer, and let x1, x2,..., xn be non-negative real numbers.

EGMO 2016, Day 1 Solutions. Problem 1. Let n be an odd positive integer, and let x1, x2,..., xn be non-negative real numbers. EGMO 2016, Day 1 Solutions Problem 1. Let n be an odd positive integer, and let x1, x2,..., xn be non-negative real numbers. Show that min (x2i + x2i+1 ) max (2xj xj+1 ), j=1,...,n i=1,...,n where xn+1

More information

1. Factorization Divisibility in Z.

1. Factorization Divisibility in Z. 8 J. E. CREMONA 1.1. Divisibility in Z. 1. Factorization Definition 1.1.1. Let a, b Z. Then we say that a divides b and write a b if b = ac for some c Z: a b c Z : b = ac. Alternatively, we may say that

More information

Prime Labeling of Small Trees with Gaussian Integers

Prime Labeling of Small Trees with Gaussian Integers Rose-Hulman Undergraduate Mathematics Journal Volume 17 Issue 1 Article 6 Prime Labeling of Small Trees with Gaussian Integers Hunter Lehmann Seattle University Andrew Park Seattle University Follow this

More information

Honors Algebra 4, MATH 371 Winter 2010 Assignment 3 Due Friday, February 5 at 08:35

Honors Algebra 4, MATH 371 Winter 2010 Assignment 3 Due Friday, February 5 at 08:35 Honors Algebra 4, MATH 371 Winter 2010 Assignment 3 Due Friday, February 5 at 08:35 1. Let R 0 be a commutative ring with 1 and let S R be the subset of nonzero elements which are not zero divisors. (a)

More information

Linear Algebra March 16, 2019

Linear Algebra March 16, 2019 Linear Algebra March 16, 2019 2 Contents 0.1 Notation................................ 4 1 Systems of linear equations, and matrices 5 1.1 Systems of linear equations..................... 5 1.2 Augmented

More information

Theorems. Theorem 1.11: Greatest-Lower-Bound Property. Theorem 1.20: The Archimedean property of. Theorem 1.21: -th Root of Real Numbers

Theorems. Theorem 1.11: Greatest-Lower-Bound Property. Theorem 1.20: The Archimedean property of. Theorem 1.21: -th Root of Real Numbers Page 1 Theorems Wednesday, May 9, 2018 12:53 AM Theorem 1.11: Greatest-Lower-Bound Property Suppose is an ordered set with the least-upper-bound property Suppose, and is bounded below be the set of lower

More information

2 Introduction to Network Theory

2 Introduction to Network Theory Introduction to Network Theory In this section we will introduce some popular families of networks and will investigate how well they allow to support routing.. Basic network topologies The most basic

More information

Berge Trigraphs. Maria Chudnovsky 1 Princeton University, Princeton NJ March 15, 2004; revised December 2, Research Fellow.

Berge Trigraphs. Maria Chudnovsky 1 Princeton University, Princeton NJ March 15, 2004; revised December 2, Research Fellow. Berge Trigraphs Maria Chudnovsky 1 Princeton University, Princeton NJ 08544 March 15, 2004; revised December 2, 2005 1 This research was partially conducted during the period the author served as a Clay

More information

School of Mathematics

School of Mathematics School of Mathematics Programmes in the School of Mathematics Programmes including Mathematics Final Examination Final Examination 06 22498 MSM3P05 Level H Number Theory 06 16214 MSM4P05 Level M Number

More information

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES 2018 57 5. p-adic Numbers 5.1. Motivating examples. We all know that 2 is irrational, so that 2 is not a square in the rational field Q, but that we can

More information

Lecture Notes 1: Vector spaces

Lecture Notes 1: Vector spaces Optimization-based data analysis Fall 2017 Lecture Notes 1: Vector spaces In this chapter we review certain basic concepts of linear algebra, highlighting their application to signal processing. 1 Vector

More information

Notes for Math 290 using Introduction to Mathematical Proofs by Charles E. Roberts, Jr.

Notes for Math 290 using Introduction to Mathematical Proofs by Charles E. Roberts, Jr. Notes for Math 290 using Introduction to Mathematical Proofs by Charles E. Roberts, Jr. Chapter : Logic Topics:. Statements, Negation, and Compound Statements.2 Truth Tables and Logical Equivalences.3

More information

Chapter 8. P-adic numbers. 8.1 Absolute values

Chapter 8. P-adic numbers. 8.1 Absolute values Chapter 8 P-adic numbers Literature: N. Koblitz, p-adic Numbers, p-adic Analysis, and Zeta-Functions, 2nd edition, Graduate Texts in Mathematics 58, Springer Verlag 1984, corrected 2nd printing 1996, Chap.

More information

Partial cubes: structures, characterizations, and constructions

Partial cubes: structures, characterizations, and constructions Partial cubes: structures, characterizations, and constructions Sergei Ovchinnikov San Francisco State University, Mathematics Department, 1600 Holloway Ave., San Francisco, CA 94132 Abstract Partial cubes

More information

RINGS: SUMMARY OF MATERIAL

RINGS: SUMMARY OF MATERIAL RINGS: SUMMARY OF MATERIAL BRIAN OSSERMAN This is a summary of terms used and main results proved in the subject of rings, from Chapters 11-13 of Artin. Definitions not included here may be considered

More information

NOTES ON FINITE FIELDS

NOTES ON FINITE FIELDS NOTES ON FINITE FIELDS AARON LANDESMAN CONTENTS 1. Introduction to finite fields 2 2. Definition and constructions of fields 3 2.1. The definition of a field 3 2.2. Constructing field extensions by adjoining

More information

REVIEW QUESTIONS. Chapter 1: Foundations: Sets, Logic, and Algorithms

REVIEW QUESTIONS. Chapter 1: Foundations: Sets, Logic, and Algorithms REVIEW QUESTIONS Chapter 1: Foundations: Sets, Logic, and Algorithms 1. Why can t a Venn diagram be used to prove a statement about sets? 2. Suppose S is a set with n elements. Explain why the power set

More information

Fundamentals of Pure Mathematics - Problem Sheet

Fundamentals of Pure Mathematics - Problem Sheet Fundamentals of Pure Mathematics - Problem Sheet ( ) = Straightforward but illustrates a basic idea (*) = Harder Note: R, Z denote the real numbers, integers, etc. assumed to be real numbers. In questions

More information

College Algebra with Corequisite Support: Targeted Review

College Algebra with Corequisite Support: Targeted Review College Algebra with Corequisite Support: Targeted Review 978-1-63545-056-9 To learn more about all our offerings Visit Knewtonalta.com Source Author(s) (Text or Video) Title(s) Link (where applicable)

More information

Math Subject GRE Questions

Math Subject GRE Questions Math Subject GRE Questions Calculus and Differential Equations 1. If f() = e e, then [f ()] 2 [f()] 2 equals (a) 4 (b) 4e 2 (c) 2e (d) 2 (e) 2e 2. An integrating factor for the ordinary differential equation

More information

SUMS PROBLEM COMPETITION, 2000

SUMS PROBLEM COMPETITION, 2000 SUMS ROBLEM COMETITION, 2000 SOLUTIONS 1 The result is well known, and called Morley s Theorem Many proofs are known See for example HSM Coxeter, Introduction to Geometry, page 23 2 If the number of vertices,

More information

Chapter 1 : The language of mathematics.

Chapter 1 : The language of mathematics. MAT 200, Logic, Language and Proof, Fall 2015 Summary Chapter 1 : The language of mathematics. Definition. A proposition is a sentence which is either true or false. Truth table for the connective or :

More information

586 Index. vertex, 369 disjoint, 236 pairwise, 272, 395 disjoint sets, 236 disjunction, 33, 36 distributive laws

586 Index. vertex, 369 disjoint, 236 pairwise, 272, 395 disjoint sets, 236 disjunction, 33, 36 distributive laws Index absolute value, 135 141 additive identity, 254 additive inverse, 254 aleph, 465 algebra of sets, 245, 278 antisymmetric relation, 387 arcsine function, 349 arithmetic sequence, 208 arrow diagram,

More information

Gray Codes for Torus and Edge Disjoint Hamiltonian Cycles Λ

Gray Codes for Torus and Edge Disjoint Hamiltonian Cycles Λ Gray Codes for Torus and Edge Disjoint Hamiltonian Cycles Λ Myung M. Bae Scalable POWERparallel Systems, MS/P963, IBM Corp. Poughkeepsie, NY 6 myungbae@us.ibm.com Bella Bose Dept. of Computer Science Oregon

More information

1 First Theme: Sums of Squares

1 First Theme: Sums of Squares I will try to organize the work of this semester around several classical questions. The first is, When is a prime p the sum of two squares? The question was raised by Fermat who gave the correct answer

More information

Irredundant Families of Subcubes

Irredundant Families of Subcubes Irredundant Families of Subcubes David Ellis January 2010 Abstract We consider the problem of finding the maximum possible size of a family of -dimensional subcubes of the n-cube {0, 1} n, none of which

More information

Sydney University Mathematical Society Problems Competition Solutions.

Sydney University Mathematical Society Problems Competition Solutions. Sydney University Mathematical Society Problems Competition 005 Solutions 1 Suppose that we look at the set X n of strings of 0 s and 1 s of length n Given a string ɛ = (ɛ 1,, ɛ n ) X n, we are allowed

More information

Rings and Fields Theorems

Rings and Fields Theorems Rings and Fields Theorems Rajesh Kumar PMATH 334 Intro to Rings and Fields Fall 2009 October 25, 2009 12 Rings and Fields 12.1 Definition Groups and Abelian Groups Let R be a non-empty set. Let + and (multiplication)

More information

ALGEBRA AND NUMBER THEORY II: Solutions 3 (Michaelmas term 2008)

ALGEBRA AND NUMBER THEORY II: Solutions 3 (Michaelmas term 2008) ALGEBRA AND NUMBER THEORY II: Solutions 3 Michaelmas term 28 A A C B B D 61 i If ϕ : R R is the indicated map, then ϕf + g = f + ga = fa + ga = ϕf + ϕg, and ϕfg = f ga = faga = ϕfϕg. ii Clearly g lies

More information

Hybrid Fault diagnosis capability analysis of Hypercubes under the PMC model and MM model

Hybrid Fault diagnosis capability analysis of Hypercubes under the PMC model and MM model Hybrid Fault diagnosis capability analysis of Hypercubes under the PMC model and MM model Qiang Zhu,Lili Li, Sanyang Liu, Xing Zhang arxiv:1709.05588v1 [cs.dc] 17 Sep 017 Abstract System level diagnosis

More information

The Real Number System

The Real Number System MATH 337 The Real Number System Sets of Numbers Dr. Neal, WKU A set S is a well-defined collection of objects, with well-defined meaning that there is a specific description from which we can tell precisely

More information

Parity Dominating Sets in Grid Graphs

Parity Dominating Sets in Grid Graphs Parity Dominating Sets in Grid Graphs John L. Goldwasser and William F. Klostermeyer Dept. of Mathematics West Virginia University Morgantown, WV 26506 Dept. of Computer and Information Sciences University

More information

Algebraic structures I

Algebraic structures I MTH5100 Assignment 1-10 Algebraic structures I For handing in on various dates January March 2011 1 FUNCTIONS. Say which of the following rules successfully define functions, giving reasons. For each one

More information

Definitions, Theorems and Exercises. Abstract Algebra Math 332. Ethan D. Bloch

Definitions, Theorems and Exercises. Abstract Algebra Math 332. Ethan D. Bloch Definitions, Theorems and Exercises Abstract Algebra Math 332 Ethan D. Bloch December 26, 2013 ii Contents 1 Binary Operations 3 1.1 Binary Operations............................... 4 1.2 Isomorphic Binary

More information

Mathematics for Cryptography

Mathematics for Cryptography Mathematics for Cryptography Douglas R. Stinson David R. Cheriton School of Computer Science University of Waterloo Waterloo, Ontario, N2L 3G1, Canada March 15, 2016 1 Groups and Modular Arithmetic 1.1

More information

= How many four-digit numbers between 6000 and 7000 are there for which the thousands digits equal the sum of the other three digits?

= How many four-digit numbers between 6000 and 7000 are there for which the thousands digits equal the sum of the other three digits? March 5, 2007 1. Maya deposited 1000 dollars at 6% interest compounded annually. What is the number of dollars in the account after four years? (A) $1258.47 (B) $1260.18 (C) $1262.48 (D) $1263.76 (E) $1264.87

More information

Pre Algebra. Curriculum (634 topics)

Pre Algebra. Curriculum (634 topics) Pre Algebra This course covers the topics shown below. Students navigate learning paths based on their level of readiness. Institutional users may customize the scope and sequence to meet curricular needs.

More information

THE TRIANGULAR THEOREM OF THE PRIMES : BINARY QUADRATIC FORMS AND PRIMITIVE PYTHAGOREAN TRIPLES

THE TRIANGULAR THEOREM OF THE PRIMES : BINARY QUADRATIC FORMS AND PRIMITIVE PYTHAGOREAN TRIPLES THE TRIANGULAR THEOREM OF THE PRIMES : BINARY QUADRATIC FORMS AND PRIMITIVE PYTHAGOREAN TRIPLES Abstract. This article reports the occurrence of binary quadratic forms in primitive Pythagorean triangles

More information

THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - FALL SESSION ADVANCED ALGEBRA I.

THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - FALL SESSION ADVANCED ALGEBRA I. THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - FALL SESSION 2006 110.401 - ADVANCED ALGEBRA I. Examiner: Professor C. Consani Duration: take home final. No calculators allowed.

More information

QUIVERS AND LATTICES.

QUIVERS AND LATTICES. QUIVERS AND LATTICES. KEVIN MCGERTY We will discuss two classification results in quite different areas which turn out to have the same answer. This note is an slightly expanded version of the talk given

More information

THE GAUSSIAN INTEGERS

THE GAUSSIAN INTEGERS THE GAUSSIAN INTEGERS KEITH CONRAD Since the work of Gauss, number theorists have been interested in analogues of Z where concepts from arithmetic can also be developed. The example we will look at in

More information

ACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms

ACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Part a: You are given a graph G = (V,E) with edge weights w(e) > 0 for e E. You are also given a minimum cost spanning tree (MST) T. For one particular edge

More information

OSTROWSKI S THEOREM FOR Q(i)

OSTROWSKI S THEOREM FOR Q(i) OSTROWSKI S THEOREM FOR Q(i) KEITH CONRAD We will extend Ostrowki s theorem from Q to the quadratic field Q(i). On Q, every nonarchimedean absolute value is equivalent to the p-adic absolute value for

More information

THE MINIMALLY NON-IDEAL BINARY CLUTTERS WITH A TRIANGLE 1. INTRODUCTION

THE MINIMALLY NON-IDEAL BINARY CLUTTERS WITH A TRIANGLE 1. INTRODUCTION THE MINIMALLY NON-IDEAL BINARY CLUTTERS WITH A TRIANGLE AHMAD ABDI AND BERTRAND GUENIN ABSTRACT. It is proved that the lines of the Fano plane and the odd circuits of K 5 constitute the only minimally

More information

1 Fields and vector spaces

1 Fields and vector spaces 1 Fields and vector spaces In this section we revise some algebraic preliminaries and establish notation. 1.1 Division rings and fields A division ring, or skew field, is a structure F with two binary

More information

CHAPTER I. Rings. Definition A ring R is a set with two binary operations, addition + and

CHAPTER I. Rings. Definition A ring R is a set with two binary operations, addition + and CHAPTER I Rings 1.1 Definitions and Examples Definition 1.1.1. A ring R is a set with two binary operations, addition + and multiplication satisfying the following conditions for all a, b, c in R : (i)

More information

1 Take-home exam and final exam study guide

1 Take-home exam and final exam study guide Math 215 - Introduction to Advanced Mathematics Fall 2013 1 Take-home exam and final exam study guide 1.1 Problems The following are some problems, some of which will appear on the final exam. 1.1.1 Number

More information

Two-Dimensional Patterns with Distinct Differences Constructions, Bounds, and Maximal Anticodes

Two-Dimensional Patterns with Distinct Differences Constructions, Bounds, and Maximal Anticodes 1 Two-Dimensional Patterns with Distinct Differences Constructions, Bounds, and Maximal Anticodes Simon R. Blackburn, Tuvi Etzion, Keith M. Martin and Maura B. Paterson Abstract A two-dimensional grid

More information

Part IA Numbers and Sets

Part IA Numbers and Sets Part IA Numbers and Sets Definitions Based on lectures by A. G. Thomason Notes taken by Dexter Chua Michaelmas 2014 These notes are not endorsed by the lecturers, and I have modified them (often significantly)

More information

DS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra.

DS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra. DS-GA 1002 Lecture notes 0 Fall 2016 Linear Algebra These notes provide a review of basic concepts in linear algebra. 1 Vector spaces You are no doubt familiar with vectors in R 2 or R 3, i.e. [ ] 1.1

More information

Granite School District Parent Guides Utah Core State Standards for Mathematics Grades K-6

Granite School District Parent Guides Utah Core State Standards for Mathematics Grades K-6 Granite School District Parent Guides Grades K-6 GSD Parents Guide for Kindergarten The addresses Standards for Mathematical Practice and Standards for Mathematical Content. The standards stress not only

More information

Boolean Algebra CHAPTER 15

Boolean Algebra CHAPTER 15 CHAPTER 15 Boolean Algebra 15.1 INTRODUCTION Both sets and propositions satisfy similar laws, which are listed in Tables 1-1 and 4-1 (in Chapters 1 and 4, respectively). These laws are used to define an

More information

Arithmetic properties of the adjacency matrix of quadriculated disks

Arithmetic properties of the adjacency matrix of quadriculated disks Arithmetic properties of the adjacency matrix of quadriculated disks arxiv:math/00762v2 [mathco] 3 Aug 2003 Nicolau C Saldanha and Carlos Tomei December 22, 203 Abstract Let be a bicolored quadriculated

More information

Chapter 3. Rings. The basic commutative rings in mathematics are the integers Z, the. Examples

Chapter 3. Rings. The basic commutative rings in mathematics are the integers Z, the. Examples Chapter 3 Rings Rings are additive abelian groups with a second operation called multiplication. The connection between the two operations is provided by the distributive law. Assuming the results of Chapter

More information

Chapter 6: The metric space M(G) and normal families

Chapter 6: The metric space M(G) and normal families Chapter 6: The metric space MG) and normal families Course 414, 003 04 March 9, 004 Remark 6.1 For G C open, we recall the notation MG) for the set algebra) of all meromorphic functions on G. We now consider

More information

Discrete Mathematics. Benny George K. September 22, 2011

Discrete Mathematics. Benny George K. September 22, 2011 Discrete Mathematics Benny George K Department of Computer Science and Engineering Indian Institute of Technology Guwahati ben@iitg.ernet.in September 22, 2011 Set Theory Elementary Concepts Let A and

More information

2. Intersection Multiplicities

2. Intersection Multiplicities 2. Intersection Multiplicities 11 2. Intersection Multiplicities Let us start our study of curves by introducing the concept of intersection multiplicity, which will be central throughout these notes.

More information

32 Divisibility Theory in Integral Domains

32 Divisibility Theory in Integral Domains 3 Divisibility Theory in Integral Domains As we have already mentioned, the ring of integers is the prototype of integral domains. There is a divisibility relation on * : an integer b is said to be divisible

More information

MATH Fundamental Concepts of Algebra

MATH Fundamental Concepts of Algebra MATH 4001 Fundamental Concepts of Algebra Instructor: Darci L. Kracht Kent State University April, 015 0 Introduction We will begin our study of mathematics this semester with the familiar notion of even

More information

R1: Sets A set is a collection of objects sets are written using set brackets each object in onset is called an element or member

R1: Sets A set is a collection of objects sets are written using set brackets each object in onset is called an element or member Chapter R Review of basic concepts * R1: Sets A set is a collection of objects sets are written using set brackets each object in onset is called an element or member Ex: Write the set of counting numbers

More information

FACTORIZATION OF IDEALS

FACTORIZATION OF IDEALS FACTORIZATION OF IDEALS 1. General strategy Recall the statement of unique factorization of ideals in Dedekind domains: Theorem 1.1. Let A be a Dedekind domain and I a nonzero ideal of A. Then there are

More information

Boolean Inner-Product Spaces and Boolean Matrices

Boolean Inner-Product Spaces and Boolean Matrices Boolean Inner-Product Spaces and Boolean Matrices Stan Gudder Department of Mathematics, University of Denver, Denver CO 80208 Frédéric Latrémolière Department of Mathematics, University of Denver, Denver

More information

Computations/Applications

Computations/Applications Computations/Applications 1. Find the inverse of x + 1 in the ring F 5 [x]/(x 3 1). Solution: We use the Euclidean Algorithm: x 3 1 (x + 1)(x + 4x + 1) + 3 (x + 1) 3(x + ) + 0. Thus 3 (x 3 1) + (x + 1)(4x

More information

(1) A frac = b : a, b A, b 0. We can define addition and multiplication of fractions as we normally would. a b + c d

(1) A frac = b : a, b A, b 0. We can define addition and multiplication of fractions as we normally would. a b + c d The Algebraic Method 0.1. Integral Domains. Emmy Noether and others quickly realized that the classical algebraic number theory of Dedekind could be abstracted completely. In particular, rings of integers

More information

COMPLEX NUMBERS AND QUADRATIC EQUATIONS

COMPLEX NUMBERS AND QUADRATIC EQUATIONS Chapter 5 COMPLEX NUMBERS AND QUADRATIC EQUATIONS 5. Overview We know that the square of a real number is always non-negative e.g. (4) 6 and ( 4) 6. Therefore, square root of 6 is ± 4. What about the square

More information

Algebra Review. Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor. June 15, 2001

Algebra Review. Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor. June 15, 2001 Algebra Review Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor June 15, 2001 1 Groups Definition 1.1 A semigroup (G, ) is a set G with a binary operation such that: Axiom 1 ( a,

More information

A note on the Isomorphism Problem for Monomial Digraphs

A note on the Isomorphism Problem for Monomial Digraphs A note on the Isomorphism Problem for Monomial Digraphs Aleksandr Kodess Department of Mathematics University of Rhode Island kodess@uri.edu Felix Lazebnik Department of Mathematical Sciences University

More information

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography David R. Wilkins Copyright c David R. Wilkins 2006 Contents 9 Introduction to Number Theory and Cryptography 1 9.1 Subgroups

More information

Packing and Covering Dense Graphs

Packing and Covering Dense Graphs Packing and Covering Dense Graphs Noga Alon Yair Caro Raphael Yuster Abstract Let d be a positive integer. A graph G is called d-divisible if d divides the degree of each vertex of G. G is called nowhere

More information

Number theory (Chapter 4)

Number theory (Chapter 4) EECS 203 Spring 2016 Lecture 10 Page 1 of 8 Number theory (Chapter 4) Review Questions: 1. Does 5 1? Does 1 5? 2. Does (129+63) mod 10 = (129 mod 10)+(63 mod 10)? 3. Does (129+63) mod 10 = ((129 mod 10)+(63

More information

Coloring Vertices and Edges of a Path by Nonempty Subsets of a Set

Coloring Vertices and Edges of a Path by Nonempty Subsets of a Set Coloring Vertices and Edges of a Path by Nonempty Subsets of a Set P.N. Balister E. Győri R.H. Schelp April 28, 28 Abstract A graph G is strongly set colorable if V (G) E(G) can be assigned distinct nonempty

More information

Solving Diophantine Equations With Unique Factorization

Solving Diophantine Equations With Unique Factorization Solving Diophantine Equations With Unique Factorization February 17, 2016 1 Introduction In this note we should how unique factorization in rings like Z[i] and Z[ 2] can be used to find integer solutions

More information

Department of Mathematics, University of California, Berkeley. GRADUATE PRELIMINARY EXAMINATION, Part A Fall Semester 2014

Department of Mathematics, University of California, Berkeley. GRADUATE PRELIMINARY EXAMINATION, Part A Fall Semester 2014 Department of Mathematics, University of California, Berkeley YOUR 1 OR 2 DIGIT EXAM NUMBER GRADUATE PRELIMINARY EXAMINATION, Part A Fall Semester 2014 1. Please write your 1- or 2-digit exam number on

More information

7.2 Applications of Euler s and Fermat s Theorem.

7.2 Applications of Euler s and Fermat s Theorem. 7.2 Applications of Euler s and Fermat s Theorem. i) Finding and using inverses. From Fermat s Little Theorem we see that if p is prime and p a then a p 1 1 mod p, or equivalently a p 2 a 1 mod p. This

More information

Rational Numbers and Exponents

Rational Numbers and Exponents Rational and Exponents Math 7 Topic 4 Math 7 Topic 5 Math 8 - Topic 1 4-2: Adding Integers 4-3: Adding Rational 4-4: Subtracting Integers 4-5: Subtracting Rational 4-6: Distance on a Number Line 5-1: Multiplying

More information

Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography

Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography David R. Wilkins Copyright c David R. Wilkins 2000 2013 Contents 9 Introduction to Number Theory 63 9.1 Subgroups

More information

ax b mod m. has a solution if and only if d b. In this case, there is one solution, call it x 0, to the equation and there are d solutions x m d

ax b mod m. has a solution if and only if d b. In this case, there is one solution, call it x 0, to the equation and there are d solutions x m d 10. Linear congruences In general we are going to be interested in the problem of solving polynomial equations modulo an integer m. Following Gauss, we can work in the ring Z m and find all solutions to

More information

a = a i 2 i a = All such series are automatically convergent with respect to the standard norm, but note that this representation is not unique: i<0

a = a i 2 i a = All such series are automatically convergent with respect to the standard norm, but note that this representation is not unique: i<0 p-adic Numbers K. Sutner v0.4 1 Modular Arithmetic rings integral domains integers gcd, extended Euclidean algorithm factorization modular numbers add Lemma 1.1 (Chinese Remainder Theorem) Let a b. Then

More information

University of Florida CISE department Gator Engineering. Clustering Part 1

University of Florida CISE department Gator Engineering. Clustering Part 1 Clustering Part 1 Dr. Sanjay Ranka Professor Computer and Information Science and Engineering University of Florida, Gainesville What is Cluster Analysis? Finding groups of objects such that the objects

More information

OBJECTIVES UNIT 1. Lesson 1.0

OBJECTIVES UNIT 1. Lesson 1.0 OBJECTIVES UNIT 1 Lesson 1.0 1. Define "set," "element," "finite set," and "infinite set," "empty set," and "null set" and give two examples of each term. 2. Define "subset," "universal set," and "disjoint

More information

SIX PROOFS OF THE INFINITUDE OF PRIMES

SIX PROOFS OF THE INFINITUDE OF PRIMES SIX PROOFS OF THE INFINITUDE OF PRIMES ALDEN MATHIEU 1. Introduction The question of how many primes exist dates back to at least ancient Greece, when Euclid proved the infinitude of primes (circa 300

More information

Conquering Edge Faults in a Butterfly with Automorphisms

Conquering Edge Faults in a Butterfly with Automorphisms International Conference on Theoretical and Mathematical Foundations of Computer Science (TMFCS-0) Conquering Edge Faults in a Butterfly with Automorphisms Meghanad D. Wagh and Khadidja Bendjilali Department

More information

Math 547, Exam 1 Information.

Math 547, Exam 1 Information. Math 547, Exam 1 Information. 2/10/10, LC 303B, 10:10-11:00. Exam 1 will be based on: Sections 5.1, 5.2, 5.3, 9.1; The corresponding assigned homework problems (see http://www.math.sc.edu/ boylan/sccourses/547sp10/547.html)

More information

Finite Fields and Error-Correcting Codes

Finite Fields and Error-Correcting Codes Lecture Notes in Mathematics Finite Fields and Error-Correcting Codes Karl-Gustav Andersson (Lund University) (version 1.013-16 September 2015) Translated from Swedish by Sigmundur Gudmundsson Contents

More information

PRACTICE TEST ANSWER KEY & SCORING GUIDELINES INTEGRATED MATHEMATICS I

PRACTICE TEST ANSWER KEY & SCORING GUIDELINES INTEGRATED MATHEMATICS I Ohio s State Tests PRACTICE TEST ANSWER KEY & SCORING GUIDELINES INTEGRATED MATHEMATICS I Table of Contents Questions 1 29: Content Summary and Answer Key... iii Question 1: Question and Scoring Guidelines...

More information

Math II. Number and Quantity The Real Number System

Math II. Number and Quantity The Real Number System MATHEMATICS Math II The high school mathematics curriculum is designed to develop deep understanding of foundational math ideas. In order to allow time for such understanding, each level focuses on concepts

More information

Introduction to Number Theory

Introduction to Number Theory INTRODUCTION Definition: Natural Numbers, Integers Natural numbers: N={0,1,, }. Integers: Z={0,±1,±, }. Definition: Divisor If a Z can be writeen as a=bc where b, c Z, then we say a is divisible by b or,

More information

Preliminaries and Complexity Theory

Preliminaries and Complexity Theory Preliminaries and Complexity Theory Oleksandr Romanko CAS 746 - Advanced Topics in Combinatorial Optimization McMaster University, January 16, 2006 Introduction Book structure: 2 Part I Linear Algebra

More information

The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials

The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials Ming Li and Dongdai Lin State Key Laboratory of Information Security, Institute of Information Engineering,

More information

arxiv: v2 [math.gr] 17 Dec 2017

arxiv: v2 [math.gr] 17 Dec 2017 The complement of proper power graphs of finite groups T. Anitha, R. Rajkumar arxiv:1601.03683v2 [math.gr] 17 Dec 2017 Department of Mathematics, The Gandhigram Rural Institute Deemed to be University,

More information

E.J. Barbeau. Polynomials. With 36 Illustrations. Springer

E.J. Barbeau. Polynomials. With 36 Illustrations. Springer E.J. Barbeau Polynomials With 36 Illustrations Springer Contents Preface Acknowledgment of Problem Sources vii xiii 1 Fundamentals 1 /l.l The Anatomy of a Polynomial of a Single Variable 1 1.1.5 Multiplication

More information

Properties and Classification of the Wheels of the OLS Polytope.

Properties and Classification of the Wheels of the OLS Polytope. Properties and Classification of the Wheels of the OLS Polytope. G. Appa 1, D. Magos 2, I. Mourtos 1 1 Operational Research Department, London School of Economics. email: {g.appa, j.mourtos}@lse.ac.uk

More information

Number Axioms. P. Danziger. A Group is a set S together with a binary operation (*) on S, denoted a b such that for all a, b. a b S.

Number Axioms. P. Danziger. A Group is a set S together with a binary operation (*) on S, denoted a b such that for all a, b. a b S. Appendix A Number Axioms P. Danziger 1 Number Axioms 1.1 Groups Definition 1 A Group is a set S together with a binary operation (*) on S, denoted a b such that for all a, b and c S 0. (Closure) 1. (Associativity)

More information