11,450 research outputs found
Memoization for Unary Logic Programming: Characterizing PTIME
We give a characterization of deterministic polynomial time computation based
on an algebraic structure called the resolution semiring, whose elements can be
understood as logic programs or sets of rewriting rules over first-order terms.
More precisely, we study the restriction of this framework to terms (and logic
programs, rewriting rules) using only unary symbols. We prove it is complete
for polynomial time computation, using an encoding of pushdown automata. We
then introduce an algebraic counterpart of the memoization technique in order
to show its PTIME soundness. We finally relate our approach and complexity
results to complexity of logic programming. As an application of our
techniques, we show a PTIME-completeness result for a class of logic
programming queries which use only unary function symbols.Comment: Soumis {\`a} LICS 201
The Power of Choice in Priority Scheduling
Consider the following random process: we are given queues, into which
elements of increasing labels are inserted uniformly at random. To remove an
element, we pick two queues at random, and remove the element of lower label
(higher priority) among the two. The cost of a removal is the rank of the label
removed, among labels still present in any of the queues, that is, the distance
from the optimal choice at each step. Variants of this strategy are prevalent
in state-of-the-art concurrent priority queue implementations. Nonetheless, it
is not known whether such implementations provide any rank guarantees, even in
a sequential model.
We answer this question, showing that this strategy provides surprisingly
strong guarantees: Although the single-choice process, where we always insert
and remove from a single randomly chosen queue, has degrading cost, going to
infinity as we increase the number of steps, in the two choice process, the
expected rank of a removed element is while the expected worst-case
cost is . These bounds are tight, and hold irrespective of the
number of steps for which we run the process.
The argument is based on a new technical connection between "heavily loaded"
balls-into-bins processes and priority scheduling.
Our analytic results inspire a new concurrent priority queue implementation,
which improves upon the state of the art in terms of practical performance
Low Ply Drawings of Trees
We consider the recently introduced model of \emph{low ply graph drawing}, in
which the ply-disks of the vertices do not have many common overlaps, which
results in a good distribution of the vertices in the plane. The
\emph{ply-disk} of a vertex in a straight-line drawing is the disk centered at
it whose radius is half the length of its longest incident edge. The largest
number of ply-disks having a common overlap is called the \emph{ply-number} of
the drawing.
We focus on trees. We first consider drawings of trees with constant
ply-number, proving that they may require exponential area, even for stars, and
that they may not even exist for bounded-degree trees. Then, we turn our
attention to drawings with logarithmic ply-number and show that trees with
maximum degree always admit such drawings in polynomial area.Comment: This is a complete access version of a paper that will appear in the
proceedings of GD201
- …