571,624 research outputs found
Correct and Efficient Antichain Algorithms for Refinement Checking
The notion of refinement plays an important role in software engineering. It
is the basis of a stepwise development methodology in which the correctness of
a system can be established by proving, or computing, that a system refines its
specification. Wang et al. describe algorithms based on antichains for
efficiently deciding trace refinement, stable failures refinement and
failures-divergences refinement. We identify several issues pertaining to the
soundness and performance in these algorithms and propose new, correct,
antichain-based algorithms. Using a number of experiments we show that our
algorithms outperform the original ones in terms of running time and memory
usage. Furthermore, we show that additional run time improvements can be
obtained by applying divergence-preserving branching bisimulation minimisation
Recommended from our members
Automated verification of refinement laws
Demonic refinement algebras are variants of Kleene algebras. Introduced by von Wright as a light-weight variant of the refinement calculus, their intended semantics are positively disjunctive predicate transformers, and their calculus is entirely within first-order equational logic. So, for the first time, off-the-shelf automated theorem proving (ATP) becomes available for refinement proofs. We used ATP to verify a toolkit of basic refinement laws. Based on this toolkit, we then verified two classical complex refinement laws for action systems by ATP: a data refinement law and Back's atomicity refinement law. We also present a refinement law for infinite loops that has been discovered through automated analysis. Our proof experiments not only demonstrate that refinement can effectively be automated, they also compare eleven different ATP systems and suggest that program verification with variants of Kleene algebras yields interesting theorem proving benchmarks. Finally, we apply hypothesis learning techniques that seem indispensable for automating more complex proofs
The earlier the better: a theory of timed actor interfaces
Programming embedded and cyber-physical systems requires attention not only to functional behavior and correctness, but also to non-functional aspects and specifically timing and performance constraints. A structured, compositional, model-based approach based on stepwise refinement and abstraction techniques can support the development process, increase its quality and reduce development time through automation of synthesis, analysis or verification. For this purpose, we introduce in this paper a general theory of timed actor interfaces. Our theory supports a notion of refinement that is based on the principle of worst-case design that permeates the world of performance-critical systems. This is in contrast with the classical behavioral and functional refinements based on restricting or enlarging sets of behaviors. An important feature of our refinement is that it allows time-deterministic abstractions to be made of time-non-deterministic systems, improving efficiency and reducing complexity of formal analysis. We also show how our theory relates to, and can be used to reconcile a number of existing time and performance models and how their established theories can be exploited to represent and analyze interface specifications and refinement steps.\u
3D mesh refinement procedure using the bisection and rivara algorithms with mesh quality assessment
Mesh refinement procedures for the solution of three dimensional problems are described. The computational\ud
domain is represented by an assembly of tetrahedral elements and the mesh refinement is acheived by the bisection\ud
and Rivara methods using an explicit mesh density function coupled with an automatic 3D mesh generator.\ud
A couple of benchmark examples is used to compare the performance of both refinement methods in terms of mesh\ud
and size qualities, number of generated elements and CPU time consume
The earlier the better: a theory of timed actor interfaces
Programming embedded and cyber-physical systems requires attention not only to functional behavior and correctness, but also to non-functional aspects and specifically timing and performance. A structured, compositional, model-based approach based on stepwise refinement and abstraction techniques can support the development process, increase its quality and reduce development time through automation of synthesis, analysis or verification. Toward this, we introduce a theory of timed actors whose notion of refinement is based on the principle of worst-case design that permeates the world of performance-critical systems. This is in contrast with the classical behavioral and functional refinements based on restricting sets of behaviors. Our refinement allows time-deterministic abstractions to be made of time-non-deterministic systems, improving efficiency and reducing complexity of formal analysis. We show how our theory relates to, and can be used to reconcile existing time and performance models and their established theories
An exponential lower bound for Individualization-Refinement algorithms for Graph Isomorphism
The individualization-refinement paradigm provides a strong toolbox for
testing isomorphism of two graphs and indeed, the currently fastest
implementations of isomorphism solvers all follow this approach. While these
solvers are fast in practice, from a theoretical point of view, no general
lower bounds concerning the worst case complexity of these tools are known. In
fact, it is an open question whether individualization-refinement algorithms
can achieve upper bounds on the running time similar to the more theoretical
techniques based on a group theoretic approach.
In this work we give a negative answer to this question and construct a
family of graphs on which algorithms based on the individualization-refinement
paradigm require exponential time. Contrary to a previous construction of
Miyazaki, that only applies to a specific implementation within the
individualization-refinement framework, our construction is immune to changing
the cell selector, or adding various heuristic invariants to the algorithm.
Furthermore, our graphs also provide exponential lower bounds in the case when
the -dimensional Weisfeiler-Leman algorithm is used to replace the standard
color refinement operator and the arguments even work when the entire
automorphism group of the inputs is initially provided to the algorithm.Comment: 21 page
Recommended from our members
A mapping strategy for MIMD computers
In this paper, a heuristic mapping approach which maps parallel programs, described by precedence graphs, to MIMD architectures, described by system graphs, is presented. The complete execution time of a parallel program is used as a measure, and the concept of critical edges is utilized as the heuristic to guide the search for a better initial assignment and subsequent refinement. An important feature is the use of a termination condition of the refinement process. This is based on deriving a lower bound on the total execution time of the mapped program. When this has been reached, no further refinement steps are necessary. The algorithms have been implemented and applied to the mapping of random problem graphs to various system topologies, including hypercubes, meshes, and random graphs. The results show reductions in execution times of the mapped programs of up to 77 percent over random mapping
Structure Refinement for Vulnerability Estimation Models using Genetic Algorithm Based Model Generators
In this paper, a method for model structure refinement is proposed and applied in estimation of cumulative number of vulnerabilities according to time. Security as a quality characteristic is presented and defined. Vulnerabilities are defined and their importance is assessed. Existing models used for number of vulnerabilities estimation are enumerated, inspecting their structure. The principles of genetic model generators are inspected. Model structure refinement is defined in comparison with model refinement and a method for model structure refinement is proposed. A case study shows how the method is applied and the obtained results.model structure refinement, model generators, gene expression programming, software vulnerabilities, performance criteria, software metrics
- …