1,667 research outputs found
Sciduction: Combining Induction, Deduction, and Structure for Verification and Synthesis
Even with impressive advances in automated formal methods, certain problems
in system verification and synthesis remain challenging. Examples include the
verification of quantitative properties of software involving constraints on
timing and energy consumption, and the automatic synthesis of systems from
specifications. The major challenges include environment modeling,
incompleteness in specifications, and the complexity of underlying decision
problems.
This position paper proposes sciduction, an approach to tackle these
challenges by integrating inductive inference, deductive reasoning, and
structure hypotheses. Deductive reasoning, which leads from general rules or
concepts to conclusions about specific problem instances, includes techniques
such as logical inference and constraint solving. Inductive inference, which
generalizes from specific instances to yield a concept, includes algorithmic
learning from examples. Structure hypotheses are used to define the class of
artifacts, such as invariants or program fragments, generated during
verification or synthesis. Sciduction constrains inductive and deductive
reasoning using structure hypotheses, and actively combines inductive and
deductive reasoning: for instance, deductive techniques generate examples for
learning, and inductive reasoning is used to guide the deductive engines.
We illustrate this approach with three applications: (i) timing analysis of
software; (ii) synthesis of loop-free programs, and (iii) controller synthesis
for hybrid systems. Some future applications are also discussed
Sketching, Streaming, and Fine-Grained Complexity of (Weighted) LCS
We study sketching and streaming algorithms for the Longest Common Subsequence problem (LCS) on strings of small alphabet size |Sigma|. For the problem of deciding whether the LCS of strings x,y has length at least L, we obtain a sketch size and streaming space usage of O(L^{|Sigma| - 1} log L). We also prove matching unconditional lower bounds.
As an application, we study a variant of LCS where each alphabet symbol is equipped with a weight that is given as input, and the task is to compute a common subsequence of maximum total weight. Using our sketching algorithm, we obtain an O(min{nm, n + m^{|Sigma|}})-time algorithm for this problem, on strings x,y of length n,m, with n >= m. We prove optimality of this running time up to lower order factors, assuming the Strong Exponential Time Hypothesis
Breaking the -Pass Barrier: A Streaming Algorithm for Maximum Weight Bipartite Matching
Given a weighted bipartite graph with vertices and edges, the
\emph{maximum weight bipartite matching} problem is to find a set of
vertex-disjoint edges with the maximum weight. This classic problem has been
extensively studied for over a century.
In this paper, we present a new streaming algorithm for the maximum weight
bipartite matching problem that uses space and
passes, which breaks the -pass barrier. All the
previous streaming algorithms either require passes or only
find an approximate solution. Our streaming algorithm constructs a subgraph
with edges of the input graph in passes, such
that the subgraph admits the optimal matching with good probability.
Our method combines various ideas from different fields, most notably the
construction of \emph{space-efficient} interior point method (IPM), SDD system
solvers, the isolation lemma, and LP duality. To the best of our knowledge,
this is the first work that implements the SDD solvers and IPMs in the
streaming model in spaces for graph matrices; previous IPM
algorithms only focus on optimizing the running time, regardless of the space
usage
- …