1,685 research outputs found
Finite Countermodel Based Verification for Program Transformation (A Case Study)
Both automatic program verification and program transformation are based on
program analysis. In the past decade a number of approaches using various
automatic general-purpose program transformation techniques (partial deduction,
specialization, supercompilation) for verification of unreachability properties
of computing systems were introduced and demonstrated. On the other hand, the
semantics based unfold-fold program transformation methods pose themselves
diverse kinds of reachability tasks and try to solve them, aiming at improving
the semantics tree of the program being transformed. That means some
general-purpose verification methods may be used for strengthening program
transformation techniques. This paper considers the question how finite
countermodels for safety verification method might be used in Turchin's
supercompilation method. We extract a number of supercompilation sub-algorithms
trying to solve reachability problems and demonstrate use of an external
countermodel finder for solving some of the problems.Comment: In Proceedings VPT 2015, arXiv:1512.0221
Percentile Queries in Multi-Dimensional Markov Decision Processes
Markov decision processes (MDPs) with multi-dimensional weights are useful to
analyze systems with multiple objectives that may be conflicting and require
the analysis of trade-offs. We study the complexity of percentile queries in
such MDPs and give algorithms to synthesize strategies that enforce such
constraints. Given a multi-dimensional weighted MDP and a quantitative payoff
function , thresholds (one per dimension), and probability thresholds
, we show how to compute a single strategy to enforce that for all
dimensions , the probability of outcomes satisfying is at least . We consider classical quantitative payoffs from
the literature (sup, inf, lim sup, lim inf, mean-payoff, truncated sum,
discounted sum). Our work extends to the quantitative case the multi-objective
model checking problem studied by Etessami et al. in unweighted MDPs.Comment: Extended version of CAV 2015 pape
Reachability in Vector Addition Systems is Primitive-Recursive in Fixed Dimension
The reachability problem in vector addition systems is a central question,
not only for the static verification of these systems, but also for many
inter-reducible decision problems occurring in various fields. The currently
best known upper bound on this problem is not primitive-recursive, even when
considering systems of fixed dimension. We provide significant refinements to
the classical decomposition algorithm of Mayr, Kosaraju, and Lambert and to its
termination proof, which yield an ACKERMANN upper bound in the general case,
and primitive-recursive upper bounds in fixed dimension. While this does not
match the currently best known TOWER lower bound for reachability, it is
optimal for related problems
Cost-Bounded Active Classification Using Partially Observable Markov Decision Processes
Active classification, i.e., the sequential decision-making process aimed at
data acquisition for classification purposes, arises naturally in many
applications, including medical diagnosis, intrusion detection, and object
tracking. In this work, we study the problem of actively classifying dynamical
systems with a finite set of Markov decision process (MDP) models. We are
interested in finding strategies that actively interact with the dynamical
system, and observe its reactions so that the true model is determined
efficiently with high confidence. To this end, we present a decision-theoretic
framework based on partially observable Markov decision processes (POMDPs). The
proposed framework relies on assigning a classification belief (a probability
distribution) to each candidate MDP model. Given an initial belief, some
misclassification probabilities, a cost bound, and a finite time horizon, we
design POMDP strategies leading to classification decisions. We present two
different approaches to find such strategies. The first approach computes the
optimal strategy "exactly" using value iteration. To overcome the computational
complexity of finding exact solutions, the second approach is based on adaptive
sampling to approximate the optimal probability of reaching a classification
decision. We illustrate the proposed methodology using two examples from
medical diagnosis and intruder detection
Multilinear Time Invariant System Theory
In biological and engineering systems, structure, function and dynamics are
highly coupled. Such interactions can be naturally and compactly captured via
tensor based state space dynamic representations. However, such representations
are not amenable to the standard system and controls framework which requires
the state to be in the form of a vector. In order to address this limitation,
recently a new class of multiway dynamical systems has been introduced in which
the states, inputs and outputs are tensors. We propose a new form of
multilinear time invariant (MLTI) systems based on the Einstein product and
even-order paired tensors. We extend classical linear time invariant (LTI)
system notions including stability, reachability and observability for the new
MLTI system representation by leveraging recent advances in tensor algebra.Comment: 8 pages, SIAM Conference on Control and its Applications 2019,
accepted to appea
Verification of Imperative Programs by Constraint Logic Program Transformation
We present a method for verifying partial correctness properties of
imperative programs that manipulate integers and arrays by using techniques
based on the transformation of constraint logic programs (CLP). We use CLP as a
metalanguage for representing imperative programs, their executions, and their
properties. First, we encode the correctness of an imperative program, say
prog, as the negation of a predicate 'incorrect' defined by a CLP program T. By
construction, 'incorrect' holds in the least model of T if and only if the
execution of prog from an initial configuration eventually halts in an error
configuration. Then, we apply to program T a sequence of transformations that
preserve its least model semantics. These transformations are based on
well-known transformation rules, such as unfolding and folding, guided by
suitable transformation strategies, such as specialization and generalization.
The objective of the transformations is to derive a new CLP program TransfT
where the predicate 'incorrect' is defined either by (i) the fact 'incorrect.'
(and in this case prog is not correct), or by (ii) the empty set of clauses
(and in this case prog is correct). In the case where we derive a CLP program
such that neither (i) nor (ii) holds, we iterate the transformation. Since the
problem is undecidable, this process may not terminate. We show through
examples that our method can be applied in a rather systematic way, and is
amenable to automation by transferring to the field of program verification
many techniques developed in the field of program transformation.Comment: In Proceedings Festschrift for Dave Schmidt, arXiv:1309.455
- âŠ