Shang-Hua Teng

Learn More
We present algorithms for solving symmetric, diagonally-dominant linear systems to accuracy &#949; in time linear in their number of non-zeros and log (&#954;<inf>f</inf> (A) &#949;), where &#954;<inf>f</inf> (A) is the condition number of the matrix defining the linear system. Our algorithm applies the preconditioned Chebyshev iteration with(More)
We introduce the <italic>smoothed analysis of algorithms</italic>, which is a hybrid of the worst-case and average-case analysis of algorithms. Essentially, we study the performance of algorithms under small random perturbations of their inputs. We show that the shadow-vertex simplex algorithm has polynomial <italic>smoothed complexity</italic>.
We prove that Bimatrix, the problem of finding a Nash equilibrium in a two-player game, is complete for the complexity class <b>PPAD</b> (Polynomial Parity Argument, Directed version) introduced by Papadimitriou in 1991. Our result, building upon the work of Daskalakis et al. [2006a] on the complexity of four-player Nash equilibria, settles a long standing(More)
In this paper we discuss a new type of query in Spatial Databases, called the Trip Planning Query (TPQ). Given a set of points of interest in space, where each point belongs to a specific category, a starting point and a destination , TPQ retrieves the best trip that starts at , passes through at least one point from each category, and ends at . For(More)
Generating local addresses and communication sets is an important issue in distributed-memory implementations of data-parallel languages such as High Performance Fortran. We show that for an array <italic>A</italic> affinely aligned to a <italic>template</italic> that is distributed across <italic>p</italic> processors with a <italic>cyclic(k)</italic>(More)
Let A be any matrix and let A be a slight random perturbation of A. We prove that it is unlikely that A has large condition number. Using this result, we prove it is unlikely that A has large growth factor under Gaussian elimination without pivoting. By combining these results, we bound the smoothed precision needed by Gaussian elimination without pivoting.(More)
We study the design of local algorithms for massive graphs. A local algorithm is one that finds a solution containing or near a given vertex without looking at the whole graph. We present a local clustering algorithm. Our algorithm finds a good cluster—a subset of vertices whose internal connections are significantly richer than its external connections—(More)
We show that every weighted connected graph <i>G</i> contains as a subgraph a spanning tree into which the edges of <i>G</i> can be embedded with average stretch <i>O</i> (log<sup>2</sup> <i>n</i> log log <i>n</i>). Moreover, we show that this tree can be constructed in time <i>O</i> (<i>m</i> log<sup>2</sup><i>n</i>) in general, and in time <i>O</i>(More)
We introduce a new notion of graph sparsification based on spectral similarity of graph Laplacians: spectral sparsification requires that the Laplacian quadratic form of the sparsifier approximate that of the original. This is equivalent to saying that the Laplacian of the sparsifier is a good preconditioner for the Laplacian of the original. We prove that(More)
Spectral partitioning methods use the Fiedler vector—the eigenvector of the second-smallest eigenvalue of the Laplacian matrix—to find a small separator of a graph. These methods are important components of many scientific numerical algorithms and have been demonstrated by experiment to work extremely well. In this paper, we show that spectral partitioning(More)