Optimal Parallel Sux Tree Construction. Ramesh Hariharan y. April 1, Abstract

Size: px
Start display at page:

Download "Optimal Parallel Sux Tree Construction. Ramesh Hariharan y. April 1, Abstract"

Transcription

1 Optial Parallel Sux Tree Construction Raesh Hariharan y April 1, 1997 Abstract An O()-work, O()-space, O(log 4 )-tie CREW-PRAM algorith for constructing the sux tree of a string s of length drawn fro any xed alphabet set is obtained. This is the rst known work and space optial parallel algorith for this proble. It can be generalized to a string s drawn fro any general alphabet set to perfor in O(log 4 ) tie and O( log jj) work and space, after the characters in s have been sorted alphabetically, where jj is the nuber of distinct characters in s. In this case too, the algorith is work-optial. Keywords. Sux tree, strings, pattern atching, string periodicity. 1 Introduction A sux tree of a string s is a copacted trie of all suxes of s. It is a powerful data structure which nds applications in any string processing algoriths. Soe exaples are string atching, nding all squares or repetitions in a string [AP83], coputing substring statistics [AP85], approxiate string atching [LV86], text copression [RPE81], analyzing genetic sequences [CHM86], etc. A very powerful feature of the sux tree is that after construction and suitable preprocessing, the longest coon prex of any two substrings of s can be found in constant tie; further, the preprocessing required for this step can be perfored optially in logarithic tie. The rst sequential algorith for constructing the sux tree was obtained by Weiner [W73]. This algorith takes O( log jj) tie, where jj is the nuber of distinct characters in s and = jsj. McCreight [M76] gave a ore ecient construction with the sae asyptotic tie bound. For strings fro a xed alphabet, both algoriths take linear, i.e., O() tie. The rst parallel algorith for this proble was due to Landau and Vishkin [LV86]; it runs in O(log ) tie and does O( 2 ) work. Apostolico et al. [AILSV86] used the Work supported by NSF grants CCR , CCR and CCR ymax-planck Institut fur Inforatik, I Stadtwald, Saarbrucken, Gerany, Eail: raesh@pi-sb.pg.de. Work done when the author was a student at the Courant Institute of Matheatical Sciences, New York University 1

2 technique of \naing" [KMR72] to obtain an algorith which takes O(log ) tie and does O( log ) work in the arbitrary CRCW-PRAM odel. This algorith requires superlinear, i.e., O( 2 ) space, which can be reduced to O( 1+ ) at the expense of an O( 1 ) factor in the tie bound. A variant of this algorith runs in O(log2 ) tie, does O( log 2 ) work and takes linear space in the CREW-PRAM odel. Note that constructing the sux tree of s iplicitly involves ordering the characters in s by alphabet; therefore, no parallel algorith can have a better work bound than the algorith in [AILSV86] when the characters in s are drawn fro a general and potentially innite alphabet. However the algorith of Apostolico et al. [AILSV86] runs in the above entioned tie, space and work bounds even for binary alphabet. The existence of a linear work algorith for the case when the characters in s are drawn fro a xed alphabet has been an iportant open proble in string processing. The Main Result. We give the rst work-optial parallel algorith to construct the sux tree of a binary string s. The algorith does O() work and takes O(log 4 ) tie and O() space in the CREW-PRAM odel. This algorith can be generalized to handle strings s drawn fro any xed alphabet set to perfor in the sae bounds. For strings s drawn fro a general alphabet set, the algorith can be generalized to perfor in O(log 4 ) tie, O( log jj) work, and O( log jj) space after the characters in s have been sorted by alphabet, where jj is the nuber of distinct characters in s. Since constructing the sux tree of s iplicitly involves ordering the characters in s by alphabet, no parallel algorith can have a better work bound. An Application. As an application, we obtain the rst optial work algorith for ulti-pattern atching, i.e., atching a set of patterns of collective size M against a text of size N, where the patterns and text are drawn over soe xed alphabet set. This algorith takes O(log 4 M l ) tie, O(M + N) work and O(M + N) space in the CREW-PRAM odel, where M l is the length of the longest pattern. Previously, the algorith with the sallest work bound was due to Muthukrishnan and Pale [MP93]; this algorith took O(log M l ) tie, O(N p log M l + M) work and O(M 1+ + N) space in the arbitrary CRCW-PRAM odel. Other Recent Developents. Independent of this work, Sahinalp and Vishkin [SV93] obtained an algorith for sux tree construction which takes O(log 2 ) tie, O( log log ) work and O( 1+ ) space in the arbitrary CRCW-PRAM odel. A randoized version of their algorith takes O(log 2 ) tie, O( log ) work and O() space. Both algoriths work for strings drawn fro an alphabet of size polynoial in and use the \naing" technique. They also odify this algorith for the case of xed alphabet to run in O(log 2 ) tie, O() work and O( 1+ ) space in the arbitrary CRCW-PRAM odel. Note that this algorith is tie-wise better than ours but is not space optial and requires a stronger odel; further the techniques used by the (syetry breaking and naing) are very dierent fro the cobinatorial techniques we use. More recently, Farach and Muthukrishnan [FM93] have obtained a randoized algorith which takes O(log ) tie, O() work and O() space in the arbitrary CRCW-PRAM odel for strings drawn fro a constant sized alphabet. Main Techniques Used. The algorith of Apostolico et al. [AILSV86] for sux tree 2

3 construction uses soe interesting algorithic techniques but does not use any of the properties intrinsic to strings. Our approach is quite dierent and exploits cobinatorial and periodicity properties of strings along with the repetitive nature of the sux tree. It is interesting to note that any parallel algoriths use superlinear space in order to exploit the xed (or restricted) alphabet assuption [MP93, BD+91, KLP89] in order to reduce the work bound; in contrast, we exploit the xed alphabet assuption to obtain an optial work algorith using just linear space. The following are two of the essential ingredients of the algorith which ay also be of independent interest. Our schee hinges on an upper bound we show for the following cobinatorial question. If i x is the nuber of ties substring x occurs in s, then what is the su infi 1x ; i 0x g, over all binary strings x of length r, as a function of = jsj and r? Here 0x just denotes the string x preceded by the sybol 0, and siilarly for 1x. Note that this su is closely related to the nuber of nodes in the sux tree of s which have two sux links incident upon the. We show that this su is upper bounded by log r. We give a concurrent version of McCreight's sequential algorith for sux tree construction which constructs a single data structure in which the sux trees of the binary strings s 1 ; : : : ; s k are erged. This algorith runs in O(ax i fjs i jg log k) tie, does O( i js i j) work, and takes O( i js i j) space. In this algorith, one processor is assigned to each string s i ; each processor perfors McCreight's sequential algorith on its respective string. All processors work on the sae data structure. This leads to two probles, the ore critical of which is the fact that a processor which inserts a node x into this data structure ight have to wait for the sux link of x's parent to be in place before proceeding. Indeed long paths ay appear in the data structure, with each node in this path waiting for the sux link of its parent to be in place. We give a non-trivial aortization arguent to show that the total work done is indeed linear, in spite of processors waiting for sux links to be in place. Algorith Overview. The sux tree construction algorith uses the following schee. Copacted tries are built for substrings of s of successively increasing lengths in O(log ) stages; the nal trie will be the sux tree. In the rst stage, the substrings have size r, where r is polylogarithic in. In the subsequent stages, they have lengths 2r; 2 2 r; 2 3 r; : : :. The rst stage provides us with the rst challenge in solving this proble as it is not clear how even this stage can be accoplished in O() work. We use the concurrent version of McCreight's algorith described above. s is split into pieces of length 2r, each pair of adjacent pieces overlapping in exactly r characters. One processor is assigned to each piece. Each processor perfors McCreight's sequential algorith to insert all substrings of length r in its piece into a copacted trie. All processors insert substrings into the sae data structure. This takes O(r log ) tie and O() work. Each subsequent stage can be perfored easily by sorting up to ites in each stage. However, this leads to an O( log 2 ) work algorith. The ain challenge now is to get around the proble of sorting up to ites in each stage. In order to avoid perforing this coputation, we use the following schee. Each stage proceeds in two steps. 3

4 Recall that in a given stage, all substrings of a particular length are processed. In the rst step, the copacted trie is coputed for a carefully chosen subset of these substrings. Using the cobinatorial property entioned above and exploiting periodicity properties, we show that the the nuber of such substrings which are not periodic with sall periods is O( log 2 ), and that those substrings which are periodic with sall periods can be grouped into O( ) failies. We can then \sort" these chosen substrings using log 2 Cole's parallel erge sort algorith [C88] so that the total work done in sorting is O( ) log per stage, which is O() over all stages. In the second step, by exploiting the repetitive structure of the trie, we obtain the copacted trie for all substrings using the copacted trie for the substrings chosen above. These chosen substrings enable a graph dened on the leaves of the trie obtained in the previous stage to be partitioned into trees; this graph partitioning is critical to the ecient perforance of the second step. This paper is organized as follows. Section 2 gives the requisite denitions and describes soe preliinary procedures, Section 3 describes a key cobinatorial property of strings, Section 4 describes how the rst stage is perfored, and Sections 5, 6, 7, 8, and 9 describes the reaining stages. 2 Denitions and Preliinaries The copacted trie of a set of strings s 1 ; s 2 ; : : : ; s k, none of which is a prex of another string in the set, is a tree T dened as follows. T has a leaf lf(s i ) for each s i, 1 i k. Each internal node in T has at least two children. Associated with each edge e in T is a string. The strings associated with the edges on the path fro the root to lf(s i ) yield the string s i when concatenated in path order. Further, for any two leaves lf(s i ) and lf(s j ) with least coon ancestor x, the strings associated with the edges on the path fro the root to x, when concatenated in path order, give the longest coon prex of s i and s j. It follows that if e and e 0 are edges leading fro a node x to any two of its children, the strings associated with e and e 0 begin with distinct characters. In addition, the edges leading fro x to its children are ordered fro left to right in increasing lexicographic order of the associated strings. Fig.1. shows the copacted trie of strings 1011; 0100; 1101; 1110; The above denition of copacted tries is generalized to the case when soe of the strings s 1 ; : : : ; s k are identical by having one leaf per distinct string rather than one leaf per string. All identical strings are associated with the sae leaf in T. Let s be a binary string of length. The sux tree ST of s is dened as follows. Let p be the string s$, where $ is a new sybol. Then, clearly, no sux of p is a prex of another sux of p. ST is a copacted trie of all suxes of p except the sux `$'. Fig.1. shows the sux tree of the string The r-sux tree, r-st, of s, r 1, is dened to be copacted trie of all substrings of p of length r and all suxes of p of length at ost r, excluding the sux `$'. Clearly, for any r >, ST = r-st. In any r-st, let str(x) denote the string obtained by concatenating the strings associated with the edges on the path fro the root to the node x in r-st. An r-st 4

5 $ $ $ $ 110$ $ A TRIE A SUFFIX TREE Figure 1: Tries and Sux Trees will be represented as follows. The nodes will be stored in contiguous array locations. Each node x of the tree has pointers to its children (which are at ost 3 in nuber), a parent pointer par(x), a sux link pointer suf(x), and a eld len(x) which equals jstr(x)j. If x is an internal node then the sux link pointer suf(x) points to a node y such that jstr(y)j = jstr(x)j? 1 and str(y) is a sux of str(x). For every internal node x in any r-st, such a node y is guaranteed to exist. For the root root, suf(root) = par(root) = root and len(root) = 0. The string p[i : : : j] associated with an edge e is denoted by substr(e) and is represented by the pair of indices i; j. Let the characters in p be indexed fro 1 : : : + 1. Two strings u and v are said to be consecutive substrings of p if for soe index j there is an occurrence of u in p beginning at index j and an occurrence of v in p beginning at index j + 1. A subtree of soe r-st T induced by a subset L of its leaves is the tree obtained by reoving all subtrees of T containing only leaves outside L and then copacting paths of degree two nodes in the resulting tree into a single edge. We ipose the order < 0 < 1 < $ on the alphabet, where stands for the epty sybol, i.e., a blank. We say that u < v for strings u; v if string u is lexicographically less than v. We say that l 1 < l 2 for nodes l 1 ; l 2 of soe r-st if str(l 1 ) < str(l 2 ). We assue the CREW-PRAM odel of coputation in the rest of this paper. The following priitives will be useful. Coparing Leaves. The following priitive is due to Schieber and Vishkin [SV88]. A tree with nodes can be preprocessed in O(log ) tie and O() work following which the relative order of any two leaves can be deterined in constant tie and work. Coputing Induced Tries. Given an ordered set S of substrings of p and an oracle which gives the length of the longest coon prex of u; v for any two consecutive strings u; v 2 S, there is a schee for constructing the copacted trie for the strings in S in O(log jsj) tie and O(jSj) work [FM93]. This trie is called the trie induced by the strings in S. 5

6 u v v v w sallest period Figure 2: A Periodic String We also need the concept of periodicities in strings. x is said to be a period of string u if for all j, 1 j juj? x, u[j] = u[j + x]. u is said to be periodic if its sallest period x is at ost juj ; in fact, u is said to be periodic with period x (see Fig.2.). A 2 string u is said to be priitive if for no u 0 and k > 1 is u = (u 0 ) k. Lea 2.1 is classic and follows fro [LS62]. Lea 2.1 Suppose string u is periodic. Then there exists a priitive string v and a prex w of v such that u = v k w, for soe k 2. Further, x juj? jvj is a period of u if and only if x is a ultiple of jvj. In addition, the sallest period of the string u 0 = ua, where a 6= u[juj? jvj + 1], is at least juj? jvj + 1. Our goal is to construct the sux tree ST of s in polylogarithic tie and linear work, using just a linear aount of space. We do so by constructing the sequence of trees r-st; 2r-ST; 2 2 r-st; : : : ; 2 i r-st, where i is the sallest nuber such that 2 i r + 1 and r, to be xed later, is polylogarithic in. We assue that 8. 3 A Basic Property In this section, we describe a basic cobinatorial property of strings which will be critical to the perforance of the algorith. Consider any binary string v. Denitions. For a binary string u of length less than jvj, let i u denote the nuber of occurrences of u in v. For 1 r jvj?1, let n r = infi 0u ; i 1u g, where the suation is over all binary strings u of length r. jvj?1 r=1 n r is called the bifurcation nuber of v. Lea 3.1 n r n r?1, for 1 r jvj? 1. Proof. Let z be a binary string of length r? 1. We show below that infi 0z0 ; i 1z0 g + infi 0z1 ; i 1z1 g infi 0z ; i 1z g. Since n r = [infi 0z0 ; i 1z0 g + infi 0z1 ; i 1z1 g] and n r?1 = infi 0z ; i 1z g, where the suations are over all binary strings z of length r? 1, the lea follows. Note that i 0z0 + i 0z1 i 0z because if either 0z0 or 0z1 occurs starting at v[i], then 0z occurs starting at v[i]. Siilarly, i 1z0 + i 1z1 i 1z. Therefore, infi 0z0 ; i 1z0 g + infi 0z1 ; i 1z1 g infi 0z0 + i 0z1 ; i 1z0 + i 1z1 g infi 0z ; i 1z g, as claied. 2 Lea 3.2 The bifurcation nuber jvj?1 r=1 n r of v is at ost jvj log jvj. 6

7 Proof. Consider the sux tree ST of the v 0, the reverse of v. Each prex of v corresponds to a distinct leaf in ST. Consider those internal nodes x with at least two edges e and e 0 leading to children y and y 0 of x, respectively, such that the substr(e) begins with a 0 and substr(e 0 ) begins with a 1. Let l 0 x be the nuber of leaves in the subtree rooted at y and let l 1 x be the nuber of leaves in the subtree rooted at y 0. Clearly, the bifurcation nuber of v is exactly the su inflx; 1 l 0 xg over all such internal nodes in ST. We call inflx; 1 l 0 xg the count at node x. Clearly, for each leaf of ST, there are at ost log jvj internal nodes at which it can contribute to the count. The lea follows. 2 Corollary 3.3 n r jvj log jvj r, for 1 r jvj? 1. Reark. Leszek Gasieniec [G93] has shown that there exist strings v for which n r = jvj log jvj ( ), for r = (log jvj). So Corollary 3.3 is tight to within constant factors for r r = (log jvj). 4 Optial r-sux Tree construction in O(r log ) tie Given soe r, we show how T 0, the r-st of s, is constructed in O(r log ) tie and O() work on a coon CRCW-PRAM. Recall that the r-st is a copacted trie of all substrings of p of length r and all suxes of p of length at ost r, except the sux `$'. The value of r will be xed later at soe power of log. 4.1 The Algorith The procedure for constructing T 0 has two steps. Step 1. In this step, a tree T 0 0 is built in O(r log ) tie and O() work. s is partitioned into pieces of length 2r (the rightost piece could be shorter), each pair of adjacent pieces overlapping in exactly r characters. There are O( ) such pieces. Let these pieces be r denoted by the strings s 1 ; s 2 ; : : : ; s k. Let p i be the string s i $ i, where $ i 6= $ j, for any i 6= j. T0 0 is the copacted trie of all suxes of each of the p i 's, except the suxes $ i. In other words, 0 is a single data structure containing the sux trees of all the s i 's. To construct T0, 0 one processor is assigned to string p i. The processor associated with p i inserts the suxes of p i, except $ i, in left to right order into T 0 0 using the sequential algorith of McCreight [M76]. Each processor takes O(r log ) tie and does O(r) work. In fact, there are O(r) tie-steps and each processor takes O(1) tie and does O(1) work in each tie step; in addition, after each tie step, reorganizing the processors in a anner to be described takes O(log ) tie and O( ) work. Thus, the total tie r taken is O(r log ) and the total work done is O(). This construction will be described in detail shortly. 7

8 Step 2. T 0 0 is post-processed to give T 0 in three steps, each of which takes O(log ) tie and O() work. Step 2.1. T 0 0 is truncated as follows. All edges e in T 0 0 are considered in parallel. Suppose e is between a node x and its parent y such that len(x) > r and len(y) r. Then the edge e and the subtree rooted at x are reoved; in addition, if len(y) < r then a leaf x 0 is inserted with parent y such that str(x 0 ) is the prex of str(x) of length r. Step 2.2. Next, all subtrees containing only leaves x such that str(x) is a sux of p k 0, k 0 6= k, are reoved. We do not do the above operation for p k, for the following technical reason: the sybol $ k can serve as $, the last sybol of p (recall p = s$). Step 2.3. All chains of degree 2 are contracted. T 0 is the resulting tree. The total tie taken in Steps 1 and 2 is O(r log ) and the total work done is O(). Step 1 Description. As stated earlier, the processor associated with p i, 1 i k, inserts all suxes of p i, except $ i, in left to right order into T0 0 using the sequential algorith of McCreight [M76]. McCreight's Algorith. For the sake of copleteness, we briey recapitulate Mc- Creight's sequential algorith for constructing the sux tree T of a string s 0. Let p 0 = s 0 $. The algorith inserts the various suxes of p 0 in left to right order, i.e., in decreasing order of the lengths of the suxes. In this process, the characters in p 0 are scanned fro left to right in sequence and the nodes in the current sux tree are scanned in soe order. Three variables, i, j and x, are aintained at every step. i denotes the index of the rightost character in p 0 which has been read. j denotes the index in p 0 at which the current sux which the algorith seeks to insert begins. x denotes the current node in T being scanned by the algorith. This algorith alternates between two phases, the scanning phase and the rescanning phase. Initially the algorith starts in the scanning phase with i = 1, j = 1, and x being the root. We describe a snapshot of the algorith starting with a scanning phase and ending just before the next scanning phase. In a scanning phase, the characters p 0 [i]; p 0 [i+1]; : : : are copared with the characters in the strings associated with the edges along the appropriate path starting at x until a isatch occurs. Suppose a isatch occurs when character p 0 [i 0 ] is copared with a character in the substring associated with the edge e between node y and one of its children y 0. Then the edge e is broken at the appropriate point and a node z is inserted as a child of y and parent of y 0. A new leaf z 0 is inserted as a child of z; z 0 will be the leaf corresponding to the sux j. A rescanning phase begins now. Suxes j + 1; j + 2; : : : are inserted one by one in this rescanning phase. Sux j + g is inserted as follows after sux j + g? 1 has been inserted, where g 1. Suppose edge e 1 between node w and one of its children was broken in order to insert the sux j + g? 1; let f 1 be the node which was used to break edge e 1. Then the edge e 0 1 which has to be broken in order to insert sux j + g is found by traversing the appropriate path starting at node suf(w) until a node w 0 is reached such that len(w 0 ) len(z)? g. If len(w 0 ) > len(z)? g then e 0 1 is the edge between w 0 and its parent; suf(f 1 ) is then set to f 0, the node which is used to break 1 e0 1 ; further, the 8

9 rescanning phase the continues with sux j + g + 1. If len(w 0 ) = len(z)? g then the current rescanning phase coes to an end (without having inserted sux j + g yet) and the next scanning phase begins with i = i 0, j = j + g and x = w 0 ; further, suf(f 1 ) is set to w 0. An iportant fact to note is that in the rescanning phase, traversing an edge e takes constant tie, while in the scanning phase, characters in the strings associated with e are copared in sequence and this takes tie proportional to the nuber of coparisons. McCreight showed that the total tie spent in the above rescanning phase is O(h+i 0?i), where h is the nuber of suxes inserted in the rescanning phase; the entire algorith can then be easily seen to take O(js 0 j) tie. Probles Encountered. Note that since all the O( ) processors which run Mcr Creight's algorith on the strings p 1 ; : : : ; p k work on a coon data structure, these processors interfere with each other. The following two probles are encountered. 1. A nuber of processors ay siultaneously attept to break an edge e between node x and its child y and insert dierent nodes between these two nodes. 2. When a node y is inserted in T0, 0 the sux link suf(x) of the current parent node x of y ay not have been deterined. The analysis of McCreight's algorith requires that this link be in place when y is inserted. These probles are solved as follows. Solution to Proble 2. After a node y is inserted as a child of x, the processor which inserted y waits at x until the sux link of x is set before proceeding further. It needs to be shown that the total tie spent by a processor waiting at various nodes is bounded by O(r). This analysis will be described in Section 4.2. Denition. We dene the current string length of the processor associated with p l, 1 l k, at any instant as follows. If i is the index of the rightost character in p l scanned till that instant and j is the index at which the last sux of p l inserted begins then the current string length of the above processor is i? j. The following fact holds for McCreight's algorith. Fact 1 The current string length of the processor associated with p l equals str(x) + 1 iediately before it inserts a node x. Solution to Proble 1. The run of the algorith is divided into tie-steps. As we will show in Section 4.2, there are O(r) tie-steps in all. At each tie-step, each processor executes one step of McCreight's algorith in O(1) tie. Following this the processors are organized into ordered lists in a anner to be described; this will take O(log ) tie and O( ) work per tie-step. Thus, the total tie taken is O(r log ) and the total r work done is O(). At each tie-step, two ordered lists are aintained for each node x in T0. 0 The rst list, l 1, contains those processors which either are at node x in the rescanning ode, or are in the scanning ode coparing characters in the strings associated with one 9

10 of the edges leading down fro x. The second list, l 2, contains processors which are waiting at node x, i.e., waiting for the sux link of node x to be set (see solution to Proble 2). If suf(x) is dened then the list l 2 at x is epty. Each list is ordered by the current string lengths of the processors it contains. As we shall show, the only operations needed to update these lists at each tie-step are to partition each list into contiguous sublists, divide each list into a constant nuber of non-contiguous sublists and to erge a constant nuber of lists into a single list. These operations can be accoplished in O(log ) tie and O( ) work per tie-step. r Consider a node x. At each tie-step the following operations are perfored, in addition to those that are routinely perfored in McCreight's algorith. 1. The list of processors in l 1 at node x is split into two ordered lists, one containing processors which seek to go down the edge whose associated substring begins with a 0 and the other containing processors which seek to go down the edge whose associated substring begins with a 1. Let L 0 be the forer list and L 1 be the latter list. We concentrate our description on L 0. L 1 is processed siilarly. 2. All processors in L 0 read in the pointer to the appropriate child y of x. Those processors in L 0 which are in the scanning phase copare their next character; those which are in the rescanning phase check whether the nodes they seek to insert are to be between x and y or not. Following this, an ordered sublist L 0 of L 0 coprising those processors which seek to break the edge e between x and y is obtained. Since processors in l 1 were ordered by their current string lengths, by Fact 1, the processors in L 0 appear in top to botto order of the point at which they seek to break e. This also iplies that all processors which seek to break e at the sae point occur consecutively in L L 0 is divided into sublists; each processor in a sublist seeks to break edge e at the sae point. Let x 1 ; : : : ; x h be the distinct nodes, in order fro top to botto, which processors in L 0 seek to insert between x and y. Each sublist is further reorganized into groups of axial size such that all processors in the sae group have identical characters in the last scanned positions in their respective strings. Note that except for at ost two groups (corresponding to last scanned characters 0,1, respectively) in each sublist, all other groups are singleton groups (because the $ i 's are all utually distinct). Consider a particular x i. Let be the rst processor in the sublist associated with x i. creates the node x i and akes it a child of x i?1 if i > 1, and of x otherwise. In addition, if i = h, akes y a child of x h. Next, sets suf(z i ); suf(zi) 0 to x i, where z i ; z 0 were the last nodes inserted by the processors in the sublist of i L0 associated with x i (note that there are at ost two such nodes). The rst processor in each group in the sublist associated with x i creates a new child of x i ; For the purpose of analysis, each such processor is said to have inserted x i while all other processors in the above sublist are said to have sought to insert x i. 4. For each x i and newly created child v of x i, let P denote the group of processors such that the rst processor in P creates v. The rst processor in P either continues its rescanning phase or starts a new rescanning phase. Consider processor which is in P but not the rst processor in p. If is in the rescanning phase, then it begins a new scanning phase fro x i at the next tie-step (In McCreight's algorith, when the 10

11 node seeks to insert already exists, begins a new scanning phase fro that node. The above situation is siilar). Suppose was already in the scanning phase. Further, suppose is associated with p l, 1 l k. sought to insert node x i after perforing an unsuccessful coparison involving p l [len(x i )+1]. then continues its scanning phase in the next tie-step by coparing p l [len(x i ) + 2] with the second character in the string associated with the edge between x i and v; note that p l [len(x i ) + 1] is guaranteed to atch the rst character in this string. 5. The new lists l 1 and l 2 are obtained for the nodes x; x 1 ; : : : ; x h as follows. Let z; z 0 be the two nodes, if any, such that suf(z) = x and suf(z 0 ) = x (at least one of z; z 0 exists after the rst sux of each p l, 1 l k, has been inserted). Let y 0 be the parent of x at the beginning of the current tie-step. Note that y 0 ay no longer be the parent of x. The new list l 1 at x coprises processors derived fro the old lists l 1 at x, y 0, z and z 0 and the old lists l 2 at z; z 0. The new list l 1 at x i, 1 i h, coprises processors derived fro the old lists l 1 at x, z i and zi, 0 and the old lists l 2 at z i and z 0 i (z i ; z 0 i were dened in Step 3). If suf(x) is dened then the new list l 2 at x is epty; otherwise, the new list l 2 at x is obtained by inserting into the old list l 2 at x those processors in the sublist associated with x 1 which are the rst processors in their respective groups. The new list l 2 at x h is epty. The new list l 2 at x i, 1 i < h, contains those processors in the sublist associated with x i+1 which are the rst processors in their respective groups. Note that these processors are now in the rescanning phase. Note that the processors in the old list l 1 at x contribute only to the new lists l 1 at x; x 1 ; : : : ; x h ; y; suf(x). The old list l 2 at x either reains unchanged, or has soe processors fro the old list l 1 at x inserted into it, or becoes part of the new list l 1 at suf(x). Further, recall that those processors in the old list l 1 at x which ove to the the new lists l 1 at x 1 ; : : : ; x h appear in order in the old list l 1 at x, i.e., a processor which oves to the new list l 1 at x j appears after a processor which oves to the new list l 1 at x j 0 if j > j 0. In addition, note that the current string length of each processor in soe old list l 1 can change by at ost one and the current string length of each processor in soe old list l 2 reains unchanged. It can easily be checked that all new lists can be derived fro old lists by partitioning each old list into a nuber of contiguous sublists, dividing each old list into a constant nuber of non-contiguous sublists, and erging together a constant nuber of the lists. Therefore the new lists can easily be obtained in O(log ) tie and O( ) work. r The following fact is noteworthy; it follows fro point 4 above. Fact 2 Consider one scanning phase of a processor which processes p l, 1 l k. Suppose this scanning phase begins with a coparison at p l [i] and ends with an unsuccessful coparison at p l [j]. Then each character in p l [i : : : j] is copared exactly once in this scanning phase, one character in each tie step. Reark. We reark that an array storing, for each index j, 1 j, the leaf x of T 0 such that p[j : : : j + r? 1] = str(x) can be obtained in the process of constructing T 0 without any tie or work overhead. In addition, for each leaf x of T 0, a list of indices j 11

12 root H j Hj+1 H j Hj+1 H 1 H 2 H3 H h x y x 1 x 2 z suf (z) x j y x 3 sux link x h x j+1 (a) (b) (c) Figure 3: The sequences H i. such that p[j : : : j + r? 1] = str(x) can also be obtained in the process of constructing T The Analysis Since processors spend tie waiting in the l 2 lists at various nodes in T 0 0, it is not obvious that the total nuber of tie-steps is O(r). We show that this is indeed the case. Denitions. p(x) is dened to be the parent of x when x is inserted. Let root denote the root node. p(root) is dened to be root. For a node x in T 0, let at 0 x denote the tie-step in which node x is inserted in T 0 0. Consider a particular processor which is associated with soe piece of s. Let 1 ; 2 ; : : : ; h, h 2r, be the sequence of leaves inserted by and let x i = p( i ). 1 ; : : : ; h correspond to the suxes (in decreasing length order, respectively) of the piece of s processed by. The Node Sequences H i. We dene node sequences H i, for 1 i h. The rst node in each sequence is root. The last node in sequence H i will be x i. See Fig.3a. For each node x in sequence H i, we will dene a tie-step t x;i. t root;i is dened to be 1 for all i. If x follows y in H i then t x;i will be greater than t y;i and x will be a strict descendant of y in T0. 0 As we will show, the above denitions will guarantee that node x is in T0 0 by tie-step t x;i, i.e., at x t x;i. Sequence H 1. The rst node in H 1 is the root node root and t root;1 = 1. Consider the sequence S of nodes nally on the path fro root to x 1 in that order, with both endpoints excluded. The rst node z in S such that at z t root;1 + 1 is added to H 1 and t z;1 is dened to be t root; Next, the rst node z 0 in S following z such that at z 0 t root;

13 is added to H 1 and t z 0 ;1 is dened to be t root; This process is continued until no further nodes in S can be added to H 1. Then x 1 is added to H 1. t x1 ;1 is dened to be t root;1 + len(x 1 )? len(root) + 1 = len(x 1 ) + 2. Note that if a processor traverses the path fro root downwards towards x 1 starting at tie-step 1, then the only nodes it can encounter are the nodes added to H 1 above. The Reaining Sequences. Sequence H j+1, j 1, is dened next, assuing that H j has already been dened. H j+1 will contain as a subsequence (not necessarily contiguous) the nodes suf(x), where x is in H j. Suppose H j+1 has been dened up to suf(x) for soe x in H j. Let y = suf(x). Let z be the node following x in H j, if any. There are two cases to consider. If z is dened then we describe how to augent H j+1 until suf(z) has been included. If z is not dened then we describe how the rest of the sequence H j+1 is constructed. First, suppose x 6= x j, i.e., z is dened. See Fig.3b. Let t = axft y;j+1 ; t z;j g. Consider the sequence S of nodes nally on the path fro y to suf(z) in that order, with y and suf(z) excluded. The rst node z 0 in S such that at z 0 t + 1 is added to H j+1 and t z 0 ;j+1 is dened to be t + 1. Next, the rst node z 00 in S following z 0 such that at z 00 t + 2 is added to H j+1 and t z 00 ;j+1 is dened to be t + 2. This process is continued until no further nodes in S can be added to H j+1. Then suf(z) is added to H j+1. If S is non-epty then t suf (z);j+1 is dened to be t w;j+1 + 1, where w 2 S is the node preceding suf(z) in H j+1. If S is epty then t suf (z);j+1 = t + 1. Note that if a processor traverses the path fro y downwards towards suf(z) starting at tie-step t, then the only nodes it can encounter are the nodes added to H j+1 above. Next, suppose z is not dened, i.e., x = x j. If y = x j+1 then H j+1 is fully dened. So suppose y 6= x j+1. See Fig.3c. Then begins a new scanning phase fro y. In this case, the construction of H j+1 is siilar to that of H 1. Let t = t y;j+1. Consider the sequence S of nodes nally on the path fro y to x j+1 in that order, with both endpoints excluded. The rst node z 0 in S such that at z 0 t + 1 is added to H j+1 and t z 0 ;j+1 is dened to be t + 1. Next, the rst node z 00 in S following z 0 such that at z 00 t + 2 is added to H j+1 and t z 00 ;j+1 is dened to be t + 2. This process is continued until no further nodes in S can be added to H j+1. Then x j+1 is added to H j+1 and t xj+1 ;j+1 is dened to be t y;j+1 + len(x j+1 )? len(y) + 1. Again, note that if a processor traverses the path fro y downwards towards suf(z) starting at tie-step t, then the only nodes it can encounter are the nodes added to H j+1 above. Analyzing the Sequences. The following key lea holds for the above dened sequences. The proof of the lea is given in the Appendix 1. Here we only sketch the intuition. Lea 4.1 If x 2 H i, 1 i h, then at x t x;i. Intuition. The intuition behind this key lea is the following. First, note that if x does not have a sux link into it fro a node in H i?1 and if x 6= x i, the lea is true by denition. We give the intuition here as to why the lea is true for nodes which have sux links fro nodes in the previous sequence. 13

14 Let z 0 ; z f be two consecutive nodes in sequence H i. Assue that at zf t zf ;i and at suf (z0 ) t suf (z0 );i+1. We show that at suf (zf ) < t suf (zf );i+1. We illustrate the intuition with the easier case, i.e., when z 0 = p(z f ). Then the processor which inserts z f will wait at z 0 at ost until tie-step axfat zf ; at suf (z0 )g axft zf ;i; t suf (z0 );i+1g. After this tie-step, the above processor starts its search for suf ( z f ). By the way H i+1 is dened, the only nodes that the processor can encounter in this process are those in H i+1 strictly between suf(z 0 ) and suf(z f ); let f be the nuber of such nodes. Therefore, by tie-step axft zf ;i; t suf (z0 );i+1 + f + 1g t suf (zf );i+1, the above processor would either have located suf(z f ), if it already exists, or inserted suf(z f ), otherwise. The harder case is when z 0 6= p(z f ). Suppose there exist nodes z 1 ; : : : ; z f?1 such that p(z f ) = z f?1, p(z f?1 ) = z f?2 and so on until p(z 1 ) = z 0. This is really the bad case because the processor that inserted z f could be waiting at z f?1, the processor that inserted z f?1 could be waiting at z f?2 and so on. However, the desired result can again be obtained by just repeating the arguent of the previous paragraph with z 0 ; z 1, then z 1 ; z 2, and so on until z f?1 ; z f, and cobining the results of each of these arguents. We use Lea 4.1 as follows to coplete the analysis. The reaining portion is akin in spirit to the analysis of McCreight's algorith. Denitions. Let be a sequence coprising nodes derived fro the sequences H 1 ; : : : ; H h, dened as follows. Associated with each node x in is a value seq(x) which is i if x is derived fro H i. begins at x h and ends at root. See Fig.4a. seq(x h ) = h and the seq values of the nodes in are non-increasing. If x is a node in, seq(x) = i, x 6= root, then the node y in which follows x is deterined as follows. If i = 1 then y is the node preceding x in H 1 and seq(y) = 1. Suppose i > 1. If there is no node x 0 2 H i?1 such that suf(x 0 ) = x (i.e., x = x i ), then y is the node preceding x in H i and seq(y) = i. Otherwise, suppose that there is a node x 0 2 H i?1 such that suf(x 0 ) = x. Let z 0 be the node which iediately precedes x 0 in H i?1 and let z = suf(z 0 ); Then if t z;i > t x 0 ;i?1, y = z, otherwise, y = x 0. In the forer case seq(y) = i and in the latter case seq(y) = i? 1. is divided into axial subsequences such that for all consecutive x; y's in a particular subsequence, seq(y) = seq(x)? 1, i.e., suf(y) = x. Note that the last subsequence is a singleton subsequence containing only root as suf(root) = root. If x; y are nodes in soe H i, i > 1, y preceding x, then i (x; y) is dened to be the nuber of nodes in H i between y and x. Lea 4.2 Let y 1 ; y 2 ; : : : ; y j be one of the axial subsequences of dened above and suppose seq(y 1 ) = e, i.e., seq(y 2 ) = e? 1; : : : ; seq(y j ) = e? j + 1 (see Fig.4b). Let z be the node which follows y j in, i.e., seq(z) = e? j + 1. If j = 1 then t y1 ;e t z;e + 2(len(y 1 )? len(z)). If j > 1 then t y1 ;e t z;e?j+1 + 2(len(y 1 )? len(z)) + 4j? 3. Proof. First, we show that when t yf ;e?f +1 t z;e?j+1 + 2(len(y j )? len(z)) + 2(j? f + 1)? (len(y f )? len(y 0 f))? 1, for f = j : : : 1, where y 0 f is the node preceding y f in H e?f +1. This clai is shown by induction on f, f = j : : : 1, in the subsequent paragraphs. The lea follows when j = 1 because then y 0 1 = z and len(y 1)? len(z) > 0 and therefore, 14

15 root H 1 H h H e?j+1 H e z a axial subsequence y j yj?1 y 2 y 1 x h (a) (b) Figure 4: The path and a axial subsequence. t y1 ;e t z;e + (len(y 1 )? len(z)) + 1 t z;e + 2(len(y 1 )? len(z)); for j > 1, the lea follows because t y1 ;e t z;e?j+1 + 2(len(y j )? len(z)) + 2j? (len(y 1 )? len(y1)) 0? 1 t z;e?j+1 + 2(len(y j )? len(z)) + 2j? 1 t z;e?j+1 + 2(len(y 1 ) + j? 1? len(z)) + 2j? 1 t z;e?j+1 + 2(len(y 1 )? len(z)) + 4j? 3. As the base case, consider f = j. Then y 0 = z. If y j j = x e?j+1 then t yj ;e?j+1 t z;e?j+1 + (len(y j )? len(z)) + 1. If y j 6= x e?j+1 then by the construction of, t yj ;e?j+1 = t z;e?j+1 + e?j+1 (y j ; z) + 1 t z;e?j+1 + (len(y j )? len(z)) + 1. Next, assue that t yf ;e?f +1 t z;e?j+1 +2(len(y j )?len(z))+2(j?f +1)?(len(y f )? len(y 0 ))?1, f > 1, and consider t f y f?1 ;e?f +2. t yf?1 ;e?f +2 = t yf ;e?f +1+ e?f +2 (y f?1 ; suf(y 0 ))+ f 1 t yf ;e?f +1 + (len(y 0 ) f?1? len(suf(y0 ))) + 1 f t z;e?j+1 + 2(len(y j )? len(z)) + 2(j? f + 1)?(len(y f )?len(yf))?1+(len(y 0 0 f?1)?len(suf(yf)))+1. 0 Since len(y f?1 )?len(y 0 f?1) = (len(y f )?len(yf))?(len(y 0 0 f?1)?len(suf(yf))), 0 we get t yf?1 ;e?f +2 t z;e?j+1 +2(len(y j )? len(z)) + 2(j? (f? 1) + 1)? (len(y f?1 )? len(y 0 f?1)))? 1, as claied. 2 Lea 4.3 t xh ;h 14r. Proof. Let u i ; v i be the extree nodes in the ith subsequence and let size(i) be the nuber of nodes in the ith subsequence. Let f be the nuber of subsequences. u f ; v f = root and u 1 = x h. The su [4size(i)? 3] over all non-singleton subsequences is clearly 5h. Then, by Lea 4.2, t xh ;h? t root;seq(root) 1i<f [2(len(u i )? len(u i+1 ))] + 5h 2len(x h ) + 5h 4r + 10r = 14r. 2 15

16 Corollary 4.4 The total nuber of tie-steps taken by processor is at ost 14r. Theore 4.5 There exists an algorith which constructs the r-st of s in O(r log ) tie and O() work. 5 Copleting the Sux Tree Given an r-sux tree T 0 of s, we show how to copute the coplete sux tree ST of s. This is done in log? log r iterations. In the ith iteration, the 2 i r-st of s is obtained. Denitions. Let T i denote the 2 i r-st of s. Let leaf i (j) be the leaf in T i such that there is an occurrence of str(leaf i (j)) beginning at index j in p. For any leaf l 2 T i, let indices i (l) be the set of indices j such that there is an instance of str(l) beginning at j, i.e., indices i (l) = fjjleaf i (j) = lg. A Naive Algorith. First, we describe a naive algorith which coputes ST in O( log 2 ) work. At the end of iteration i?1, for each index j, 1 j, we keep track of leaf i?1 (j). Consider the ith iteration. T i?1 is preprocessed in O() work and O(log ) tie for order queries on leaves (see Section 2). Following this, the relative order and longest coon prex of any two substrings of p of length at ost 2 i r can be deterined in constant tie and work. Next, all leaves l of T i?1 such that str(l) is not a sux of p are processed in parallel. Consider one such leaf l. The substrings of p of length 2 i r beginning at indices in indices i?1 (l) are sorted; subsequently, one representative is selected fro each equivalence class of identical substrings. Each representative substring is said to represent all the substrings in its equivalence class. Let L i (l) denote the ordered list of these representative substrings. The trie induced by the strings in L i (l) is constructed using the induced trie construction algorith entioned in Section 2 and the root of this trie is erged with l (note that following this erger, l ay no longer be a node in T i ). Coputing L i (l) takes O(log ) tie and O( log ) work over all leaves l of T i?1. Coputing the trie induced by the strings in L i (l) takes O(log ) tie and O() work, over all leaves l of T i?1. The overall algorith is ade to run in O(log 2 ) tie and O( log 2 ) work by starting with r = 1 and perforing O(log ) of the above iterations. Reducing the Work. There are two ain coponents in the above algorith which lead to superlinear work. The rst is obtaining the ordered list L i (l) of representative substrings. The second involves preprocessing T 0 ; T 1 ; : : : for order queries. In our schee too, we construct, for each leaf l of T i?1, the trie induced by the strings in L i (l) in iteration i. This is done as before by rst obtaining L i (l) for each leaf l of T i?1 and then using the induced trie construction algorith. In order to restrict the total work done to O(), we use the fact that ST has a highly repetitive structure. Exploiting this repetitive structure, we show how to obtain the ordered lists L i (l) for all leaves l of T i?1, by sorting and preprocessing (for order queries) only O( ) ites rather than log 2 up to ites. In the process, we ake critical use of the property dened in Corollary 16

17 a a a u u u u u u 0 1 $ 0-link 1-link $-link Figure 5: 1-,0-, and $-links (u is a string and a = 0=1). 3.3 and also of periodicity properties of strings. The overall algorith then takes linear work. The New Schee. T 0 is constructed with r = 2dlog 3 e in O(log 4 ) tie and O() work. Note that by Corollary 3.3, n r = O( ). Next, log iterations are perfored, log 2 each iteration taking O(log 3 ) tie. In iteration i, the ordered list L i (l) is coputed for all leaves l of T i?1 in two steps. First, L i (l) is obtained for a subset of the leaves l of T i?1 ; these leaves are called sources. Next, L i (l) is obtained for all leaves of T i?1 using the coputation in the rst step and the repetitive nature of ST. ST is repetitive in the following sense. If nodes x; y are such that y = suf(x) and there are no other sux links pointing to y then the subtree of ST rooted at y is \identical" to that at x. If nodes x; y; z are such that y = suf(x) and y = suf(z) then the subtree of ST rooted at y is a \erger" of the subtrees rooted at x and z. The issues which need to be addressed next are how sources are chosen, how L i (l) is obtained eciently for sources l, and how L i (l) is obtained for all reaining leaves l. We discuss each of the above three issues in turn. First, we need soe denitions and priitives. Denitions. Let H i?1 be the set of leaves of T i?1. We dene 0-links, 1-links, and $-links as follows (see Fig.5). The 0-link of l 2 H i?1 points to the leaf l 0 in H i?1, if any, such that str(l) and str(l 0 ) are consecutive substrings of p and str(l 0 ) ends in 0. The 1-link of l 2 H i?1 points to the leaf l 0 in H i?1, if any, such that str(l) and str(l 0 ) are consecutive substrings of p and str(l 0 ) ends in 1. The $-link of l 2 H i?1 points to the leaf l 0 in H i?1, if any, such that str(l) and str(l 0 ) are consecutive substrings of p and str(l 0 ) ends in $. 0-links, 1-links, and $-links are collectively called next-links. Let J i?1 denote the digraph whose vertices are the leaves in H i?1 and whose edges are the next-links aong these leaves. In Section 6, we consider the digraph G = J 0 = (H 0 ; E), where E is the set of nextlinks between vertices in H 0, and show how to choose O( log ) = O( ) leaves of T r log 2 0, called origin leaves. In iteration i, source leaves will be deterined using these origin leaves. In Section 7, we show how to obtain L i (l) for source leaves in iteration i. In Section 8 we show how to obtain L i (l) for the rest of the leaves in iteration i. In both sections, for each leaf l of T i?1, we show how a list L 0 i(l) with the following description is obtained 17

18 rst. L 0 i (l) is an ordered list of one representative string fro each equivalence class of the set of substrings of p of length k:2 i?1 r which begin at indices in indices i?1 (l), for soe k, 2 k 3. The value of k is dierent for dierent leaves l. In particular, for source leaves, k = 3. Note that if k = 2 for leaf l, L 0 i(l) = L i (l). Clearly, if the longest coon prex of adjacent strings in L 0 i(l) is known, which will indeed be the case, L i (l) can easily be obtained fro L 0(l) in constant tie and i O(jL0 i (l)j) work. Henceforth, we refer to L 0 i(l) as the list at l. In Section 9, we show how soe data structures dened in Sections 7 and 8 are aintained. 6 Choosing Origin Leaves Recall fro the reark at the end of Section 4.1 that an array storing leaf 0 (j), for each index j, 1 j, was obtained while constructing T 0. The next-links for the set of leaves H 0 in T 0 can be set up easily fro the above inforation and therefore, G can be obtained easily. Equivalently, G can be obtained during the construction of T 0 itself. To select origin leaves, we reove edges fro G until each connected coponent in the resulting graph is a rooted tree of O(log 2 ) height. There will be O( ) such log 2 trees. The roots of each such tree are chosen as origin leaves. In iteration i, a siilar (but iplicit) reoval of edges fro graph J i?1 will be perfored. These reovals will result in connected coponents which are rooted trees of O(log 2 ) height; the roots of these trees will be the sources in iteration i. Before describing how origin leaves are deterined, we need the following denitions and leas. Denitions. Consider an index j, 2 j. Let u = p[j : : : j + r? 1], v = p[j? 1]u and let v 0 equal v with the rst character copleented. j is called a -index if both the following conditions hold. 1. v and v 0 occur at least once each in p. 2. Either v occurs fewer ties than v 0 in p, or v occurs as any ties as v 0 and p[j? 1] = 0. For technical reasons, index 1 is also dened to be a -index. The leaf leaf 0 (j) is called a -node in G if j is a -index. The leaf leaf i?1 (j) is called a -node in J i?1 if j is a -index. Recall fro the reark in Section 4.1 that for each leaf x of T 0, a list of indices j such that p[j : : : j + r? 1] = str(x) was obtained in the process of constructing T 0. Fro this inforation and using the next-links aong the leaves of T 0, all -indices and -nodes in G can be deterined easily using the following lea. Lea 6.1 With the exception of leaf 0 (1), a node in G is a -node only if it has in-degree 2 in G. Further, any node in J h which has in-degree 2 is a -node, where 0 h log. In addition, if there are edges fro nodes l 0 ; l 00 to l in J h, 0 h log, 18

Constant-Space String-Matching. in Sublinear Average Time. (Extended Abstract) Wojciech Rytter z. Warsaw University. and. University of Liverpool

Constant-Space String-Matching. in Sublinear Average Time. (Extended Abstract) Wojciech Rytter z. Warsaw University. and. University of Liverpool Constant-Space String-Matching in Sublinear Average Tie (Extended Abstract) Maxie Crocheore Universite de Marne-la-Vallee Leszek Gasieniec y Max-Planck Institut fur Inforatik Wojciech Rytter z Warsaw University

More information

List Scheduling and LPT Oliver Braun (09/05/2017)

List Scheduling and LPT Oliver Braun (09/05/2017) List Scheduling and LPT Oliver Braun (09/05/207) We investigate the classical scheduling proble P ax where a set of n independent jobs has to be processed on 2 parallel and identical processors (achines)

More information

A Note on Scheduling Tall/Small Multiprocessor Tasks with Unit Processing Time to Minimize Maximum Tardiness

A Note on Scheduling Tall/Small Multiprocessor Tasks with Unit Processing Time to Minimize Maximum Tardiness A Note on Scheduling Tall/Sall Multiprocessor Tasks with Unit Processing Tie to Miniize Maxiu Tardiness Philippe Baptiste and Baruch Schieber IBM T.J. Watson Research Center P.O. Box 218, Yorktown Heights,

More information

Polygonal Designs: Existence and Construction

Polygonal Designs: Existence and Construction Polygonal Designs: Existence and Construction John Hegean Departent of Matheatics, Stanford University, Stanford, CA 9405 Jeff Langford Departent of Matheatics, Drake University, Des Moines, IA 5011 G

More information

Midterm 1 Sample Solution

Midterm 1 Sample Solution Midter 1 Saple Solution NOTE: Throughout the exa a siple graph is an undirected, unweighted graph with no ultiple edges (i.e., no exact repeats of the sae edge) and no self-loops (i.e., no edges fro a

More information

13.2 Fully Polynomial Randomized Approximation Scheme for Permanent of Random 0-1 Matrices

13.2 Fully Polynomial Randomized Approximation Scheme for Permanent of Random 0-1 Matrices CS71 Randoness & Coputation Spring 018 Instructor: Alistair Sinclair Lecture 13: February 7 Disclaier: These notes have not been subjected to the usual scrutiny accorded to foral publications. They ay

More information

Homework 3 Solutions CSE 101 Summer 2017

Homework 3 Solutions CSE 101 Summer 2017 Hoework 3 Solutions CSE 0 Suer 207. Scheduling algoriths The following n = 2 jobs with given processing ties have to be scheduled on = 3 parallel and identical processors with the objective of iniizing

More information

Algorithms for parallel processor scheduling with distinct due windows and unit-time jobs

Algorithms for parallel processor scheduling with distinct due windows and unit-time jobs BULLETIN OF THE POLISH ACADEMY OF SCIENCES TECHNICAL SCIENCES Vol. 57, No. 3, 2009 Algoriths for parallel processor scheduling with distinct due windows and unit-tie obs A. JANIAK 1, W.A. JANIAK 2, and

More information

On Poset Merging. 1 Introduction. Peter Chen Guoli Ding Steve Seiden. Keywords: Merging, Partial Order, Lower Bounds. AMS Classification: 68W40

On Poset Merging. 1 Introduction. Peter Chen Guoli Ding Steve Seiden. Keywords: Merging, Partial Order, Lower Bounds. AMS Classification: 68W40 On Poset Merging Peter Chen Guoli Ding Steve Seiden Abstract We consider the follow poset erging proble: Let X and Y be two subsets of a partially ordered set S. Given coplete inforation about the ordering

More information

A Better Algorithm For an Ancient Scheduling Problem. David R. Karger Steven J. Phillips Eric Torng. Department of Computer Science

A Better Algorithm For an Ancient Scheduling Problem. David R. Karger Steven J. Phillips Eric Torng. Department of Computer Science A Better Algorith For an Ancient Scheduling Proble David R. Karger Steven J. Phillips Eric Torng Departent of Coputer Science Stanford University Stanford, CA 9435-4 Abstract One of the oldest and siplest

More information

Handout 7. and Pr [M(x) = χ L (x) M(x) =? ] = 1.

Handout 7. and Pr [M(x) = χ L (x) M(x) =? ] = 1. Notes on Coplexity Theory Last updated: October, 2005 Jonathan Katz Handout 7 1 More on Randoized Coplexity Classes Reinder: so far we have seen RP,coRP, and BPP. We introduce two ore tie-bounded randoized

More information

time time δ jobs jobs

time time δ jobs jobs Approxiating Total Flow Tie on Parallel Machines Stefano Leonardi Danny Raz y Abstract We consider the proble of optiizing the total ow tie of a strea of jobs that are released over tie in a ultiprocessor

More information

Poly-Bernoulli Numbers and Eulerian Numbers

Poly-Bernoulli Numbers and Eulerian Numbers 1 2 3 47 6 23 11 Journal of Integer Sequences, Vol. 21 (2018, Article 18.6.1 Poly-Bernoulli Nubers and Eulerian Nubers Beáta Bényi Faculty of Water Sciences National University of Public Service H-1441

More information

Tight Bounds for Maximal Identifiability of Failure Nodes in Boolean Network Tomography

Tight Bounds for Maximal Identifiability of Failure Nodes in Boolean Network Tomography Tight Bounds for axial Identifiability of Failure Nodes in Boolean Network Toography Nicola Galesi Sapienza Università di Roa nicola.galesi@uniroa1.it Fariba Ranjbar Sapienza Università di Roa fariba.ranjbar@uniroa1.it

More information

Lecture 21. Interior Point Methods Setup and Algorithm

Lecture 21. Interior Point Methods Setup and Algorithm Lecture 21 Interior Point Methods In 1984, Kararkar introduced a new weakly polynoial tie algorith for solving LPs [Kar84a], [Kar84b]. His algorith was theoretically faster than the ellipsoid ethod and

More information

Faster and Simpler Algorithms for Multicommodity Flow and other. Fractional Packing Problems. Abstract

Faster and Simpler Algorithms for Multicommodity Flow and other. Fractional Packing Problems. Abstract Faster and Sipler Algoriths for Multicoodity Flow and other Fractional Packing Probles Naveen Garg Jochen Koneann y Abstract This paper considers the proble of designing fast, approxiate, cobinatorial

More information

A Self-Organizing Model for Logical Regression Jerry Farlow 1 University of Maine. (1900 words)

A Self-Organizing Model for Logical Regression Jerry Farlow 1 University of Maine. (1900 words) 1 A Self-Organizing Model for Logical Regression Jerry Farlow 1 University of Maine (1900 words) Contact: Jerry Farlow Dept of Matheatics Univeristy of Maine Orono, ME 04469 Tel (07) 866-3540 Eail: farlow@ath.uaine.edu

More information

This model assumes that the probability of a gap has size i is proportional to 1/i. i.e., i log m e. j=1. E[gap size] = i P r(i) = N f t.

This model assumes that the probability of a gap has size i is proportional to 1/i. i.e., i log m e. j=1. E[gap size] = i P r(i) = N f t. CS 493: Algoriths for Massive Data Sets Feb 2, 2002 Local Models, Bloo Filter Scribe: Qin Lv Local Models In global odels, every inverted file entry is copressed with the sae odel. This work wells when

More information

Handout 6 Solutions to Problems from Homework 2

Handout 6 Solutions to Problems from Homework 2 CS 85/185 Fall 2003 Lower Bounds Handout 6 Solutions to Probles fro Hoewor 2 Ait Charabarti Couter Science Dartouth College Solution to Proble 1 1.2: Let f n stand for A 111 n. To decide the roerty f 3

More information

Solutions of some selected problems of Homework 4

Solutions of some selected problems of Homework 4 Solutions of soe selected probles of Hoework 4 Sangchul Lee May 7, 2018 Proble 1 Let there be light A professor has two light bulbs in his garage. When both are burned out, they are replaced, and the next

More information

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 15: Unstructured search and spatial search

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 15: Unstructured search and spatial search Quantu algoriths (CO 781, Winter 2008) Prof Andrew Childs, University of Waterloo LECTURE 15: Unstructured search and spatial search ow we begin to discuss applications of quantu walks to search algoriths

More information

Chapter 6 1-D Continuous Groups

Chapter 6 1-D Continuous Groups Chapter 6 1-D Continuous Groups Continuous groups consist of group eleents labelled by one or ore continuous variables, say a 1, a 2,, a r, where each variable has a well- defined range. This chapter explores:

More information

. The univariate situation. It is well-known for a long tie that denoinators of Pade approxiants can be considered as orthogonal polynoials with respe

. The univariate situation. It is well-known for a long tie that denoinators of Pade approxiants can be considered as orthogonal polynoials with respe PROPERTIES OF MULTIVARIATE HOMOGENEOUS ORTHOGONAL POLYNOMIALS Brahi Benouahane y Annie Cuyt? Keywords Abstract It is well-known that the denoinators of Pade approxiants can be considered as orthogonal

More information

arxiv: v1 [math.nt] 14 Sep 2014

arxiv: v1 [math.nt] 14 Sep 2014 ROTATION REMAINDERS P. JAMESON GRABER, WASHINGTON AND LEE UNIVERSITY 08 arxiv:1409.411v1 [ath.nt] 14 Sep 014 Abstract. We study properties of an array of nubers, called the triangle, in which each row

More information

e-companion ONLY AVAILABLE IN ELECTRONIC FORM

e-companion ONLY AVAILABLE IN ELECTRONIC FORM OPERATIONS RESEARCH doi 10.1287/opre.1070.0427ec pp. ec1 ec5 e-copanion ONLY AVAILABLE IN ELECTRONIC FORM infors 07 INFORMS Electronic Copanion A Learning Approach for Interactive Marketing to a Custoer

More information

1 Identical Parallel Machines

1 Identical Parallel Machines FB3: Matheatik/Inforatik Dr. Syaantak Das Winter 2017/18 Optiizing under Uncertainty Lecture Notes 3: Scheduling to Miniize Makespan In any standard scheduling proble, we are given a set of jobs J = {j

More information

Generalized Queries on Probabilistic Context-Free Grammars

Generalized Queries on Probabilistic Context-Free Grammars IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 20, NO. 1, JANUARY 1998 1 Generalized Queries on Probabilistic Context-Free Graars David V. Pynadath and Michael P. Wellan Abstract

More information

Graphical Models in Local, Asymmetric Multi-Agent Markov Decision Processes

Graphical Models in Local, Asymmetric Multi-Agent Markov Decision Processes Graphical Models in Local, Asyetric Multi-Agent Markov Decision Processes Ditri Dolgov and Edund Durfee Departent of Electrical Engineering and Coputer Science University of Michigan Ann Arbor, MI 48109

More information

Curious Bounds for Floor Function Sums

Curious Bounds for Floor Function Sums 1 47 6 11 Journal of Integer Sequences, Vol. 1 (018), Article 18.1.8 Curious Bounds for Floor Function Sus Thotsaporn Thanatipanonda and Elaine Wong 1 Science Division Mahidol University International

More information

arxiv: v1 [cs.ds] 3 Feb 2014

arxiv: v1 [cs.ds] 3 Feb 2014 arxiv:40.043v [cs.ds] 3 Feb 04 A Bound on the Expected Optiality of Rando Feasible Solutions to Cobinatorial Optiization Probles Evan A. Sultani The Johns Hopins University APL evan@sultani.co http://www.sultani.co/

More information

A note on the multiplication of sparse matrices

A note on the multiplication of sparse matrices Cent. Eur. J. Cop. Sci. 41) 2014 1-11 DOI: 10.2478/s13537-014-0201-x Central European Journal of Coputer Science A note on the ultiplication of sparse atrices Research Article Keivan Borna 12, Sohrab Aboozarkhani

More information

CSE525: Randomized Algorithms and Probabilistic Analysis May 16, Lecture 13

CSE525: Randomized Algorithms and Probabilistic Analysis May 16, Lecture 13 CSE55: Randoied Algoriths and obabilistic Analysis May 6, Lecture Lecturer: Anna Karlin Scribe: Noah Siegel, Jonathan Shi Rando walks and Markov chains This lecture discusses Markov chains, which capture

More information

#A52 INTEGERS 10 (2010), COMBINATORIAL INTERPRETATIONS OF BINOMIAL COEFFICIENT ANALOGUES RELATED TO LUCAS SEQUENCES

#A52 INTEGERS 10 (2010), COMBINATORIAL INTERPRETATIONS OF BINOMIAL COEFFICIENT ANALOGUES RELATED TO LUCAS SEQUENCES #A5 INTEGERS 10 (010), 697-703 COMBINATORIAL INTERPRETATIONS OF BINOMIAL COEFFICIENT ANALOGUES RELATED TO LUCAS SEQUENCES Bruce E Sagan 1 Departent of Matheatics, Michigan State University, East Lansing,

More information

The Weierstrass Approximation Theorem

The Weierstrass Approximation Theorem 36 The Weierstrass Approxiation Theore Recall that the fundaental idea underlying the construction of the real nubers is approxiation by the sipler rational nubers. Firstly, nubers are often deterined

More information

Fixed-to-Variable Length Distribution Matching

Fixed-to-Variable Length Distribution Matching Fixed-to-Variable Length Distribution Matching Rana Ali Ajad and Georg Böcherer Institute for Counications Engineering Technische Universität München, Gerany Eail: raa2463@gail.co,georg.boecherer@tu.de

More information

A := A i : {A i } S. is an algebra. The same object is obtained when the union in required to be disjoint.

A := A i : {A i } S. is an algebra. The same object is obtained when the union in required to be disjoint. 59 6. ABSTRACT MEASURE THEORY Having developed the Lebesgue integral with respect to the general easures, we now have a general concept with few specific exaples to actually test it on. Indeed, so far

More information

Worst-case performance of critical path type algorithms

Worst-case performance of critical path type algorithms Intl. Trans. in Op. Res. 7 (2000) 383±399 www.elsevier.co/locate/ors Worst-case perforance of critical path type algoriths G. Singh, Y. Zinder* University of Technology, P.O. Box 123, Broadway, NSW 2007,

More information

A method to determine relative stroke detection efficiencies from multiplicity distributions

A method to determine relative stroke detection efficiencies from multiplicity distributions A ethod to deterine relative stroke detection eiciencies ro ultiplicity distributions Schulz W. and Cuins K. 2. Austrian Lightning Detection and Inoration Syste (ALDIS), Kahlenberger Str.2A, 90 Vienna,

More information

ASSUME a source over an alphabet size m, from which a sequence of n independent samples are drawn. The classical

ASSUME a source over an alphabet size m, from which a sequence of n independent samples are drawn. The classical IEEE TRANSACTIONS ON INFORMATION THEORY Large Alphabet Source Coding using Independent Coponent Analysis Aichai Painsky, Meber, IEEE, Saharon Rosset and Meir Feder, Fellow, IEEE arxiv:67.7v [cs.it] Jul

More information

26 Impulse and Momentum

26 Impulse and Momentum 6 Ipulse and Moentu First, a Few More Words on Work and Energy, for Coparison Purposes Iagine a gigantic air hockey table with a whole bunch of pucks of various asses, none of which experiences any friction

More information

Prerequisites. We recall: Theorem 2 A subset of a countably innite set is countable.

Prerequisites. We recall: Theorem 2 A subset of a countably innite set is countable. Prerequisites 1 Set Theory We recall the basic facts about countable and uncountable sets, union and intersection of sets and iages and preiages of functions. 1.1 Countable and uncountable sets We can

More information

CS Lecture 13. More Maximum Likelihood

CS Lecture 13. More Maximum Likelihood CS 6347 Lecture 13 More Maxiu Likelihood Recap Last tie: Introduction to axiu likelihood estiation MLE for Bayesian networks Optial CPTs correspond to epirical counts Today: MLE for CRFs 2 Maxiu Likelihood

More information

A1. Find all ordered pairs (a, b) of positive integers for which 1 a + 1 b = 3

A1. Find all ordered pairs (a, b) of positive integers for which 1 a + 1 b = 3 A. Find all ordered pairs a, b) of positive integers for which a + b = 3 08. Answer. The six ordered pairs are 009, 08), 08, 009), 009 337, 674) = 35043, 674), 009 346, 673) = 3584, 673), 674, 009 337)

More information

MULTIPLAYER ROCK-PAPER-SCISSORS

MULTIPLAYER ROCK-PAPER-SCISSORS MULTIPLAYER ROCK-PAPER-SCISSORS CHARLOTTE ATEN Contents 1. Introduction 1 2. RPS Magas 3 3. Ites as a Function of Players and Vice Versa 5 4. Algebraic Properties of RPS Magas 6 References 6 1. Introduction

More information

Stochastic Machine Scheduling with Precedence Constraints

Stochastic Machine Scheduling with Precedence Constraints Stochastic Machine Scheduling with Precedence Constraints Martin Skutella Fakultät II, Institut für Matheatik, Sekr. MA 6-, Technische Universität Berlin, 0623 Berlin, Gerany skutella@ath.tu-berlin.de

More information

Math 262A Lecture Notes - Nechiporuk s Theorem

Math 262A Lecture Notes - Nechiporuk s Theorem Math 6A Lecture Notes - Nechiporuk s Theore Lecturer: Sa Buss Scribe: Stefan Schneider October, 013 Nechiporuk [1] gives a ethod to derive lower bounds on forula size over the full binary basis B The lower

More information

ORIGAMI CONSTRUCTIONS OF RINGS OF INTEGERS OF IMAGINARY QUADRATIC FIELDS

ORIGAMI CONSTRUCTIONS OF RINGS OF INTEGERS OF IMAGINARY QUADRATIC FIELDS #A34 INTEGERS 17 (017) ORIGAMI CONSTRUCTIONS OF RINGS OF INTEGERS OF IMAGINARY QUADRATIC FIELDS Jürgen Kritschgau Departent of Matheatics, Iowa State University, Aes, Iowa jkritsch@iastateedu Adriana Salerno

More information

Block designs and statistics

Block designs and statistics Bloc designs and statistics Notes for Math 447 May 3, 2011 The ain paraeters of a bloc design are nuber of varieties v, bloc size, nuber of blocs b. A design is built on a set of v eleents. Each eleent

More information

arxiv: v2 [cs.ds] 14 Jan 2016

arxiv: v2 [cs.ds] 14 Jan 2016 On the Average-case Coplexity of Pattern Matching with Wildcards Carl Barton Blizard Institute, Bart s and the London School of Medicine and Dentistry, Queen Mary University of London, UK c.barton@qul.ac.uk

More information

COS 424: Interacting with Data. Written Exercises

COS 424: Interacting with Data. Written Exercises COS 424: Interacting with Data Hoework #4 Spring 2007 Regression Due: Wednesday, April 18 Written Exercises See the course website for iportant inforation about collaboration and late policies, as well

More information

Computational and Statistical Learning Theory

Computational and Statistical Learning Theory Coputational and Statistical Learning Theory Proble sets 5 and 6 Due: Noveber th Please send your solutions to learning-subissions@ttic.edu Notations/Definitions Recall the definition of saple based Radeacher

More information

A Low-Complexity Congestion Control and Scheduling Algorithm for Multihop Wireless Networks with Order-Optimal Per-Flow Delay

A Low-Complexity Congestion Control and Scheduling Algorithm for Multihop Wireless Networks with Order-Optimal Per-Flow Delay A Low-Coplexity Congestion Control and Scheduling Algorith for Multihop Wireless Networks with Order-Optial Per-Flow Delay Po-Kai Huang, Xiaojun Lin, and Chih-Chun Wang School of Electrical and Coputer

More information

On the Maximum Number of Codewords of X-Codes of Constant Weight Three

On the Maximum Number of Codewords of X-Codes of Constant Weight Three On the Maxiu Nuber of Codewords of X-Codes of Constant Weight Three arxiv:190.097v1 [cs.it] 2 Mar 2019 Yu Tsunoda Graduate School of Science and Engineering Chiba University 1- Yayoi-Cho Inage-Ku, Chiba

More information

DSPACE(n)? = NSPACE(n): A Degree Theoretic Characterization

DSPACE(n)? = NSPACE(n): A Degree Theoretic Characterization DSPACE(n)? = NSPACE(n): A Degree Theoretic Characterization Manindra Agrawal Departent of Coputer Science and Engineering Indian Institute of Technology, Kanpur 208016, INDIA eail: anindra@iitk.ernet.in

More information

Feature Extraction Techniques

Feature Extraction Techniques Feature Extraction Techniques Unsupervised Learning II Feature Extraction Unsupervised ethods can also be used to find features which can be useful for categorization. There are unsupervised ethods that

More information

On Certain C-Test Words for Free Groups

On Certain C-Test Words for Free Groups Journal of Algebra 247, 509 540 2002 doi:10.1006 jabr.2001.9001, available online at http: www.idealibrary.co on On Certain C-Test Words for Free Groups Donghi Lee Departent of Matheatics, Uni ersity of

More information

New Slack-Monotonic Schedulability Analysis of Real-Time Tasks on Multiprocessors

New Slack-Monotonic Schedulability Analysis of Real-Time Tasks on Multiprocessors New Slack-Monotonic Schedulability Analysis of Real-Tie Tasks on Multiprocessors Risat Mahud Pathan and Jan Jonsson Chalers University of Technology SE-41 96, Göteborg, Sweden {risat, janjo}@chalers.se

More information

A Note on Online Scheduling for Jobs with Arbitrary Release Times

A Note on Online Scheduling for Jobs with Arbitrary Release Times A Note on Online Scheduling for Jobs with Arbitrary Release Ties Jihuan Ding, and Guochuan Zhang College of Operations Research and Manageent Science, Qufu Noral University, Rizhao 7686, China dingjihuan@hotail.co

More information

Kernel Methods and Support Vector Machines

Kernel Methods and Support Vector Machines Intelligent Systes: Reasoning and Recognition Jaes L. Crowley ENSIAG 2 / osig 1 Second Seester 2012/2013 Lesson 20 2 ay 2013 Kernel ethods and Support Vector achines Contents Kernel Functions...2 Quadratic

More information

Estimating Entropy and Entropy Norm on Data Streams

Estimating Entropy and Entropy Norm on Data Streams Estiating Entropy and Entropy Nor on Data Streas Ait Chakrabarti 1, Khanh Do Ba 1, and S. Muthukrishnan 2 1 Departent of Coputer Science, Dartouth College, Hanover, NH 03755, USA 2 Departent of Coputer

More information

Model Fitting. CURM Background Material, Fall 2014 Dr. Doreen De Leon

Model Fitting. CURM Background Material, Fall 2014 Dr. Doreen De Leon Model Fitting CURM Background Material, Fall 014 Dr. Doreen De Leon 1 Introduction Given a set of data points, we often want to fit a selected odel or type to the data (e.g., we suspect an exponential

More information

A New Model for Selfish Routing

A New Model for Selfish Routing A New Model for Selfish Routing Thoas Lücking Marios Mavronicolas Burkhard Monien Manuel Rode Abstract In this work, we introduce and study a new, potentially rich odel for selfish routing over non-cooperative

More information

arxiv: v1 [cs.ds] 29 Jan 2012

arxiv: v1 [cs.ds] 29 Jan 2012 A parallel approxiation algorith for ixed packing covering seidefinite progras arxiv:1201.6090v1 [cs.ds] 29 Jan 2012 Rahul Jain National U. Singapore January 28, 2012 Abstract Penghui Yao National U. Singapore

More information

Genetic Quantum Algorithm and its Application to Combinatorial Optimization Problem

Genetic Quantum Algorithm and its Application to Combinatorial Optimization Problem Genetic Quantu Algorith and its Application to Cobinatorial Optiization Proble Kuk-Hyun Han Dept. of Electrical Engineering, KAIST, 373-, Kusong-dong Yusong-gu Taejon, 305-70, Republic of Korea khhan@vivaldi.kaist.ac.kr

More information

Revealed Preference and Stochastic Demand Correspondence: A Unified Theory

Revealed Preference and Stochastic Demand Correspondence: A Unified Theory Revealed Preference and Stochastic Deand Correspondence: A Unified Theory Indraneel Dasgupta School of Econoics, University of Nottingha, Nottingha NG7 2RD, UK. E-ail: indraneel.dasgupta@nottingha.ac.uk

More information

1 Proof of learning bounds

1 Proof of learning bounds COS 511: Theoretical Machine Learning Lecturer: Rob Schapire Lecture #4 Scribe: Akshay Mittal February 13, 2013 1 Proof of learning bounds For intuition of the following theore, suppose there exists a

More information

Lecture 9 November 23, 2015

Lecture 9 November 23, 2015 CSC244: Discrepancy Theory in Coputer Science Fall 25 Aleksandar Nikolov Lecture 9 Noveber 23, 25 Scribe: Nick Spooner Properties of γ 2 Recall that γ 2 (A) is defined for A R n as follows: γ 2 (A) = in{r(u)

More information

Convex Programming for Scheduling Unrelated Parallel Machines

Convex Programming for Scheduling Unrelated Parallel Machines Convex Prograing for Scheduling Unrelated Parallel Machines Yossi Azar Air Epstein Abstract We consider the classical proble of scheduling parallel unrelated achines. Each job is to be processed by exactly

More information

Course Notes for EE227C (Spring 2018): Convex Optimization and Approximation

Course Notes for EE227C (Spring 2018): Convex Optimization and Approximation Course Notes for EE227C (Spring 2018): Convex Optiization and Approxiation Instructor: Moritz Hardt Eail: hardt+ee227c@berkeley.edu Graduate Instructor: Max Sichowitz Eail: sichow+ee227c@berkeley.edu October

More information

Support Vector Machine Classification of Uncertain and Imbalanced data using Robust Optimization

Support Vector Machine Classification of Uncertain and Imbalanced data using Robust Optimization Recent Researches in Coputer Science Support Vector Machine Classification of Uncertain and Ibalanced data using Robust Optiization RAGHAV PAT, THEODORE B. TRAFALIS, KASH BARKER School of Industrial Engineering

More information

Bipartite subgraphs and the smallest eigenvalue

Bipartite subgraphs and the smallest eigenvalue Bipartite subgraphs and the sallest eigenvalue Noga Alon Benny Sudaov Abstract Two results dealing with the relation between the sallest eigenvalue of a graph and its bipartite subgraphs are obtained.

More information

Revealed Preference with Stochastic Demand Correspondence

Revealed Preference with Stochastic Demand Correspondence Revealed Preference with Stochastic Deand Correspondence Indraneel Dasgupta School of Econoics, University of Nottingha, Nottingha NG7 2RD, UK. E-ail: indraneel.dasgupta@nottingha.ac.uk Prasanta K. Pattanaik

More information

arxiv: v2 [math.co] 8 Mar 2018

arxiv: v2 [math.co] 8 Mar 2018 Restricted lonesu atrices arxiv:1711.10178v2 [ath.co] 8 Mar 2018 Beáta Bényi Faculty of Water Sciences, National University of Public Service, Budapest beata.benyi@gail.co March 9, 2018 Keywords: enueration,

More information

Tight Information-Theoretic Lower Bounds for Welfare Maximization in Combinatorial Auctions

Tight Information-Theoretic Lower Bounds for Welfare Maximization in Combinatorial Auctions Tight Inforation-Theoretic Lower Bounds for Welfare Maxiization in Cobinatorial Auctions Vahab Mirrokni Jan Vondrák Theory Group, Microsoft Dept of Matheatics Research Princeton University Redond, WA 9805

More information

EXPLICIT CONGRUENCES FOR EULER POLYNOMIALS

EXPLICIT CONGRUENCES FOR EULER POLYNOMIALS EXPLICIT CONGRUENCES FOR EULER POLYNOMIALS Zhi-Wei Sun Departent of Matheatics, Nanjing University Nanjing 10093, People s Republic of China zwsun@nju.edu.cn Abstract In this paper we establish soe explicit

More information

Randomized Recovery for Boolean Compressed Sensing

Randomized Recovery for Boolean Compressed Sensing Randoized Recovery for Boolean Copressed Sensing Mitra Fatei and Martin Vetterli Laboratory of Audiovisual Counication École Polytechnique Fédéral de Lausanne (EPFL) Eail: {itra.fatei, artin.vetterli}@epfl.ch

More information

N-Point. DFTs of Two Length-N Real Sequences

N-Point. DFTs of Two Length-N Real Sequences Coputation of the DFT of In ost practical applications, sequences of interest are real In such cases, the syetry properties of the DFT given in Table 5. can be exploited to ake the DFT coputations ore

More information

Deflation of the I-O Series Some Technical Aspects. Giorgio Rampa University of Genoa April 2007

Deflation of the I-O Series Some Technical Aspects. Giorgio Rampa University of Genoa April 2007 Deflation of the I-O Series 1959-2. Soe Technical Aspects Giorgio Rapa University of Genoa g.rapa@unige.it April 27 1. Introduction The nuber of sectors is 42 for the period 1965-2 and 38 for the initial

More information

Left-to-right maxima in words and multiset permutations

Left-to-right maxima in words and multiset permutations Left-to-right axia in words and ultiset perutations Ay N. Myers Saint Joseph s University Philadelphia, PA 19131 Herbert S. Wilf University of Pennsylvania Philadelphia, PA 19104

More information

New upper bound for the B-spline basis condition number II. K. Scherer. Institut fur Angewandte Mathematik, Universitat Bonn, Bonn, Germany.

New upper bound for the B-spline basis condition number II. K. Scherer. Institut fur Angewandte Mathematik, Universitat Bonn, Bonn, Germany. New upper bound for the B-spline basis condition nuber II. A proof of de Boor's 2 -conjecture K. Scherer Institut fur Angewandte Matheati, Universitat Bonn, 535 Bonn, Gerany and A. Yu. Shadrin Coputing

More information

Research Article On the Isolated Vertices and Connectivity in Random Intersection Graphs

Research Article On the Isolated Vertices and Connectivity in Random Intersection Graphs International Cobinatorics Volue 2011, Article ID 872703, 9 pages doi:10.1155/2011/872703 Research Article On the Isolated Vertices and Connectivity in Rando Intersection Graphs Yilun Shang Institute for

More information

Acyclic Colorings of Directed Graphs

Acyclic Colorings of Directed Graphs Acyclic Colorings of Directed Graphs Noah Golowich Septeber 9, 014 arxiv:1409.7535v1 [ath.co] 6 Sep 014 Abstract The acyclic chroatic nuber of a directed graph D, denoted χ A (D), is the iniu positive

More information

When Short Runs Beat Long Runs

When Short Runs Beat Long Runs When Short Runs Beat Long Runs Sean Luke George Mason University http://www.cs.gu.edu/ sean/ Abstract What will yield the best results: doing one run n generations long or doing runs n/ generations long

More information

L S is not p m -hard for NP. Moreover, we prove for every L NP P, that there exists a sparse S EXP such that L S is not p m -hard for NP.

L S is not p m -hard for NP. Moreover, we prove for every L NP P, that there exists a sparse S EXP such that L S is not p m -hard for NP. Properties of NP-Coplete Sets Christian Glaßer, A. Pavan, Alan L. Selan, Saik Sengupta January 15, 2004 Abstract We study several properties of sets that are coplete for NP. We prove that if L is an NP-coplete

More information

Approximation in Stochastic Scheduling: The Power of LP-Based Priority Policies

Approximation in Stochastic Scheduling: The Power of LP-Based Priority Policies Approxiation in Stochastic Scheduling: The Power of -Based Priority Policies Rolf Möhring, Andreas Schulz, Marc Uetz Setting (A P p stoch, r E( w and (B P p stoch E( w We will assue that the processing

More information

On the Inapproximability of Vertex Cover on k-partite k-uniform Hypergraphs

On the Inapproximability of Vertex Cover on k-partite k-uniform Hypergraphs On the Inapproxiability of Vertex Cover on k-partite k-unifor Hypergraphs Venkatesan Guruswai and Rishi Saket Coputer Science Departent Carnegie Mellon University Pittsburgh, PA 1513. Abstract. Coputing

More information

3D acoustic wave modeling with a time-space domain dispersion-relation-based Finite-difference scheme

3D acoustic wave modeling with a time-space domain dispersion-relation-based Finite-difference scheme P-8 3D acoustic wave odeling with a tie-space doain dispersion-relation-based Finite-difference schee Yang Liu * and rinal K. Sen State Key Laboratory of Petroleu Resource and Prospecting (China University

More information

On Process Complexity

On Process Complexity On Process Coplexity Ada R. Day School of Matheatics, Statistics and Coputer Science, Victoria University of Wellington, PO Box 600, Wellington 6140, New Zealand, Eail: ada.day@cs.vuw.ac.nz Abstract Process

More information

Analyzing Simulation Results

Analyzing Simulation Results Analyzing Siulation Results Dr. John Mellor-Cruey Departent of Coputer Science Rice University johnc@cs.rice.edu COMP 528 Lecture 20 31 March 2005 Topics for Today Model verification Model validation Transient

More information

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 60, NO. 2, FEBRUARY ETSP stands for the Euclidean traveling salesman problem.

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 60, NO. 2, FEBRUARY ETSP stands for the Euclidean traveling salesman problem. IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 60, NO., FEBRUARY 015 37 Target Assignent in Robotic Networks: Distance Optiality Guarantees and Hierarchical Strategies Jingjin Yu, Meber, IEEE, Soon-Jo Chung,

More information

Improved Guarantees for Agnostic Learning of Disjunctions

Improved Guarantees for Agnostic Learning of Disjunctions Iproved Guarantees for Agnostic Learning of Disjunctions Pranjal Awasthi Carnegie Mellon University pawasthi@cs.cu.edu Avri Blu Carnegie Mellon University avri@cs.cu.edu Or Sheffet Carnegie Mellon University

More information

arxiv: v1 [cs.ds] 17 Mar 2016

arxiv: v1 [cs.ds] 17 Mar 2016 Tight Bounds for Single-Pass Streaing Coplexity of the Set Cover Proble Sepehr Assadi Sanjeev Khanna Yang Li Abstract arxiv:1603.05715v1 [cs.ds] 17 Mar 2016 We resolve the space coplexity of single-pass

More information

Defect-Aware SOC Test Scheduling

Defect-Aware SOC Test Scheduling Defect-Aware SOC Test Scheduling Erik Larsson +, Julien Pouget*, and Zebo Peng + Ebedded Systes Laboratory + LIRMM* Departent of Coputer Science Montpellier 2 University Linköpings universitet CNRS Sweden

More information

lecture 37: Linear Multistep Methods: Absolute Stability, Part I lecture 38: Linear Multistep Methods: Absolute Stability, Part II

lecture 37: Linear Multistep Methods: Absolute Stability, Part I lecture 38: Linear Multistep Methods: Absolute Stability, Part II lecture 37: Linear Multistep Methods: Absolute Stability, Part I lecture 3: Linear Multistep Methods: Absolute Stability, Part II 5.7 Linear ultistep ethods: absolute stability At this point, it ay well

More information

Improved multiprocessor global schedulability analysis

Improved multiprocessor global schedulability analysis Iproved ultiprocessor global schedulability analysis Sanjoy Baruah The University of North Carolina at Chapel Hill Vincenzo Bonifaci Max-Planck Institut für Inforatik Sebastian Stiller Technische Universität

More information

INDEPENDENT SETS IN HYPERGRAPHS

INDEPENDENT SETS IN HYPERGRAPHS INDEPENDENT SETS IN HYPERGRAPHS Abstract. Many iportant theores and conjectures in cobinatorics, such as the theore of Szeerédi on arithetic progressions and the Erdős-Stone Theore in extreal graph theory,

More information

Birthday Paradox Calculations and Approximation

Birthday Paradox Calculations and Approximation Birthday Paradox Calculations and Approxiation Joshua E. Hill InfoGard Laboratories -March- v. Birthday Proble In the birthday proble, we have a group of n randoly selected people. If we assue that birthdays

More information

Uncoupled automata and pure Nash equilibria

Uncoupled automata and pure Nash equilibria Int J Gae Theory (200) 39:483 502 DOI 0.007/s0082-00-0227-9 ORIGINAL PAPER Uncoupled autoata and pure Nash equilibria Yakov Babichenko Accepted: 2 February 200 / Published online: 20 March 200 Springer-Verlag

More information

Iterative Decoding of LDPC Codes over the q-ary Partial Erasure Channel

Iterative Decoding of LDPC Codes over the q-ary Partial Erasure Channel 1 Iterative Decoding of LDPC Codes over the q-ary Partial Erasure Channel Rai Cohen, Graduate Student eber, IEEE, and Yuval Cassuto, Senior eber, IEEE arxiv:1510.05311v2 [cs.it] 24 ay 2016 Abstract In

More information

In this chapter, we consider several graph-theoretic and probabilistic models

In this chapter, we consider several graph-theoretic and probabilistic models THREE ONE GRAPH-THEORETIC AND STATISTICAL MODELS 3.1 INTRODUCTION In this chapter, we consider several graph-theoretic and probabilistic odels for a social network, which we do under different assuptions

More information