143 research outputs found
Weighted pushdown systems and their application to interprocedural dataflow analysis
AbstractRecently, pushdown systems (PDSs) have been extended to weighted PDSs, in which each transition is labeled with a value, and the goal is to determine the meet-over-all-paths value (for paths that meet a certain criterion). This paper shows how weighted PDSs yield new algorithms for certain classes of interprocedural dataflow-analysis problems
Pushdown automata in statistical machine translation
This article describes the use of pushdown automata (PDA) in the context of statistical machine translation and alignment under a synchronous context-free grammar. We use PDAs to compactly represent the space of candidate translations generated by the grammar when applied to an input sentence. General-purpose PDA algorithms for replacement, composition, shortest path, and expansion are presented. We describe HiPDT, a hierarchical phrase-based decoder using the PDA representation and these algorithms. We contrast the complexity of this decoder with a decoder based on a finite state automata representation, showing that PDAs provide a more suitable framework to achieve exact decoding for larger synchronous context-free grammars and smaller language models. We assess this experimentally on a large-scale Chinese-to-English alignment and translation task. In translation, we propose a two-pass decoding strategy involving a weaker language model in the first-pass to address the results of PDA complexity analysis. We study in depth the experimental conditions and tradeoffs in which HiPDT can achieve state-of-the-art performance for large-scale SMT. </jats:p
Log-space Algorithms for Paths and Matchings in k-trees
Reachability and shortest path problems are NL-complete for general graphs.
They are known to be in L for graphs of tree-width 2 [JT07]. However, for
graphs of tree-width larger than 2, no bound better than NL is known. In this
paper, we improve these bounds for k-trees, where k is a constant. In
particular, the main results of our paper are log-space algorithms for
reachability in directed k-trees, and for computation of shortest and longest
paths in directed acyclic k-trees.
Besides the path problems mentioned above, we also consider the problem of
deciding whether a k-tree has a perfect macthing (decision version), and if so,
finding a perfect match- ing (search version), and prove that these two
problems are L-complete. These problems are known to be in P and in RNC for
general graphs, and in SPL for planar bipartite graphs [DKR08].
Our results settle the complexity of these problems for the class of k-trees.
The results are also applicable for bounded tree-width graphs, when a
tree-decomposition is given as input. The technique central to our algorithms
is a careful implementation of divide-and-conquer approach in log-space, along
with some ideas from [JT07] and [LMR07].Comment: Accepted in STACS 201
A Combinatorial Algorithm for All-Pairs Shortest Paths in Directed Vertex-Weighted Graphs with Applications to Disc Graphs
We consider the problem of computing all-pairs shortest paths in a directed
graph with real weights assigned to vertices.
For an 0-1 matrix let be the complete weighted graph
on the rows of where the weight of an edge between two rows is equal to
their Hamming distance. Let be the weight of a minimum weight spanning
tree of
We show that the all-pairs shortest path problem for a directed graph on
vertices with nonnegative real weights and adjacency matrix can be
solved by a combinatorial randomized algorithm in time
As a corollary, we conclude that the transitive closure of a directed graph
can be computed by a combinatorial randomized algorithm in the
aforementioned time.
We also conclude that the all-pairs shortest path problem for uniform disk
graphs, with nonnegative real vertex weights, induced by point sets of bounded
density within a unit square can be solved in time
Path computation in multi-layer networks: Complexity and algorithms
Carrier-grade networks comprise several layers where different protocols
coexist. Nowadays, most of these networks have different control planes to
manage routing on different layers, leading to a suboptimal use of the network
resources and additional operational costs. However, some routers are able to
encapsulate, decapsulate and convert protocols and act as a liaison between
these layers. A unified control plane would be useful to optimize the use of
the network resources and automate the routing configurations. Software-Defined
Networking (SDN) based architectures, such as OpenFlow, offer a chance to
design such a control plane. One of the most important problems to deal with in
this design is the path computation process. Classical path computation
algorithms cannot resolve the problem as they do not take into account
encapsulations and conversions of protocols. In this paper, we propose
algorithms to solve this problem and study several cases: Path computation
without bandwidth constraint, under bandwidth constraint and under other
Quality of Service constraints. We study the complexity and the scalability of
our algorithms and evaluate their performances on real topologies. The results
show that they outperform the previous ones proposed in the literature.Comment: IEEE INFOCOM 2016, Apr 2016, San Francisco, United States. To be
published in IEEE INFOCOM 2016, \<http://infocom2016.ieee-infocom.org/\&g
IST Austria Technical Report
We consider the quantitative analysis problem for interprocedural control-flow graphs (ICFGs). The input consists of an ICFG, a positive weight function that assigns every transition a positive integer-valued number, and a labelling of the transitions (events) as good, bad, and neutral events. The weight function assigns to each transition a numerical value that represents ameasure of how good or bad an event is. The quantitative analysis problem asks whether there is a run of the ICFG where the ratio of the sum of the numerical weights of good events versus the sum of weights of bad events in the long-run is at least a given threshold (or equivalently, to compute the maximal ratio among all valid paths in the ICFG). The quantitative analysis problem for ICFGs can be solved in polynomial time, and we present an efficient and practical algorithm for the problem. We show that several problems relevant for static program analysis, such as estimating the worst-case execution time of a program or the average energy consumption of a mobile application, can be modeled in our framework. We have implemented our algorithm as a tool in the Java Soot framework. We demonstrate the effectiveness of our approach with two case studies. First, we show that our framework provides a sound approach (no false positives) for the analysis of inefficiently-used containers. Second, we show that our approach can also be used for static profiling of programs which reasons about methods that are frequently invoked. Our experimental results show that our tool scales to relatively large benchmarks, and discovers relevant and useful information that can be used to optimize performance of the programs
- …