A Fast Implementation of the Minimum Degree Algorithm Using Quotient Graphs

Size: px
Start display at page:

Download "A Fast Implementation of the Minimum Degree Algorithm Using Quotient Graphs"

Transcription

1 A Fast Implementation of the Minimum Degree Algorithm Using Quotient Graphs ALAN GEORGE University of Waterloo and JOSEPH W. H. LIU Systems Dimensions Ltd. This paper describes a very fast implementation of the m~n~mum degree algorithm, which is an effective heuristm scheme for fmding low-fill ordermgs for sparse positive definite matrices. This implementation has two important features: first, in terms of speed, it is competitive with other unplementations known to the authors, and, second, its storage requirements are independent of the amount of fill suffered by the matrix during its symbolic factorization. Some numerical experiments which compare the performance of this new scheme to some existing minimum degree programs are provided. Key Words and Phrases: sparse linear equations, quotient graphs, ordering algoritl~ms, graph algorithms, mathematical software CR Categories: 4.0, INTRODUCTION Consider the symmetric positive definite system of linear equations Ax = b, (1.1) where A is N by N and sparse. It is well known that ifa is factored by Cholesky's method, it normally suffers some fill-in. Thus, if we intend to solve eq. (1.1) by this method, it is usual first to find a permutation matrix P and solve the reordered system (papt)(px) = Pb, (1.2) where P is chosen such that PAP T suffers low fill-in when it is factored into LL T. There are four distinct and independent phases that can be identified in the entire computational process: Permmsion to copy without fee all or part of this material m granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying ts by permission of the Association for Computing Machinery. To copy otherwise, or to repubhsh, requires a fee and/or specific permission. Thin research was supported in part by the Canadian Natural Sciences and Engineering Research Council under Grant A Authors' addresses: A. George, Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada, N2L 3G1; J. W. H. Liu, Systems Dimensions Ltd., 111 Avenue Road, Toronto, Ontario, Canada ACM /80/ $0.75 ACM Transactions on Mathematical Software, Vol 6, No. 3, September 1980, Pages

2 338 Alan George and Joseph W. H. Liu (a) finding an appropriate ordering P, (b) storage allocation for the factor L of PAP T, (c) numerical factorization of PAP T into LL T, and (d) triangular solution of (LL T) (Px) ffi Pb. In this paper we study the efficient implementation of the ordering in step (a). A heuristic algorithm which experience suggests is very effective in finding such low-fill permutations is the so-called minimum degree algorithm [8]. This requires some form of simulation of the factorization (either explicit or implicit), since ordering decisions are made on the basis of the structure of the partially factored (reduced) matrices which normally appear in the usual implementation of Gaussian elimination. Specifically, at each step in the elimination the algorithm permutes the part of the matrix remaining to be factored, so that a column with the fewest nonzeros is in the pivot position. Some previous implementations known to the authors store an explicit representation of the partially factored matrix. The best implementation using this approach that we are aware of is contained in the initial version of the Yale Sparse Matrix Package [2] (it has since been replaced by an improved implementation). In the sequel we shall refer to this code as MDE (minimum degree explicit). Implementations of this type require quite flexible data structures, since the matrix structure changes as the (symbolic) factorization proceeds, and the data structures must accommodate these changes. A more serious practical difficulty with using an explicit representation is that the maximum storage requirement is unpredictable and may exceed the storage required for the resulting factor L. In a recent paper the authors described a "minimal storage" implementation of the minimum degree algorithm [5]. The implementation requires only a few arrays of length N in addition to that needed for the graph of A. Furthermore, the graph of A is preserved during execution of the algorithm. In the sequel we denote this implementation by MDI (minimum degree implicit). Although MDI has obvious advantages in terms of storage when compared with MDE, the comparisons of execution times have been mixed. As the experiments in Section 5 show, for some problems the execution time of MDI is comparable to or even better than that of MDE, but for others the penalty paid by MDI for low storage requirements can be a substantial increase in execution time over that of MDE. The implementation we describe in this paper is endowed with most of the advantages of both MDE and MDI. Its storage requirement is comparable to that of MDI, and for some problems its execution time is substantially lower than that of either MDE or MDI. Its single disadvantage, shared by MDE and absent in MDI, is that the original graph of A is destroyed. Thus, if the graph of A is to be preserved for future use, a copy of it must be made before the algorithm is executed. Our algorithm makes heavy use of the notion of reachable sets described in [5] and also relies upon an efficient implementation of the quotient graph model of symmetric factorization, introduced and analyzed in [6]. We briefly review these topics in Sections 2 and 3.1, respectively, but for more details the reader is referred to the references cited. Since the algorithm is based on quotient graphs, ACM Transactmns on Mathematmal Software, VoL 6, No 3, September 1980

3 Fast Implementation of the Minimum Degree Algorfll~m 339 we will refer to our implementation of the minimum degree algorithm as MDQ (minimum degree quotient). We pointed out earlier that ordering the equations is only one of the four main phases in the overall solution. It is well recognized that theoretically the major cost of the entire process, both in terms of storage and execution time, is in the numerical factorization and solution steps. However, our study here to improve the implementation of the minimum degree algorithm is still justified for the following reasons. 1. Practical experiments show that the minimum degree ordering for linear systems with 1000 to 2000 variables typically takes 25 to 50 percent of the overall execution time. 2. Since the four phases of the process are independent and thus can be executed separately, a reduction in the storage requirement in the ordering step is important. For the same reason, a predictable storage requirement for ordering is also a practical advantage. 3. We are describing a more efficient implementation of an existing, widely used ordering algorithm. 2. PRELIMINARIES ON MODELS OF SYMMETRIC FACTORIZATION As pointed out in the introduction, the minimum degree algorithm requires some form of simulation of the factorization process. In this section we discuss the various ways in which this process can be simulated. The approach is graphtheoretical, and the reader is assumed to be familiar with standard graph-theory notions and terminology, reference to which can be found in [1]. In subsequent sections various graph-theory notions are applied to different graphs. When the graph under consideration is not clear from the context, we add the appropriate subscript to the definition. Thus the notation AdjG(y) is used to denote the adjacent set of the node y in the graph G. 2.1 Elimination Graph Model In this section we describe the graph-theory approach to symmetric elimination as given by Patter [7] and Rose [8]. Let A be an N N symmetric matrix. The labeled undirected graph of A, denoted by G A = {X A, EA), is one for which the node set X a is defined as X A ffi {xl, x2,..., XN} and (x,, xj} ~ E A if and only ifa,j ~ 0. Note that there is an implicit labeling on the node set X A. For any N N permutation matrix P, the unlabeled graphs of A and PAP T are the same, but the associated labelings differ. Thus the graph structure of A is a convenient vehicle for studying the permutations for A, since no particular ordering is implied by the graph. Now consider the symmetric factorization of A into LL T. The sparsity changes (fill-in) can be modeled by a sequence of graph transformations on G A. Let G = (X, E ) be a graph, and y ~ X. The elimination graph of G by y, denoted by Gy, is the graph obtained from G by deleting y and its incident edges and then adding ACM Transactions on Mathematmal Software, VoL 6, No. 3, September 1980

4 340 Alan George and Joseph W. H. Liu edges to the remaining graph, so that the set Adj(y) is a clique. This recipe is due to Patter [7]. With this definition the process of symmetric elimination on A can be modeled as a sequence of elimination graphs Go, G1, G~,... GN-1, where Go = (Xo, Eo) = G A, G, = (G,-Dx, = (X,, E,), i ffi 1, 2,..., N - 1. Here X, ffi {x,+l, x,+2,..., XN}, and it is straightforward to verify that G,- G H' where H, is the part of the matrix remaining to be factored after step i of the factorization has been completed. Thus, this model is quite explicit; the structure of G~ corresponds directly to the matrix H, Reachable-Set Characterization A useful notion in the study of symmetric factorization in sparse linear systems is the reachable set [5]. It can be used to model the factorization process in terms of the original graph structure. Let G = (X, E) be a given undirected graph. Consider a subset S C X and a node y ~ S. A node x is said to be reachable from the node y through S if there exists a path (y, sl..., st, x) such that s, E S for 1 _< i ~ t. Since t can be zero, any node in Adj(y) - S is reachable from y through S. The reachable set ofy through S is then defined as Reach(y, S) ffi {x ~X- Slx is reachable from y through S}. The reachable set notion can be used to characterize the adjacency structure of elimination graphs. Let G A -~ (X A, E A) be the graph of A, with X A ffi {Xl, x2,..., XN}. Let Go, G1... GN-I be the sequence of elimination graphs as defined by the nodes xl, x2... XN. Define S, = {Xl..., x, } for i = 1... N with So = O. The following result relates the structures of the elimination graph G, and the original graph G A through reachable sets. It is essentially a restatement of Lemma 4 in [9], which was discovered independently by the authors in [5]. THEOREM 2.1 [5, 9]. Let y be a node in the elimination graph G, = (X,, E,). The set of nodes adjacent to y in the graph G, is given by ReachGA ( y, S, ). The result means that the elimination process can be modeled by the subsets S, and the Reach operator on the original graph G A, since they represent implicitly the sequence of elimination graphs. 2.3 Quotient Graph Model In [6] the authors have introduced the quotient graph model for the study of the Gaussian elimination process. Its primary advantage is that it lends itself to very efficient computer implementation in simulating the factorization. We now introduce notations and d~finitions for the model. ACM Transactions on Mathematical Software, Vol. 6, No 3, September 1980.

5 Fast Implementation of the Minimum Degree'AlgOri~.34t ) Groph G ( ) Ouotient 9raph G/,~ Fig. 1. A quotient graph. Let G = (X, E) be a graph with X the set of nodes and E the set of edges. For a subset S C X, G(S) will be used to refer to the subgraph (S, E(S)) of G, where E(S) = ( (u, v} e EI u, v e S}. The central notion in the new model is that of a quotient graph [3]. Let ~ be a partitioning of the node set X: ~= { Yl, Y2... Yp}. That is, U~=~ Yk = X and Y, gl Yj ffi ~ for i ~ j. The quotient graph of G with respect to ~is defined to be the graph (~, 8), where { Y~, Yj} E gif and only if Y, A Adj(Yj) # ~. This graph will be denoted by G/~. Consider the graph in Figure 1. If~= {{a, b, c}, {d, e}, {f}, (g,h, i}} is the partitioning, the quotient graph G/~is given as shown. A double circle is used to denote members with more than one node. An important type of partitioning is that defined by connected components. Let S be a subset of the node set X. The component partitioning W(S) of S is defined as ~ (S) = {Y C SI G(Y) is a connected component in the subgraph G(S)}. A closely related type of component partitioning turns out to be relevant in the modeling of Gaussian elimination. The partitioning on X induced by S is defined to be -- u {{x} Ix s}. That is, the partitioning ~(S) consists of the component partitioning of S and the remaining nodes of the graph G. Consider the graph in Figure 1. Let S be the subset {a, b, d, f, h}. The component partitioning cd(s) is given by cd(s) - {{a, b}, {d, f}, {h}}, so that -~(S) has seven members, and the quotient graph G/-~(S) is given in Figure 2. Here crosshatched nodes are used to indicate partition members in ~d(s); recall that double circles denote members with more than one node. We now study the relevance of quotient graphs in symmetric factorization. Consider the factorization of a matrix A into LL w. As described in Section 2.1, the process may be interpreted as a sequence of elimination graphs Go, G1... GN-1, ACM Transactmns on Mathematmal Software, Vol. 6, No. 3, September 1980.

6 342 Alan George and Joseph W. H. Liu ) )---@ ) Fig. 2. The induced quotient graph G/~ {S). where G, precisely reflects the structure of the matrix remaining to be factored after the ith step of the Gaussian elimination. Alternatively, the process can also be represented as a sequence of quotient graphs, which may be regarded as implicit representations of the elimination graphs {G,}. Let {xl, x2,..., XN} be the sequence of node elimination in the graph G -- G A. As in Section2.2, let S, ffi {xl..., x,} for 1 _ i - N and So ffi O. Consider the partitioning ~(S,) induced by S, and the corresponding quotient graph G/~(S,) -- (~(S,), ~). We shall denote this quotient graph by if,. In this way we obtain a sequence of quotient graphs ~1, ~2,..., ~N. The following result shows that, indeed, the quotient graph if, --- G/Cd (S,) can be regarded as an implicit representation of the elimination graph G,. TH~OR~.M 2.2. For y ~ S, Reach~,({y), ~(S,)) ffi {{x} Ix E ReachG(y, S,)). PROOF. Consider x E ReachG(y, S,). If x and y are adjacent in G, so are {x) and {y} in if,. Otherwise, there exists a path y, s~..., st, x in G where {sl,..., st) C S,. Let C be the component in G(S,) containing {s~,..., st}. Then we have a path { y}, C, {x} in if, so that {x} E Reach~,({y}, ~(S,)). Conversely, consider any (x} E Reach ~.~,(( y}, cd(s,)). There exists a path {y}, C~,..., C,, {x} in if, where each Cj E ~(S,). If t = 0, then x and y are adjacent in the original graph G. If t > 0, by the definition of ~ (S,), t cannot be greater than 1; that is, the path must be (y}, c, (x}. Since G(C) is a connected subgraph, we can obtain a path from y to x through C C S, in the graph G. Hence ACM Transactions on Mathematical Software, Vol 6, No 3, September 1980 x ~ ReachG(y, S,). []

7 Fast Implementation of the Minimum Degi'ee Algofithrn "~ ~ ~ Q ~ ~2 < O-o ~3 <.) ~5 ~6 ~8 Fig. 3. A sequence of quotient graphs. Figure 3 contains an example of a quotient graph sequence. Partition members in ~f(s,) are crosshatched for clarity. As a theoretical tool for studying and understanding the symmetric factorization, the use of quotient graphs does not appear to be better than the elimination graphs or the reachable-set notion. However, the new model can be implemented very efficiently in terms of both time and space. In what follows we show that it can be implemented in place. ACM Transactions on Mathematical Software, Vol. 6, No. 3, September 1980.

8 344 Alan George and Joseph W. H. Liu LEMMA 2.3. Let G ffi (X, E) be a given graph, and let S C X, where G(S) is a connected subgraph. Then xes lady(x) I >- lady(s) [ + 2( J S] - 1). PROOF. Let G(S) ffi is, E(S)) and let V ffi {{u, v} E EI u ~ S, v ~ X - S}. Counting the edges incident to nodes in S, we have Y. I Adj(x)l = 2IE(S)[ + I vl. x~s Obviously J VJ -> J Adj(S)l, and since G(S) is connected, we have ] E(S) I >- [ S [ - 1. By using these inequalities in the equation above we prove the lemma. [] We now show that the edge set sizes of the quotient graphs N, cannot increase with increasing i. Let x~, x2... XN be the node sequence, let G,f(X,E,), O<_t<_N, be the corresponding elimination graph sequence, and let N, -- (<d(s,), ~), 1 <_ i < N, be the corresponding quotient graph sequence. THEOREM 2.4 For 1 <_ i <_ N, PROOF. I~(S,+,)l -< I O(S,)l and ]8,+~ I -- I ~, I. Since <d (S,) is the set of components in the subgraph G(S,), we have However, [ ~(S,)[ = I ~(St)l + e I ~(s,,)l - I ~(S,)l i, so that I -~(s, l)l -- I ~(s,+,)l + N - i I v(s,)] + N - i = I ~(S,)l. For the inequality on the edge size, consider (d(s,+~). If {x,+~} E ~d(s,+~), clearly [ 8,+1 [ = [ ~, 1. Otherwise, the node x,+~ is merged with some components in ~d(s,) to form a new component in <d(s,+l). But then Lemma 2.3 applies, so that [ 8,+~ [ < [ 8, [. Hence, in all cases I s,,l <_ le, I. [] The next theorem illustrates the advantage of the quotient graph model over the elimination graph model and is one of the primary motivations for our use of the model. THEOREM 2.5 max 18,1 <_ [E I <_ max [E, I. l<_t<--n O~_t<_N ACM 'transactions on Mathematical Soitware, Vol 6, No 3, September 1980

9 Fast Implementation of the M~nimum Degree-,~lgorithnl *' 345 PROOF. The first inequality follows from Theorem 2.4, arid the fac~ that ] Eol -- I E I implies the second one. [] The advantage of the quotient graph model over the reachable-set approach is, in fact, implicit in the proof of Theorem 2.2. To determine the set ReachG(y, SJ, paths emanating from the node y through the subset S~ have to be traced. These paths can be of arbitrary lengths (less than N), and many may be traversed unnecessarily. For example, in the graph of Figure 3, to find ReaehG(xT, $6), the three paths, (x7, xl, xs), (XT, x,, x~, x~), (X?, X4, X3, XS), of which the last one is unnecessary, have to be examined. However, the determination of Reach~,({y}, E(S,)) in the quotient graph involves paths of length at most two (see proof of Theorem 2.2). Indeed, the time required is usually proportional to the size IReach~, ((y}, ~d(s,)) I. 3. DESCRIPTION OF THE MINIMUM DEGREE ALGORITHM 3.1 Using Elimination Graphs The minimum degree algorithm is probably the most widely used heuristic algorithm for finding low-fill orderings. In terms of elimination graphs,'it can be described as follows. Let Go = (X, E) be an unlabeled graph. Step I (Initialization). Set i ( Step 2 (Minimum-degree selection). In the elimination graph G~-I choose x, to be a node such that [ Adja,_~(x,) I = min~ex,_~ [ Adjc,_~(x)[ where G,-x = (X~-l, E,-]). Step 3 (Graph transformation). Form the new elimination graph G, (G,-a)x. Step 4 (Loop or stop), i ~-- i + 1. If i > I X l, stop. Otherwise go to step 2. In effect, the algorithm orders a given graph by selecting nodes of minimum degree from elimination graphs (hence its name). The formation of the elimination graph in step 3 is necessary to facilitate the selection of the next node to be ordered. Different versions of the algorithm can be formulated for different ways of computing degrees of nodes in the elimination graph. An extremely good implementation of this formulation can be found in the Yale Sparse Matrix Package [2]. The sequence of elimination graphs is represented explicitly in a linked list structure. Interested readers are referred to the report for details. 3.2 Using Reachable Sets Theorem 2.2 relates the adjacency structure of the elimination graph to that of the original graph. With this simple connection, the minimum degree algorithm can be restated in terms of reachable sets. : - ACM Transactions on MathemaUcal Software, VOL 6, No. 3, September 1980.

10 346 Alan George and Joseph W. H. Llu Step I (Initialization). S (-- 0. Step 2 (Selection). Pick a node y ~ X - S such that Number the node y next. I Reach(y, S) I = minxex-slreach(x, S)l. Step 3 (Implicit transformation). Set S (-- S O (y). Step 4 (Loop or stop). If S -- X, stop. Otherwise go to step 2. It should be noted that in the actual implementation the numbers I Reach(x, S) I for x E X - S should be stored to avoid recomputation. This means, in the implicit transformation step, some of these numbers have to be updated to reflect the change in the subset S. The following result is quoted from [5]. THEOREM 3.1. For u ~ X - S, if u ~ Reach(y, S). Reach(u, S U (y}) = Reach(u, S) This result justifies keeping the numbers I Reach(x, S)I, since many of them remain unchanged after the node y is numbered. Indeed, the numbering of node y only affects the degrees of the nodes in Reach(y, S). We have implemented this approach with some refinements, to speed up the execution of the algorithm [5]. The main advantage of this implementation is its small and predictable storage requirements. Moreover, it preserves the adjacency structure of the given graph. 3.3 Using Quotient Graphs The selection step in the minimum degree algorithm depends on the degrees of the nodes in the elimination graph. The reformulation of the algorithm m Section 3.2 makes use of the connection between the degree of a node in the elimination graph and the reachable set. In view of Theorem 2.2, we can describe the algorithm in terms of quotient graphs. Step 1 (Initialization). Set S ~-- Q, (~ -- G/C# (~). Step 2 (Selection). Pick a node y ~ X - S such that I Reach~ ((y), cd(s)) I = minxex-s I Reach,,,,((x}, cd(s)) I. Number the node y next. Step 3 (Quotient graph transformation). S (--- S U {y}, and put ff (-- G/~(S). Step 4 {Loop or stop). If S -- X, stop. Otherwise go to step 2. Basically, there is not much difference in the formulation of the algorithm in terms of reachable sets and quotient graphs. They both employ the notion of reachable sets, one on the original graph and the other on quotient graphs. Their major difference lies in their implementation. The important features of the quotient graph implementation are described in Section An Enhancement In [5] we have discussed various enhancements in the implementation of the algorithm by the reachable-set approach. For this section we describe one of ACM Transactions on Mathematical Software, Vol 6, No 3, September 1980

11 Fast Implementation of the Mintmum Degree Algodti'att ~'" 347 -:) Fig. 4. A graph example showing indistinguishable nodes. those enhancements in different terminologies; it is also applicable in the quotient graph approach. We begin by introducing an equivalence relation. Consider a stage in the elimination process, where S is the set of eliminated nodes. Two nodes x, y ~ X - S are said to be indtstinguishable with respect to elimination 1 if Reach(x, S) U (x} = Reach(y, S) U (y). Consider the graph in Figure 4. The subset S contains 36 shaded nodes. (This is an actual stage that occurs when the minimum degree algorithm is applied to this graph.) We note that the nodes a, b, and c are indistinguishable with respect to elimination, since Reach(a, S) U (a}, Reach(b, S) U (b}, and Reach(c, S) U (c) are all equal to (a,b,c,d,e,f,g,h,j,k). Two more groups can be identified as indistinguishable. They axe (j,k} and (f,g). We now study the implication of this equivalence relation and its role in the minimum degree algorithm. As we shall see later, this notion can be used to speed up the execution of the minimum degree algorithm. Tnv, orv, M 3.2. Let x, y ~ X - S. If then, for all X - (x, y} 3 T D S, Reach(x, S) U (x} = Reach(y, S) U (y}, Reach(x, T) U {x) = Reach(y, T) U (y). PROOF. Obviously, x ~ Reach(y, S) C Reach(y, T) U T, so that x Reach (y, T) because x ~ T. We now want to show that Reach(x, T) C Reach(y, Henceforth ~t should be understood that nodes referred to as "mdistingmshable" are indistinguishable wtth respect to ehmmatton. ACM Transactmns on Mathematwal Software, Vol. 6, No. 3, September 1980.

12 348 Alan George and Joseph W. H. Llu T) U (y}. Consider z ~ Reach(x, T). There exists a path (x, sl,..., st, z) where (sl,..., st} C T. If all s, E S, there is nothing to prove. Otherwise, let s, be the Krst node in (sl... st} not in S; that is, s, E Reach(x, S) N T. This implies s, ~ Reach(y, S) and hence z ~ Reach(y, T). Together, we have Reach(x, T) U (x} C Reach(y, T) U {y}. The inclusion in the other direction can be proved in the same way by exchanging the roles of x and y. [] COROLLARY 3.3. Then for T D S, Let x, y be indistinguishable with respect to the subset S. I Reach(x, T)I--]Reach(y, T)I. In other words, if two nodes become indistinguishable at some stage of the elimination, they remain indistinguishable until one of them is ehminated. Moreover, the following theorem shows that they can be eliminated together in the minimum degree algorithm. THEOREM 3.4. If two nodes become indistinguishable at some stage in the minimum degree algorithm, then they can be eliminated together in the algorithm. PROOF. Let x, y be indistinguishable after the elimination of the subset S. Assume that x becomes a node of minimum degree after the set T 2 S has been eliminated; that is, Then, by Corollary 3.3, I Reach(x, T)I -< I Reach(z, T)I for all z ~ X - T. Therefore, for all z ~ X - it U {x}), ]Reach(y, T U {x})l -- I Reach(y, T) - (x}l ffi I Reach(y, T)I I Reach(x, T)I - 1. I Reach(y, T U {x}) I <_]Reach(z, T)I - 1 _< ]Reach(z, T U {x}) I. In other words, after the elimination of the node x, the node y becomes a node of minimum degree. [] These observations can be exploited in the implementation of the minimum degree algorithm. After carrying out a minimum degree search to determine the next node y ~ X - S to eliminate, we can number immediately after y the set of nodes indistinguishable from y. In addition, in the degree update step, by virtue of Corollary 3.3, work can be ACM Transactions on Mathematmal Software, Vol 6, No 3, September 1980

13 Fast Implementation of the Minimum Degree Algo(ttt~. 34,.~ Fig. 5. Indistinguishable nodes in two stages of elimination for the example in Figure 4 reduced, since indistinguishable nodes have the same degree in the elimination graphs. Once nodes are identified as being indistinguishable, they can be "glued" together and treated as a single supernode thereafter. For example, Figure 5 shows two stages in the eliminations, where supernodes are formed from indistinguishable nodes. For simplicity, the eliminated nodes are not shown. After the elimination of the indistinguishable set (a, b, c}, all the nodes have identical reachable sets so that they can be merged into one. 4. THE ALGORITHM AND SOME DETAILS ABOUT ITS IMPLEMENTATION 4.1 The Algorithm In view of the discussion in Section 3, the notion of indis.tinguishable nodes can be incorporated into the implementation of the minimum degree algorithm. Nodes identified as indistinguishable are merged together to form a supernode. They will be treated essentially as one node in the remainder of the algorithm. They share the same adjacent set, have the same degree, and can be eliminated together in the algorithm. In the implementation this supernode will be referenced by a representative of the set. Moreover, the determination of reachable sets for degree update can be done via the quotient graph model to improve the overall efficiency. In effect, eliminated connected nodes are merged together, and the computer representation of the sequence of quotient graphs is utilized. It should be emphasized that the idea of quotient (or merging nodes into supernodes) is applied here in two different contexts: (a) eliminated connected nodes, to facilitate the determination of reachable sets, and (b) uneliminated indistinguishable nodes, to speed up elimination. This is illustrated in Figure 6. It shows how the graph of Figure 4 is stored conceptually in this implementation by the two forms of quotient. The crosshatched double-circled nodes denote supernodes that have been eliminated, while blank double-circled supernodes represent those formed from indistinguishable nodes. The overall enhanced algorithm may be stated as follows: Step I (Initialization). Set S *- ~, f~ -- G/~(~). Step 2 (Selection). Pick a node y ~ X - S such that I Reach~{{y), ~(S)) I = ~emi~nsl Reach~({x}, ~(S))I. ACM Transactions on Mathematical Software, Vol. 6, No. 3, September 1980

14 350 Alan George and Joseph W. H. Llu ( Fig. 6. A quotient graph formed from two types of supernodes. Step 3 (Elimination). Number the nodes in Y, which contains the node y and all those that have been identified as indistinguishable from y. Step 4 (Degree update). Let U ffi {u[ {u} E Reach~({y}, ~(S))} - Y. Compute the new degrees of the nodes in U and identify indistinguishable nodes in this set. Step 5 (Quotient graph transformation). S ~-- S U Y and set ~ ~-- G/~ (S). Step 6 (Loop or stop). If S ffi X, stop. Otherwise go to step 2. In what follows we describe some essential details about the computer implementation Computer Representation of Quotient Graphs A graph is completely determined by its adjacency structure, that is, the set of adjacency lists for every node in the graph. We represent such a structure by storing the adjacency lists sequentially in a one-dimensional array along with an index array of length N containing pointers to the beginning of each adjacency list in the storage array. An example is shown in Figure 7, where the lists are separated for illustrative purposes. Given a graph G ffi (X, E) and a subset S, how can we represent the quotient graph ffi G/~(S), using the space provided by the adjacency structure of the original graph? Consider a connected component Y in the subgraph G(S). By Lemma 2.3 we have yey IAdj(y) [ - IAdj(Y) I + 2(I YI - 1), ACM Transactions on Mathematical Software, Vol 6, No 3, September 1980

15 Fast Implementation of the Minimum Degree Algorithm 351 2' I-6"! 3 : FT'-l-~l 4: "l 5 : I-I-I 6 : r~-l-~ 7 : I-T-T~ 8: : I-6-1 Fig. 7. A graph and its representation. i. FTI~ 5'7~ s : I-~"[~-I Fig. 8 ;' : Ci"]'3-1 8: : I-F1 A quotient graph representation. or [Adj(Y)[-- Y, [Adj(y)[-2([Y[- 1). yey Therefore, there are always enough locations for Adj(Y) from those for Adj(y), y E Y. Moreover, for Y ~ O there is always a surplus of 2([ Y [ - 1) locations which can be utilized for links or pointers. In the graph example in Figure 8, let the subset S -- (1, 2, 3, 4, 5}. Figure 8 shows the way the quotient graph ~ = G/~d(S) is stored. The components in G(S) are given by ~(S) -- ((1, 5}, (2), {3, 4}). Consider finding the adjacent set of the component {3, 4} in the quotient graph representation. It can be retrieved by first exhausting the current list for node 3; the link to node 4 then gives the remaining neighbors of the component. Another point that is worth noting in the example is the use of representatives for component members. The components (1, 5) and {3, 4} are now represented by the nodes 1 and 3, respectively. In other words, the nodes 5 and 4 will be ACM Transactmns on Mathematmal Software, Vol. 6, No. 3, September 1980.

16 352 Alan George and Joseph W. H. Liu ignored in future processing, although the storage for their original adjacent lists may be used for the quotient graph representation. 4.3 Determination of Reachable Sets The determination of reachable sets in the quotient graph ~ = G/~(S) is straightforward. For a given node y ~ X - S, the following algorithm returns the set Reach~({ y}, cd(s)). Step 1 (Initialization). R (---. Step 2 (Find reachable nodes) For K ~ Adj~((y)) if K ~ ~(S) then R (-- R U Adj.(K) else R (-- R U K. Step 3 (Exit). The reachable set is given in R. In step 2 reachable nodes are obtained via paths of length of at most two. This is possible because connected eliminated nodes have been coalesced in the quotient graph. 4.4 Identification of Indistinguishable Nodes In general, to identify indistinguishable nodes via the definition in Section 3.4 is time-consuming. Since the enhancement does not require the merging of all possible indistinguishable nodes, we look for some simple and easily implemented condition. In what follows a condition is presented which experience has shown to be very effective. In most cases it identifies all indistinguishable nodes. Let G =- (X, E) and S be the set of eliminated nodes. Let K1 and K2 be two connected components in the subgraph G(S); that is, LEMMA 4.1. K1, K2 ~ ~(S). Let R1 =- Adj(KI) and R2 = Adj(K2). If y ~ RIO Rs and then Reach(y, S) U (y} -- R1 U Rs. Adj(y) C RIO R2 U K~ U K2, PROOF. Let x ~ R1 U Rs. Assume x ~ R~ -- Adj(K1). Since K1 is a connected component in G(S), we can find a path from y to x through K1 C S. Therefore, x ~ Reach(y, S) U {y}. On the other hand, y ~ R~ U R2 by definition. Moreover, if x E Reach(y, S), there exists a path from y to x through S: y, Sl, ss,..., st, X. If t , then x ~ Adj (y) - S C R1 U Rs. Otherwise, if t > 0, s~ ~ Adj (y) n S c/ 1 o K2. This means that (Sl... st} is a subset of either K~ or Ks, so that x ~ R~ U Rs. Hence Reach(y, S) U (y} C R1 U R2. [] TH~.OREM 4.2. Let K1, Ks and R~, Re be as in Lemma 4.1. Then the nodes in Y = ( y ~ RI n R21Adj(y) c R1 0 Rs U KI O Ks } are indistinguishable with respect to the eliminated subset S (see Figure 9). ACM Transactions on Mathematical Software, Vol 6, No 3, September 1980

17 Fast Implementation of the Minimum Degree Algorithm Fig. 9. Indistinguishable nodes m Y. The proof follows directly from Lemma 4.1 and is omitted. COROLLARY 4.3. For y E Y, I Reach(y, S) [ = I R1 U R21-1. Theorem 4.2 can be used to merge indistinguishable nodes in the intersection of the two reachable sets R1 and R2. The test can be simply done by inspecting the adjacent set of nodes in the intersection R1 3 R2. The results of Theorem 4.2 and Corollary 4.3 can be applied to the degree update step of the minimum degree algorithm. We may take the set U = {u[ {u} E Reach~((y}, ~(S))} - Y in the algorithm as the set R1 in Theorem 4.2. By considering each neighboring eliminated component as Ke,.we can identify the indistinguishable nodes in U. 4.5 Quotient Graph Transformation In the minimum degree algorithm the selection of node y puts it into the subset S, so it is necessary to do the transformation ~#,-1 -- G/~(S) --~ G/~(S U {y}) -- 9~,. The following algorithm performs this transformation. Step I (Preparation). Determine the sets T = Adj~,_i((y}) N ~d(s), R = Reach~,_,({y}, ~(S)). Step 2 (Form new supernode and partitioning). Form Step 3 (Update adjacency) K={y}UT, ~d(s U (y}) = (~(S) - T) U (K}. Adj~,(K) = R. For {x} ~ R, Adj~,({x}) -- {K} U Adj~,_l({y}) - (T U {y}). ACM Transactions on Mathematical Software, Vol. 6, No. 3, September 1980.

18 354 Alan George and Joseph W. H. Liu I GENQMD 1 f' Fig. 10. Control relationship among the subroutines which Lrnplement the minh'num degree algorithm. 4.6 Some Implementation Details In this section we describe the basic features of the Fortran implementation of the algorithm described in Section 4.1. The implementation consists of a set of five subroutines, whose control relationship is shown in Figure 10. In step 1, f# = G, and the explicit representation of G is provided by means of a pair of arrays, as described in Section 4.2. The sequence of quotient graphs generated by the algorithm is represented in the same arrays, using the linking procedure also described in Section 4.2. Step 2 of the algorithm is facilitated by storing the current degrees of the nodes in the elimination graphs (implicitly represented) in an array DEG. Step 3 consists of updating the output permutation for those nodes y E Y which form the supernode being eliminated. Step 4 of the algorithm involves the most work and is implemented by QMDUPD. First the reachable set of the node or supernode that has been selected in step 3 is determined, using QMDRCH. This subroutine implements the algorithm of Section 4.3 and as a by-product also supplies the set of eliminated supernodes adjacent to the node being eliminated. Then the groups of indistinguishable nodes in this reachable set are identified using the results of Section 4.4. The sets are identified and merged into supernodes using the subroutine QMDMRG, and their degrees are updated. (Nodes not identified as supernodes have their degrees computed by QMDRCH.) Finally, step 5 is accomplished using the algorithm of Section 4.5, which is implemented by the subroutine QMDQT. Note that Figure 6 shows how the adjacency structure of f# appears after several quotient graph updates. In the representation of the sequence of quotient graphs, connected eliminated nodes are merged to form a supernode. As mentioned in Section 4.2, for the purpose of reference, it is sufficient to pick a representative from the supernode. If C is such a connected component, we always choose the node x E C last eliminated to represent C. This implies that the remaining nodes in C can be ignored in subsequent quotient graphs. The same remark applies to indistinguishable groups of uneliminated nodes. For each group only the representative will be considered in the current quotient structure. The working vector MARKER is used to mark those nodes that can be ignored in the adjacency structure. The MARKER values for such nodes are set to -1. ACM Transactions on Mathemat]cal Software, Vol 6, No 3, September 1980

19 Fast Implementation of the M,n,mum Degree Algorithm 355 QLINK QSIZE MARKER I 2 - m 3 o! -I! ,2 -Ii -I' -I o Fig. 11. Illustration of the role of QLINK, QSIZE, and MARKER working vectors. This vector is also used temporarily to facilitate the generation of reachable sets. Two more arrays, QSIZE and QLINK, are used for completely specifying indistinguishable supernodes. If node I is the representative, the number of nodes in this superuode is given by QSIZE(I), and the nodes are given by I, QLINK(I), QLINK(QLINK(I))... Figure 11 illustrates the use of the vectors QSIZE, QLINK, and MARKER. The nodes {2, 5, 8} form an indistinguishable supernode represented by node 2. Thus, the MARKER values of 5 and 8 are -1. On the other hand, {3, 6, 9} forms an eliminated supernode. Its representative is node 9, so that MARKER(3) and MARKER(6) are NUMERICAL EXPERIMENTS AND CONCLUDING REMARKS In this section we report on some numerical experiments showing the performance of our implementation of the minimum degree algorithm (MDQ), based on the use of quotient graphs. As a basis for comparison we have used the two other implementations mentioned in the introduction, one from the (old) Yale Sparse Matrix Package [2], which we denote by MDE, and one from [5], which we denote by MDI. 2 The MDE subroutine is a conventional implementation, in the sense that it represents the elimination graphs Go, G1..., GN-1 explicitly in a linked list structure. The MDI implementation, on the other hand, uses only the original graph and does not change it during the execution of the algorithm. Information that is required about the G, is obtained through generation of the appropriate reachable sets, as described in detail in [5]. As mentioned earlier, the expressions MDQ, MDE, and MDI denote quotient graph, explicit, and implicit methods of representing the elimination graphs. Our first set of test problems was chosen to obtain evidence bearing on the asymptotic behavior of our program. We used the set of "graded-l" mesh problems from [4, p. 1062] that consists of a sequence of similar problems typical of those arising in finite-element applications. The results of these runs are 2 The implementation of the minimum degree algorithm in the recent version of the Yale Sparse Matrix Package uses a so-called element model, which embodies many of the ideas used in this paper, such as mass elmnnation, mass degree update, etc. Its execution tune is competitwe with or superior to, but its storage requirement approximately double, that of the MDQ. ACM Transactions on Mathematical Software, Vol. 6, No. 3, September 1980.

20 356 Alan George and Joseph W. H. Liu x x x ACM Transactions on Mathematical Software, Vol. 6, No. 3, September 1980

21 Fast Implementation of the Minimum Degree Algorithm 367 Table II. Comparison of the Performance of the MDE, MDI, and MDQ Implementatig~ of the Minimum Degree Algorithms Apphed to 16 Test Problems Execution t~me Storage requirements N MDE MDI MDQ MDE MDI MDQ , Average ' (xl04) (Xl04) (Xl04) summarized in Table I. Execution times are in seconds on an IBM 3031 computer. The programs are all written in Fortran and were compiled using the optimizing version of the IBM H-level compiler. In terms of execution time the MDQ implementation enjoys a significant advantage over the other two implementations. Both MDI and MDQ appear to execute in times very close to proportional to I E[ for these problems, but the MDE execution time appears to be superlinear in I E [. Because of differences in constants of proportionality, however, MDE is still quite competitive with MDI until N is several thousand. Turning now to storage requirements, it is evident that the MDI and MDQ subroutines require storage proportional to [EI. On the other hand, MDE explicitly generates a sequence of graphs Go, G~,..., G~-I, and the maximum storage required may greatly exceed [E[. The entries in the storage column for MDE were obtained by monitoring the maximum storage used by the working storage arrays. In general, for implementations which store the elimination graphs explicitly, the user must estimate the maximum storage requirement and provide at least that much to allow the program to execute. This is a major disadvantage not shared by MDI and MDQ, since they use a flxed, predictable amount of storage. It is interesting to note that the storage required by the subroutine MDQ is actually less than that required by MDI. However, MDI does not change the input graph structure, since it generates reachable sets via the original graph Go. On the other hand, MDQ generates a sequence of graphs starting with the original and does not preserve its input graph. Thus, to be fair in the comparison, we have added space required to retain the input graph to the MDQ storage requirements. Alternatively, one could preserve the input by writing it on auxiliary storage and ACM Transactions on Mathematmal Software, Vol. 6, No. 3, September 1980

22 358 Alan George and Joseph W. H. Llu then reading it after the ordering had been found. The apparent storage advantage of MDI over MDQ would then be removed. Although MDI and MDQ will always enjoy a storage advantage over MDE, the magnitude of this advantage is problem-dependent. Moreover, it turns out that the execution-time advantage enjoyed by MDQ over MDE in the foregoing problems is not indicative of the results for other problems. Sometimes the lower storage requirement of MDQ and MDI over MDE is paid for through substantially increased execution time. To illustrate this, we applied the three subroutines to a collection of problems from various applications, including finite-element problems and normal equations of sparse least-square problems arising in surveying and linear programming. The results of these experiments are summarized in Table II. The results in Table II show that none of the methods is uniformly faster than the others, but the "average" row in the table suggests to us that the MDQ implementation is the method of choice. Specifically, if we make the reasonable assumption that the cost of running a program is proportional to the product of execution time and storage used, the average costs of MDE, MDI, and MDQ are 7.68, 9.05, and 5.71, respectively. (In many installations the storage requirements are weighted more heavily, making MDI and MDQ more favorable.) We feel that these costs, combined with the predictability of storage requirements, put MDQ in a very strong position. REFERENCES 1. BERGE, C. The Theory of Graphs and Its Applicatmns. Wiley, New York, EISENSTAT, S.C., GURSKY, M.C., SCHULTZ, M.H., AND SHERMAN, A.H. Yale sparse matrlx package. I: The symmetric codes. Res. Rep Computer Science Dep., Yale Univ., New Haven, Conn. 3. GEORGE, A., AND LIU, J.W.H. Algorithms for matrix partitioning and the numerical solution of finite element systems SIAM J. Numer. Anal. 15 (1978), GEORGE, A., AND LIU, J.W.H. An automatic nested dissection algorithm for Lrregular finite element problems. SIAM J. Numer. Anal. 15 (1978), GEORGE, A., AND LIU, J.W.H. A mimmal storage implementation of the mmh-num degree algorithm SIAM J. Numer Anal. 17 (1980), GEORGE, A., AND LIU, J.W.H. A quotient graph model for symmetric faetorization. Sparse Matrix Proceedings 1978, I.S. Duff and G.W. Stewart, Eds., SIAM Pubhcations, 1978, pp PARTER, S.V., The use of linear graphs in Gauss elimination. SIAM Rev. 3 (1961), RosE, D.J. A graph theoretic study of the numerical solution of sparse positive definite systems. In Graph Theory and Computing, R.C. Read, Ed. Academic Press, New York, ROSE, D.J., TARJAN, R.E., AND LUEKER, G.S. Algorithmic aspects of vertex ehmmation on graphs. SIAM J. Comput. 5 (1975), Received November 1978; revised September 1979; accepted January ACM Transactions on Mathematmal Software, Vol 6, No 3, September 1980

Modification of the Minimum-Degree Algorithm by Multiple Elimination

Modification of the Minimum-Degree Algorithm by Multiple Elimination Modification of the Minimum-Degree Algorithm by Multiple Elimination JOSEPH W. H. LIU York University The most widely used ordering scheme to reduce fills and operations in sparse matrix computation is

More information

Solution of Linear Systems

Solution of Linear Systems Chapter 3 Solution of Linear Systems In this chapter we study algorithms for possibly the most commonly occurring problem in scientific computing, the solution of linear systems of equations. We start

More information

A note on fast approximate minimum degree orderings for symmetric matrices with some dense rows

A note on fast approximate minimum degree orderings for symmetric matrices with some dense rows NUMERICAL LINEAR ALGEBRA WITH APPLICATIONS Numer. Linear Algebra Appl. (2009) Published online in Wiley InterScience (www.interscience.wiley.com)..647 A note on fast approximate minimum degree orderings

More information

Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

More information

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1. MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

More information

AN ALGORITHM FOR DETERMINING WHETHER A GIVEN BINARY MATROID IS GRAPHIC

AN ALGORITHM FOR DETERMINING WHETHER A GIVEN BINARY MATROID IS GRAPHIC AN ALGORITHM FOR DETERMINING WHETHER A GIVEN BINARY MATROID IS GRAPHIC W. T. TUTTE. Introduction. In a recent series of papers [l-4] on graphs and matroids I used definitions equivalent to the following.

More information

6. Cholesky factorization

6. Cholesky factorization 6. Cholesky factorization EE103 (Fall 2011-12) triangular matrices forward and backward substitution the Cholesky factorization solving Ax = b with A positive definite inverse of a positive definite matrix

More information

DATA ANALYSIS II. Matrix Algorithms

DATA ANALYSIS II. Matrix Algorithms DATA ANALYSIS II Matrix Algorithms Similarity Matrix Given a dataset D = {x i }, i=1,..,n consisting of n points in R d, let A denote the n n symmetric similarity matrix between the points, given as where

More information

Solving Systems of Linear Equations

Solving Systems of Linear Equations LECTURE 5 Solving Systems of Linear Equations Recall that we introduced the notion of matrices as a way of standardizing the expression of systems of linear equations In today s lecture I shall show how

More information

Types of Degrees in Bipolar Fuzzy Graphs

Types of Degrees in Bipolar Fuzzy Graphs pplied Mathematical Sciences, Vol. 7, 2013, no. 98, 4857-4866 HIKRI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ams.2013.37389 Types of Degrees in Bipolar Fuzzy Graphs Basheer hamed Mohideen Department

More information

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like

More information

Direct Methods for Solving Linear Systems. Matrix Factorization

Direct Methods for Solving Linear Systems. Matrix Factorization Direct Methods for Solving Linear Systems Matrix Factorization Numerical Analysis (9th Edition) R L Burden & J D Faires Beamer Presentation Slides prepared by John Carroll Dublin City University c 2011

More information

Modern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh

Modern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh Modern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh Peter Richtárik Week 3 Randomized Coordinate Descent With Arbitrary Sampling January 27, 2016 1 / 30 The Problem

More information

The Student-Project Allocation Problem

The Student-Project Allocation Problem The Student-Project Allocation Problem David J. Abraham, Robert W. Irving, and David F. Manlove Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK Email: {dabraham,rwi,davidm}@dcs.gla.ac.uk.

More information

Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

More information

CONTROLLABILITY. Chapter 2. 2.1 Reachable Set and Controllability. Suppose we have a linear system described by the state equation

CONTROLLABILITY. Chapter 2. 2.1 Reachable Set and Controllability. Suppose we have a linear system described by the state equation Chapter 2 CONTROLLABILITY 2 Reachable Set and Controllability Suppose we have a linear system described by the state equation ẋ Ax + Bu (2) x() x Consider the following problem For a given vector x in

More information

On the k-path cover problem for cacti

On the k-path cover problem for cacti On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China zeminjin@eyou.com, x.li@eyou.com Abstract In this paper we

More information

Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

More information

Adaptive Online Gradient Descent

Adaptive Online Gradient Descent Adaptive Online Gradient Descent Peter L Bartlett Division of Computer Science Department of Statistics UC Berkeley Berkeley, CA 94709 bartlett@csberkeleyedu Elad Hazan IBM Almaden Research Center 650

More information

Lecture 3: Finding integer solutions to systems of linear equations

Lecture 3: Finding integer solutions to systems of linear equations Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture

More information

A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries

A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do

More information

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS Alexander Burstein Department of Mathematics Howard University Washington, DC 259, USA aburstein@howard.edu Sergey Kitaev Mathematics

More information

Yousef Saad University of Minnesota Computer Science and Engineering. CRM Montreal - April 30, 2008

Yousef Saad University of Minnesota Computer Science and Engineering. CRM Montreal - April 30, 2008 A tutorial on: Iterative methods for Sparse Matrix Problems Yousef Saad University of Minnesota Computer Science and Engineering CRM Montreal - April 30, 2008 Outline Part 1 Sparse matrices and sparsity

More information

A Brief Introduction to Property Testing

A Brief Introduction to Property Testing A Brief Introduction to Property Testing Oded Goldreich Abstract. This short article provides a brief description of the main issues that underly the study of property testing. It is meant to serve as

More information

Analysis of Algorithms, I

Analysis of Algorithms, I Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

More information

Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

More information

THREE DIMENSIONAL GEOMETRY

THREE DIMENSIONAL GEOMETRY Chapter 8 THREE DIMENSIONAL GEOMETRY 8.1 Introduction In this chapter we present a vector algebra approach to three dimensional geometry. The aim is to present standard properties of lines and planes,

More information

[2], [3], which realize a time bound of O(n. e(c + 1)).

[2], [3], which realize a time bound of O(n. e(c + 1)). SIAM J. COMPUT. Vol. 4, No. 1, March 1975 FINDING ALL THE ELEMENTARY CIRCUITS OF A DIRECTED GRAPH* DONALD B. JOHNSON Abstract. An algorithm is presented which finds all the elementary circuits-of a directed

More information

7 Gaussian Elimination and LU Factorization

7 Gaussian Elimination and LU Factorization 7 Gaussian Elimination and LU Factorization In this final section on matrix factorization methods for solving Ax = b we want to take a closer look at Gaussian elimination (probably the best known method

More information

NOTES ON LINEAR TRANSFORMATIONS

NOTES ON LINEAR TRANSFORMATIONS NOTES ON LINEAR TRANSFORMATIONS Definition 1. Let V and W be vector spaces. A function T : V W is a linear transformation from V to W if the following two properties hold. i T v + v = T v + T v for all

More information

Linear Codes. Chapter 3. 3.1 Basics

Linear Codes. Chapter 3. 3.1 Basics Chapter 3 Linear Codes In order to define codes that we can encode and decode efficiently, we add more structure to the codespace. We shall be mainly interested in linear codes. A linear code of length

More information

Quotient Rings and Field Extensions

Quotient Rings and Field Extensions Chapter 5 Quotient Rings and Field Extensions In this chapter we describe a method for producing field extension of a given field. If F is a field, then a field extension is a field K that contains F.

More information

Math 312 Homework 1 Solutions

Math 312 Homework 1 Solutions Math 31 Homework 1 Solutions Last modified: July 15, 01 This homework is due on Thursday, July 1th, 01 at 1:10pm Please turn it in during class, or in my mailbox in the main math office (next to 4W1) Please

More information

OPRE 6201 : 2. Simplex Method

OPRE 6201 : 2. Simplex Method OPRE 6201 : 2. Simplex Method 1 The Graphical Method: An Example Consider the following linear program: Max 4x 1 +3x 2 Subject to: 2x 1 +3x 2 6 (1) 3x 1 +2x 2 3 (2) 2x 2 5 (3) 2x 1 +x 2 4 (4) x 1, x 2

More information

The Open University s repository of research publications and other research outputs

The Open University s repository of research publications and other research outputs Open Research Online The Open University s repository of research publications and other research outputs The degree-diameter problem for circulant graphs of degree 8 and 9 Journal Article How to cite:

More information

Linear Programming I

Linear Programming I Linear Programming I November 30, 2003 1 Introduction In the VCR/guns/nuclear bombs/napkins/star wars/professors/butter/mice problem, the benevolent dictator, Bigus Piguinus, of south Antarctica penguins

More information

1 if 1 x 0 1 if 0 x 1

1 if 1 x 0 1 if 0 x 1 Chapter 3 Continuity In this chapter we begin by defining the fundamental notion of continuity for real valued functions of a single real variable. When trying to decide whether a given function is or

More information

1 Introduction. Dr. T. Srinivas Department of Mathematics Kakatiya University Warangal 506009, AP, INDIA tsrinivasku@gmail.com

1 Introduction. Dr. T. Srinivas Department of Mathematics Kakatiya University Warangal 506009, AP, INDIA tsrinivasku@gmail.com A New Allgoriitthm for Miiniimum Costt Liinkiing M. Sreenivas Alluri Institute of Management Sciences Hanamkonda 506001, AP, INDIA allurimaster@gmail.com Dr. T. Srinivas Department of Mathematics Kakatiya

More information

IRREDUCIBLE OPERATOR SEMIGROUPS SUCH THAT AB AND BA ARE PROPORTIONAL. 1. Introduction

IRREDUCIBLE OPERATOR SEMIGROUPS SUCH THAT AB AND BA ARE PROPORTIONAL. 1. Introduction IRREDUCIBLE OPERATOR SEMIGROUPS SUCH THAT AB AND BA ARE PROPORTIONAL R. DRNOVŠEK, T. KOŠIR Dedicated to Prof. Heydar Radjavi on the occasion of his seventieth birthday. Abstract. Let S be an irreducible

More information

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. We begin by defining the ring of polynomials with coefficients in a ring R. After some preliminary results, we specialize

More information

SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov

SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov Serdica Math. J. 30 (2004), 95 102 SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS Nickolay Khadzhiivanov, Nedyalko Nenov Communicated by V. Drensky Abstract. Let Γ(M) where M V (G) be the set of all vertices

More information

Exponential time algorithms for graph coloring

Exponential time algorithms for graph coloring Exponential time algorithms for graph coloring Uriel Feige Lecture notes, March 14, 2011 1 Introduction Let [n] denote the set {1,..., k}. A k-labeling of vertices of a graph G(V, E) is a function V [k].

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

Notes on Determinant

Notes on Determinant ENGG2012B Advanced Engineering Mathematics Notes on Determinant Lecturer: Kenneth Shum Lecture 9-18/02/2013 The determinant of a system of linear equations determines whether the solution is unique, without

More information

1 The Line vs Point Test

1 The Line vs Point Test 6.875 PCP and Hardness of Approximation MIT, Fall 2010 Lecture 5: Low Degree Testing Lecturer: Dana Moshkovitz Scribe: Gregory Minton and Dana Moshkovitz Having seen a probabilistic verifier for linearity

More information

Factorization Theorems

Factorization Theorems Chapter 7 Factorization Theorems This chapter highlights a few of the many factorization theorems for matrices While some factorization results are relatively direct, others are iterative While some factorization

More information

Competitive Analysis of On line Randomized Call Control in Cellular Networks

Competitive Analysis of On line Randomized Call Control in Cellular Networks Competitive Analysis of On line Randomized Call Control in Cellular Networks Ioannis Caragiannis Christos Kaklamanis Evi Papaioannou Abstract In this paper we address an important communication issue arising

More information

1 Solving LPs: The Simplex Algorithm of George Dantzig

1 Solving LPs: The Simplex Algorithm of George Dantzig Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.

More information

Research Article Stability Analysis for Higher-Order Adjacent Derivative in Parametrized Vector Optimization

Research Article Stability Analysis for Higher-Order Adjacent Derivative in Parametrized Vector Optimization Hindawi Publishing Corporation Journal of Inequalities and Applications Volume 2010, Article ID 510838, 15 pages doi:10.1155/2010/510838 Research Article Stability Analysis for Higher-Order Adjacent Derivative

More information

Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

More information

On Integer Additive Set-Indexers of Graphs

On Integer Additive Set-Indexers of Graphs On Integer Additive Set-Indexers of Graphs arxiv:1312.7672v4 [math.co] 2 Mar 2014 N K Sudev and K A Germina Abstract A set-indexer of a graph G is an injective set-valued function f : V (G) 2 X such that

More information

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Mathematics Course 111: Algebra I Part IV: Vector Spaces Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are

More information

Sum of squares of degrees in a graph

Sum of squares of degrees in a graph Sum of squares of degrees in a graph Bernardo M. Ábrego 1 Silvia Fernández-Merchant 1 Michael G. Neubauer William Watkins Department of Mathematics California State University, Northridge 18111 Nordhoff

More information

Offline sorting buffers on Line

Offline sorting buffers on Line Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: rkhandekar@gmail.com 2 IBM India Research Lab, New Delhi. email: pvinayak@in.ibm.com

More information

Methods for Finding Bases

Methods for Finding Bases Methods for Finding Bases Bases for the subspaces of a matrix Row-reduction methods can be used to find bases. Let us now look at an example illustrating how to obtain bases for the row space, null space,

More information

THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE. Alexander Barvinok

THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE. Alexander Barvinok THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE Alexer Barvinok Papers are available at http://www.math.lsa.umich.edu/ barvinok/papers.html This is a joint work with J.A. Hartigan

More information

A Direct Numerical Method for Observability Analysis

A Direct Numerical Method for Observability Analysis IEEE TRANSACTIONS ON POWER SYSTEMS, VOL 15, NO 2, MAY 2000 625 A Direct Numerical Method for Observability Analysis Bei Gou and Ali Abur, Senior Member, IEEE Abstract This paper presents an algebraic method

More information

SOLVING LINEAR SYSTEMS

SOLVING LINEAR SYSTEMS SOLVING LINEAR SYSTEMS Linear systems Ax = b occur widely in applied mathematics They occur as direct formulations of real world problems; but more often, they occur as a part of the numerical analysis

More information

A Piggybacking Design Framework for Read-and Download-efficient Distributed Storage Codes

A Piggybacking Design Framework for Read-and Download-efficient Distributed Storage Codes A Piggybacing Design Framewor for Read-and Download-efficient Distributed Storage Codes K V Rashmi, Nihar B Shah, Kannan Ramchandran, Fellow, IEEE Department of Electrical Engineering and Computer Sciences

More information

COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS

COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS IGOR V. EROVENKO AND B. SURY ABSTRACT. We compute commutativity degrees of wreath products A B of finite abelian groups A and B. When B

More information

On the representability of the bi-uniform matroid

On the representability of the bi-uniform matroid On the representability of the bi-uniform matroid Simeon Ball, Carles Padró, Zsuzsa Weiner and Chaoping Xing August 3, 2012 Abstract Every bi-uniform matroid is representable over all sufficiently large

More information

136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

136 CHAPTER 4. INDUCTION, GRAPHS AND TREES 136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics

More information

On the Relationship between Classes P and NP

On the Relationship between Classes P and NP Journal of Computer Science 8 (7): 1036-1040, 2012 ISSN 1549-3636 2012 Science Publications On the Relationship between Classes P and NP Anatoly D. Plotnikov Department of Computer Systems and Networks,

More information

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION Sérgio Pequito, Stephen Kruzick, Soummya Kar, José M. F. Moura, A. Pedro Aguiar Department of Electrical and Computer Engineering

More information

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES I GROUPS: BASIC DEFINITIONS AND EXAMPLES Definition 1: An operation on a set G is a function : G G G Definition 2: A group is a set G which is equipped with an operation and a special element e G, called

More information

COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS

COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS Bull Austral Math Soc 77 (2008), 31 36 doi: 101017/S0004972708000038 COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS IGOR V EROVENKO and B SURY (Received 12 April 2007) Abstract We compute

More information

The Basics of Graphical Models

The Basics of Graphical Models The Basics of Graphical Models David M. Blei Columbia University October 3, 2015 Introduction These notes follow Chapter 2 of An Introduction to Probabilistic Graphical Models by Michael Jordan. Many figures

More information

1 VECTOR SPACES AND SUBSPACES

1 VECTOR SPACES AND SUBSPACES 1 VECTOR SPACES AND SUBSPACES What is a vector? Many are familiar with the concept of a vector as: Something which has magnitude and direction. an ordered pair or triple. a description for quantities such

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010 CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

More information

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS. 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS. 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method Introduction to dual linear program Given a constraint matrix A, right

More information

A Note on Maximum Independent Sets in Rectangle Intersection Graphs

A Note on Maximum Independent Sets in Rectangle Intersection Graphs A Note on Maximum Independent Sets in Rectangle Intersection Graphs Timothy M. Chan School of Computer Science University of Waterloo Waterloo, Ontario N2L 3G1, Canada tmchan@uwaterloo.ca September 12,

More information

Bargaining Solutions in a Social Network

Bargaining Solutions in a Social Network Bargaining Solutions in a Social Network Tanmoy Chakraborty and Michael Kearns Department of Computer and Information Science University of Pennsylvania Abstract. We study the concept of bargaining solutions,

More information

Notes on Cholesky Factorization

Notes on Cholesky Factorization Notes on Cholesky Factorization Robert A. van de Geijn Department of Computer Science Institute for Computational Engineering and Sciences The University of Texas at Austin Austin, TX 78712 rvdg@cs.utexas.edu

More information

SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH

SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH 31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,

More information

Integer Factorization using the Quadratic Sieve

Integer Factorization using the Quadratic Sieve Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 seib0060@morris.umn.edu March 16, 2011 Abstract We give

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

By choosing to view this document, you agree to all provisions of the copyright laws protecting it.

By choosing to view this document, you agree to all provisions of the copyright laws protecting it. This material is posted here with permission of the IEEE Such permission of the IEEE does not in any way imply IEEE endorsement of any of Helsinki University of Technology's products or services Internal

More information

GENERATING SETS KEITH CONRAD

GENERATING SETS KEITH CONRAD GENERATING SETS KEITH CONRAD 1 Introduction In R n, every vector can be written as a unique linear combination of the standard basis e 1,, e n A notion weaker than a basis is a spanning set: a set of vectors

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS Systems of Equations and Matrices Representation of a linear system The general system of m equations in n unknowns can be written a x + a 2 x 2 + + a n x n b a

More information

A Sublinear Bipartiteness Tester for Bounded Degree Graphs

A Sublinear Bipartiteness Tester for Bounded Degree Graphs A Sublinear Bipartiteness Tester for Bounded Degree Graphs Oded Goldreich Dana Ron February 5, 1998 Abstract We present a sublinear-time algorithm for testing whether a bounded degree graph is bipartite

More information

Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.

Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom. Some Polynomial Theorems by John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.com This paper contains a collection of 31 theorems, lemmas,

More information

GROUPS ACTING ON A SET

GROUPS ACTING ON A SET GROUPS ACTING ON A SET MATH 435 SPRING 2012 NOTES FROM FEBRUARY 27TH, 2012 1. Left group actions Definition 1.1. Suppose that G is a group and S is a set. A left (group) action of G on S is a rule for

More information

Linear Programming Problems

Linear Programming Problems Linear Programming Problems Linear programming problems come up in many applications. In a linear programming problem, we have a function, called the objective function, which depends linearly on a number

More information

Operation Count; Numerical Linear Algebra

Operation Count; Numerical Linear Algebra 10 Operation Count; Numerical Linear Algebra 10.1 Introduction Many computations are limited simply by the sheer number of required additions, multiplications, or function evaluations. If floating-point

More information

Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

More information

7. LU factorization. factor-solve method. LU factorization. solving Ax = b with A nonsingular. the inverse of a nonsingular matrix

7. LU factorization. factor-solve method. LU factorization. solving Ax = b with A nonsingular. the inverse of a nonsingular matrix 7. LU factorization EE103 (Fall 2011-12) factor-solve method LU factorization solving Ax = b with A nonsingular the inverse of a nonsingular matrix LU factorization algorithm effect of rounding error sparse

More information

Is Sometime Ever Better Than Alway?

Is Sometime Ever Better Than Alway? Is Sometime Ever Better Than Alway? DAVID GRIES Cornell University The "intermittent assertion" method for proving programs correct is explained and compared with the conventional method. Simple conventional

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS 1. SYSTEMS OF EQUATIONS AND MATRICES 1.1. Representation of a linear system. The general system of m equations in n unknowns can be written a 11 x 1 + a 12 x 2 +

More information

(67902) Topics in Theory and Complexity Nov 2, 2006. Lecture 7

(67902) Topics in Theory and Complexity Nov 2, 2006. Lecture 7 (67902) Topics in Theory and Complexity Nov 2, 2006 Lecturer: Irit Dinur Lecture 7 Scribe: Rani Lekach 1 Lecture overview This Lecture consists of two parts In the first part we will refresh the definition

More information

8 Divisibility and prime numbers

8 Divisibility and prime numbers 8 Divisibility and prime numbers 8.1 Divisibility In this short section we extend the concept of a multiple from the natural numbers to the integers. We also summarize several other terms that express

More information

Split Nonthreshold Laplacian Integral Graphs

Split Nonthreshold Laplacian Integral Graphs Split Nonthreshold Laplacian Integral Graphs Stephen Kirkland University of Regina, Canada kirkland@math.uregina.ca Maria Aguieiras Alvarez de Freitas Federal University of Rio de Janeiro, Brazil maguieiras@im.ufrj.br

More information

1 Sets and Set Notation.

1 Sets and Set Notation. LINEAR ALGEBRA MATH 27.6 SPRING 23 (COHEN) LECTURE NOTES Sets and Set Notation. Definition (Naive Definition of a Set). A set is any collection of objects, called the elements of that set. We will most

More information

4.5 Linear Dependence and Linear Independence

4.5 Linear Dependence and Linear Independence 4.5 Linear Dependence and Linear Independence 267 32. {v 1, v 2 }, where v 1, v 2 are collinear vectors in R 3. 33. Prove that if S and S are subsets of a vector space V such that S is a subset of S, then

More information

Minimum rank of graphs that allow loops. Rana Catherine Mikkelson. A dissertation submitted to the graduate faculty

Minimum rank of graphs that allow loops. Rana Catherine Mikkelson. A dissertation submitted to the graduate faculty Minimum rank of graphs that allow loops by Rana Catherine Mikkelson A dissertation submitted to the graduate faculty in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Major:

More information

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

Chapter 7: Products and quotients

Chapter 7: Products and quotients Chapter 7: Products and quotients Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 42, Spring 24 M. Macauley (Clemson) Chapter 7: Products

More information

Matrix Multiplication

Matrix Multiplication Matrix Multiplication CPS343 Parallel and High Performance Computing Spring 2016 CPS343 (Parallel and HPC) Matrix Multiplication Spring 2016 1 / 32 Outline 1 Matrix operations Importance Dense and sparse

More information