1,781 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
Optimal task positioning in multi-robot cells, using nested meta-heuristic swarm algorithms
Abstract Process planning of multi-robot cells is usually a manual and time consuming activity, based on trials-and-errors. A co-manipulation problem is analysed, where one robot handles the work-piece and one robot performs a task on it and a method to find the optimal pose of the work-piece is proposed. The method, based on a combination of Whale Optimization Algorithm and Ant Colony Optimization algorithm, minimize a performance index while taking into account technological and kinematics constraints. The index evaluates process accuracy considering transmission elasticity, backslashes and distance from joint limits. Numerical simulations demonstrate the method robustness and convergence
Efficient Emptiness Check for Timed B\"uchi Automata (Extended version)
The B\"uchi non-emptiness problem for timed automata refers to deciding if a
given automaton has an infinite non-Zeno run satisfying the B\"uchi accepting
condition. The standard solution to this problem involves adding an auxiliary
clock to take care of the non-Zenoness. In this paper, it is shown that this
simple transformation may sometimes result in an exponential blowup. A
construction avoiding this blowup is proposed. It is also shown that in many
cases, non-Zenoness can be ascertained without extra construction. An
on-the-fly algorithm for the non-emptiness problem, using non-Zenoness
construction only when required, is proposed. Experiments carried out with a
prototype implementation of the algorithm are reported.Comment: Published in the Special Issue on Computer Aided Verification - CAV
2010; Formal Methods in System Design, 201
Optimization in Graph Transformation Systems with Time Using Petri Net Based Techniques
Extra–functional properties of IT systems have to be analyzed and subsequently optimized carefully during the design phase in order to assure a proper quality of service and decrease operational costs. Several verification and validation methods are known to check the correctness of the system services, while optimization may serve to reach boundaries thus minimizing costs or duration of operating the system. However, the combination of the best practices of the two fields according to the purpose of the analysis is a challenging question. In a previous paper, we showed how such a problem can be formalized and solved when the evolution of the system is captured by graph transformation systems (GTS) with cost parameters attached to each graph transformation rule denoting the cost of firing the rule.This technique is adapted in the current paper to deliver a time–optimal trajectory in a GTS with time. While the cost of a GT rule sequence always equals to the sum of the cost of the involved GT rules, the concurrent application of GT rules may reduce the minimal duration of a GT rule sequence, which is a major conceptual difference concerning optimization
Invariant Generation through Strategy Iteration in Succinctly Represented Control Flow Graphs
We consider the problem of computing numerical invariants of programs, for
instance bounds on the values of numerical program variables. More
specifically, we study the problem of performing static analysis by abstract
interpretation using template linear constraint domains. Such invariants can be
obtained by Kleene iterations that are, in order to guarantee termination,
accelerated by widening operators. In many cases, however, applying this form
of extrapolation leads to invariants that are weaker than the strongest
inductive invariant that can be expressed within the abstract domain in use.
Another well-known source of imprecision of traditional abstract interpretation
techniques stems from their use of join operators at merge nodes in the control
flow graph. The mentioned weaknesses may prevent these methods from proving
safety properties. The technique we develop in this article addresses both of
these issues: contrary to Kleene iterations accelerated by widening operators,
it is guaranteed to yield the strongest inductive invariant that can be
expressed within the template linear constraint domain in use. It also eschews
join operators by distinguishing all paths of loop-free code segments. Formally
speaking, our technique computes the least fixpoint within a given template
linear constraint domain of a transition relation that is succinctly expressed
as an existentially quantified linear real arithmetic formula. In contrast to
previously published techniques that rely on quantifier elimination, our
algorithm is proved to have optimal complexity: we prove that the decision
problem associated with our fixpoint problem is in the second level of the
polynomial-time hierarchy.Comment: 35 pages, conference version published at ESOP 2011, this version is
a CoRR version of our submission to Logical Methods in Computer Scienc
- …