Results 1 
9 of
9
Threesomes, degenerates, and love triangles
 In Proc. 55th Annu. IEEE Sympos. Found. Comput. Sci. (FOCS
, 2014
"... The 3SUM problem is to decide, given a set of n real numbers, whether any three sum to zero. It is widely conjectured that a trivial Opn2qtime algorithm is optimal and over the years the consequences of this conjecture have been revealed. This 3SUM conjecture implies Ωpn2q lower bounds on numerous ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
The 3SUM problem is to decide, given a set of n real numbers, whether any three sum to zero. It is widely conjectured that a trivial Opn2qtime algorithm is optimal and over the years the consequences of this conjecture have been revealed. This 3SUM conjecture implies Ωpn2q lower bounds on numerous problems in computational geometry and a variant of the conjecture implies strong lower bounds on triangle enumeration, dynamic graph algorithms, and string matching data structures. In this paper we refute the 3SUM conjecture. We prove that the decision tree complexity of 3SUM is Opn3{2?log nq and give two subquadratic 3SUM algorithms, a deterministic one running in Opn2{plog n { log log nq2{3q time and a randomized one running in Opn2plog log nq2 { log nq time with high probability. Our results lead directly to improved bounds for kvariate linear degeneracy testing for all odd k ě 3. The problem is to decide, given a linear function fpx1,..., xkq “ α0 `ř1ďiďk αixi and a set A Ă R, whether 0 P fpAkq. We show the decision tree complexity of this problem is Opnk{2?log nq. Finally, we give a subcubic algorithm for a generalization of the pmin,`qproduct over realvalued matrices and apply it to the problem of finding zeroweight triangles in weighted graphs. We give a depthOpn5{2?log nq decision tree for this problem, as well as an algorithm running in time Opn3plog log nq2 { log nq. 1
The Kclique Densest Subgraph Problem
"... Numerous graph mining applications rely on detecting subgraphs which are large nearcliques. Since formulations that are geared towards finding large nearcliques are NPhard and frequently inapproximable due to connections with the Maximum Clique problem, the polytime solvable densest subgraph pr ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
(Show Context)
Numerous graph mining applications rely on detecting subgraphs which are large nearcliques. Since formulations that are geared towards finding large nearcliques are NPhard and frequently inapproximable due to connections with the Maximum Clique problem, the polytime solvable densest subgraph problem which maximizes the average degree over all possible subgraphs “lies at the core of large scale data mining”[10]. However, frequently the densest subgraph problem fails in detecting large nearcliques in networks. In this work, we introduce the kclique densest subgraph problem, k ≥ 2. This generalizes the well studied densest subgraph problem which is obtained as a special case for k = 2. For k = 3 we obtain a novel formulation which we refer to as the triangle densest subgraph problem: given a graph G(V,E), find a subset of vertices S ∗ such that τ(S∗) = max S⊆V t(S)
Multicore Triangle Computations Without Tuning
"... Abstract—Triangle counting and enumeration has emerged as a basic tool in largescale network analysis, fueling the development of algorithms that scale to massive graphs. Most of the existing algorithms, however, are designed for the distributedmemory setting or the externalmemory setting, and ca ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
(Show Context)
Abstract—Triangle counting and enumeration has emerged as a basic tool in largescale network analysis, fueling the development of algorithms that scale to massive graphs. Most of the existing algorithms, however, are designed for the distributedmemory setting or the externalmemory setting, and cannot take full advantage of a multicore machine, whose capacity has grown to accommodate even the largest of realworld graphs. This paper describes the design and implementation of simple and fast multicore parallel algorithms for exact, as well as approximate, triangle counting and other triangle computations that scale to billions of nodes and edges. Our algorithms are provably cachefriendly, easy to implement in a language that supports dynamic parallelism, such as Cilk Plus or OpenMP, and do not require parameter tuning. On a 40core machine with twoway hyperthreading, our parallel exact global and local triangle counting algorithms obtain speedups of 17–50x on a set of realworld and synthetic graphs, and are faster than previous parallel exact triangle counting algorithms. We can compute the exact triangle count of the Yahoo Web graph (over 6 billion edges) in under 1.5 minutes. In addition, for approximate triangle counting, we are able to approximate the count for the Yahoo graph to within 99.6 % accuracy in under 10 seconds, and for a given accuracy we are much faster than existing parallel approximate triangle counting implementations. I.
Dynamic Set Intersection
"... Abstract. Consider the problem of maintaining a family F of dynamic sets subject to insertions, deletions, and setintersection reporting queries: given S, S ′ ∈ F, report every member of S ∩S ′ in any order. We show that in the word RAM model, where w is the word size, given a cap d on the maximum ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Consider the problem of maintaining a family F of dynamic sets subject to insertions, deletions, and setintersection reporting queries: given S, S ′ ∈ F, report every member of S ∩S ′ in any order. We show that in the word RAM model, where w is the word size, given a cap d on the maximum size of any set, we can support set intersection queries in O ( d w / log2 w) expected time, and updates in O(1) expected time. Using this algorithm we can list all t triangles of a graph G = (V,E) in O(m+ mα w / log2 w + t) expected time, where m = E  and α is the arboricity of G. This improves a 30year old triangle enumeration algorithm of Chiba and Nishizeki running in O(mα) time. We provide an incremental data structure on F that supports intersection witness queries, where we only need to find one e ∈ S ∩ S′. Both queries and insertions take O N w / log2 w expected time, where
Declaration
, 2014
"... I Ilias Giechaskiel of Magdalene College, being a candidate for the M.Phil in Advanced Computer Science, hereby declare that this report and the work described in it are my own work, unaided except as may be specified below, and that the report does not contain material that has already been used to ..."
Abstract
 Add to MetaCart
(Show Context)
I Ilias Giechaskiel of Magdalene College, being a candidate for the M.Phil in Advanced Computer Science, hereby declare that this report and the work described in it are my own work, unaided except as may be specified below, and that the report does not contain material that has already been used to any substantial extent for a comparable purpose. Total word count: 14,311 (excluding Appendices A and B)
A Novel Approach to Finding NearCliques: The TriangleDensest Subgraph Problem
, 2014
"... Many graph mining applications rely on detecting subgraphs which are large nearcliques. There exists a dichotomy between the results in the existing work related to this problem: on the one hand formulations that are geared towards finding large nearcliques are NPhard and frequently inapproximabl ..."
Abstract
 Add to MetaCart
(Show Context)
Many graph mining applications rely on detecting subgraphs which are large nearcliques. There exists a dichotomy between the results in the existing work related to this problem: on the one hand formulations that are geared towards finding large nearcliques are NPhard and frequently inapproximable due to connections with the Maximum Clique problem. On the other hand, the densest subgraph problem (DSProblem) which maximizes the average degree over all subgraphs and other indirect approaches which optimize tractable objectives fail to detect large nearcliques in many networks. In this work, we propose a formulation which combines the best of both worlds: it is solvable in polynomial time and succeeds consistently in finding large nearcliques. Surprisingly, our formulation is a simple variation of the DSProblem. Specifically, we define the triangle densest subgraph problem (TDSProblem): given a graph G(V,E), find a subset of vertices S ∗ such that τ(S∗) = max S⊆V t(S) S  , where t(S) is the number of triangles induced by the set S. We provide various exact and approximation algorithms which the solve TDSProblem efficiently. Furthermore, we show how our algorithms adapt to the more general problem of maximizing the kclique average density, k ≥ 2. We illustrate the success of the proposed formulation in extracting large nearcliques from graphs by performing numerous experiments on realworld networks. 1
Sharedmemory parallelism can be simple, . . .
, 2015
"... Parallelism is the key to achieving high performance in computing. However, writing efficient and scalable parallel programs is notoriously difficult, and often requires significant expertise. To address this challenge, it is crucial to provide programmers with highlevel tools to enable them to de ..."
Abstract
 Add to MetaCart
Parallelism is the key to achieving high performance in computing. However, writing efficient and scalable parallel programs is notoriously difficult, and often requires significant expertise. To address this challenge, it is crucial to provide programmers with highlevel tools to enable them to develop solutions efficiently, and at the same time emphasize the theoretical and practical aspects of algorithm design to allow the solutions developed to run efficiently under all possible settings. This thesis addresses this challenge using a threepronged approach consisting of the design of sharedmemory programming techniques, frameworks, and algorithms for important problems in computing. The thesis provides evidence that with appropriate programming techniques, frameworks, and algorithms, sharedmemory programs can be simple, fast, and scalable, both in theory and in practice. The results developed in this thesis serve to ease the transition into the multicore era. The first part of this thesis introduces tools and techniques for deterministic
Wordpacking Algorithms for Dynamic Connectivity and Dynamic Sets
"... We examine several (dynamic) graph and set intersection problems in the wordRAM model with word size w. We begin with Dynamic Connectivity where we need to maintain a fully dynamic graph G = (V,E) with n = V  vertices while supporting (s, t)connectivity queries. To do this, we provide a new simp ..."
Abstract
 Add to MetaCart
We examine several (dynamic) graph and set intersection problems in the wordRAM model with word size w. We begin with Dynamic Connectivity where we need to maintain a fully dynamic graph G = (V,E) with n = V  vertices while supporting (s, t)connectivity queries. To do this, we provide a new simplified worstcase solution for the famous Dynamic Connectivity (which is interesting on its own merit), and then show how in the wordRAM model the query and update cost can be reduced to O( n · lognw log ( wlogn)), assuming w < n1−Ω(1). Since w = Ω(log n), this bound is always O( n) and it is o( n) when w = ω(log n). We then examine the task of maintaining a family F of dynamic sets where insertions and deletions into the sets are allowed, while enabling a set intersection reporting query on sets S1, S2 ∈ F where we wish to report all of the elements in S1 ∩ S2. We first show that given a known upperbound d on the size of any set, we can maintain F so that a set intersection reporting query costs O ( dw/log2w) expected time, and updates cost O(logw) expected time. Using this algorithm we can list all triangles of a graph G = (V,E) in O ( mαw/log2w + t) expected time where m = E, α is the arboricity of G, and t is the size of the output. This is comparable with known algorithms that run in O(mα) time. Next, we provide an incremental data structure on F that supports intersection proof queries in which given S1 and S2 we wish to determine if they intersect, and if they do we require a proof (an element in the intersection). Both queries and insertions of elements into sets take