4 research outputs found
Reachability in Continuous Pushdown VASS
Pushdown Vector Addition Systems with States (PVASS) consist of finitely many
control states, a pushdown stack, and a set of counters that can be incremented
and decremented, but not tested for zero. Whether the reachability problem is
decidable for PVASS is a long-standing open problem.
We consider continuous PVASS, which are PVASS with a continuous semantics.
This means, the counter values are rational numbers and whenever a vector is
added to the current counter values, this vector is first scaled with an
arbitrarily chosen rational factor between zero and one. We show that
reachability in continuous PVASS is NEXPTIME-complete. Our result is unusually
robust: Reachability can be decided in NEXPTIME even if all numbers are
specified in binary. On the other hand, NEXPTIME-hardness already holds for
coverability, in fixed dimension, for bounded stack, and even if all numbers
are specified in unary
Newtonian Program Analysis via Tensor Product
Recently, Esparza et al. generalized Newton's method -- a numerical-analysis algorithm for finding roots of real-valued functions -- to a method for finding fixed-points of systems of equations over semirings. Their method provides a new way to solve interprocedural dataflow-analysis problems. As in its real-valued counterpart, each iteration of their method solves a simpler ``linearized'' problem.
One of the reasons this advance is exciting is that some numerical analysts have claimed that ```all' effective and fast iterative [numerical] methods are forms (perhaps very disguised) of Newton's method.'' However, there is an important difference between the dataflow-analysis and numerical-analysis contexts: when Newton's method is used on numerical-analysis problems, multiplicative commutativity is relied on to rearrange expressions of the form ``c*X + X*d'' into ``(c+d) * X.'' Such equations correspond to path problems described by regular languages. In contrast, when Newton's method is used for interprocedural dataflow analysis, the ``multiplication'' operation involves function composition, and hence is non-commutative: ``c*X + X*d'' cannot be rearranged into ``(c+d) * X.'' Such equations correspond to path problems described by linear context-free languages (LCFLs).
In this paper, we present an improved technique for solving the LCFL sub-problems produced during successive rounds of Newton's method. Our method applies to predicate abstraction, on which most of today's software model checkers rely