96 research outputs found
Twenty years of rewriting logic
AbstractRewriting logic is a simple computational logic that can naturally express both concurrent computation and logical deduction with great generality. This paper provides a gentle, intuitive introduction to its main ideas, as well as a survey of the work that many researchers have carried out over the last twenty years in advancing: (i) its foundations; (ii) its semantic framework and logical framework uses; (iii) its language implementations and its formal tools; and (iv) its many applications to automated deduction, software and hardware specification and verification, security, real-time and cyber-physical systems, probabilistic systems, bioinformatics and chemical systems
Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems
This guidebook, the second of a two-volume series, is intended to facilitate the transfer of formal methods to the avionics and aerospace community. The 1st volume concentrates on administrative and planning issues [NASA-95a], and the second volume focuses on the technical issues involved in applying formal methods to avionics and aerospace software systems. Hereafter, the term "guidebook" refers exclusively to the second volume of the series. The title of this second volume, A Practitioner's Companion, conveys its intent. The guidebook is written primarily for the nonexpert and requires little or no prior experience with formal methods techniques and tools. However, it does attempt to distill some of the more subtle ingredients in the productive application of formal methods. To the extent that it succeeds, those conversant with formal methods will also nd the guidebook useful. The discussion is illustrated through the development of a realistic example, relevant fragments of which appear in each chapter. The guidebook focuses primarily on the use of formal methods for analysis of requirements and high-level design, the stages at which formal methods have been most productively applied. Although much of the discussion applies to low-level design and implementation, the guidebook does not discuss issues involved in the later life cycle application of formal methods
Model checking multi-agent systems
A multi-agent system (MAS) is usually understood as a system composed of interacting
autonomous agents. In this sense, MAS have been employed successfully as a modelling
paradigm in a number of scenarios, especially in Computer Science. However, the process
of modelling complex and heterogeneous systems is intrinsically prone to errors: for this
reason, computer scientists are typically concerned with the issue of verifying that a system
actually behaves as it is supposed to, especially when a system is complex.
Techniques have been developed to perform this task: testing is the most common technique,
but in many circumstances a formal proof of correctness is needed. Techniques
for formal verification include theorem proving and model checking. Model checking
techniques, in particular, have been successfully employed in the formal verification of
distributed systems, including hardware components, communication protocols, security
protocols.
In contrast to traditional distributed systems, formal verification techniques for MAS are
still in their infancy, due to the more complex nature of agents, their autonomy, and
the richer language used in the specification of properties. This thesis aims at making
a contribution in the formal verification of properties of MAS via model checking. In
particular, the following points are addressed:
ā¢ Theoretical results about model checking methodologies for MAS, obtained by
extending traditional methodologies based on Ordered Binary Decision Diagrams (OBDDS) for temporal logics to multi-modal logics for time, knowledge, correct behaviour, and strategies of agents. Complexity results for model checking these logics
(and their symbolic representations).
ā¢ Development of a software tool (MCMAS) that permits the specification and verification
of MAS described in the formalism of interpreted systems.
ā¢ Examples of application of MCMAS to various MAS scenarios (communication, anonymity, games, hardware diagnosability), including experimental results, and comparison with other tools available
An executable Theory of Multi-Agent Systems Refinement
Complex applications such as incident management, social simulations, manufacturing applications, electronic auctions, e-institutions, and business to business applications are pervasive and important nowadays. Agent-oriented methodology is an advance in abstractionwhich can be used by software developers to naturally model and develop systems for suchapplications. In general, with respect to design methodologies, what it may be important tostress is that control structures should be added at later stages of design, in a natural top-downmanner going from speciļ¬cations to implementations, by reļ¬nement. Too much detail (be itfor the sake of efļ¬ciency) in speciļ¬cations often turns out to be harmful. To paraphrase D.E.Knuth, āPremature optimization is the root of all evilā (quoted in āThe Unix ProgrammingEnvironmentā by Kernighan and Pine, p. 91).The aim of this thesis is to adapt formal techniques to the agent-oriented methodologyinto an executable theory of reļ¬nement. The justiļ¬cation for doing so is to provide correctagent-based software by design. The underlying logical framework of the theory we proposeis based on rewriting logic, thus the theory is executable in the same sense as rewriting logicis. The storyline is as follows. We ļ¬rst motivate and explain constituting elements of agentlanguages chosen to represent both abstract and concrete levels of design. We then proposea deļ¬nition of reļ¬nement between agents written in such languages. This notion of reļ¬nement ensures that concrete agents are correct with respect to the abstract ones. The advantageof the deļ¬nition is that it easily leads to formulating a proof technique for reļ¬nement viathe classical notion of simulation. This makes it possible to effectively verify reļ¬nement bymodel-checking. Additionally, we propose a weakest precondition calculus as a deductivemethod based on assertions which allow to prove correctness of inļ¬nite state agents. Wegeneralise the reļ¬nement relation from single agents to multi-agent systems in order to ensure that concrete multi-agent systems reļ¬ne their abstractions. We see multi-agent systemsas collections of coordinated agents, and we consider coordination artefacts as being basedeither on actions or on normative rules. We integrate these two orthogonal coordinationmechanisms within the same reļ¬nement theory extended to a timed framework. Finally, wediscuss implementation aspects.LEI Universiteit LeidenFoundations of Software Technolog
Abstraction in Model Checking Multi-Agent Systems
This thesis presents existential abstraction techniques for multi-agent systems preserving temporal-epistemic
specifications. Multi-agent systems, defined in the interpreted system frameworks,
are abstracted by collapsing the local states and actions of each agent. The goal of abstraction
is to reduce the state space of the system under investigation in order to cope with the state
explosion problem that impedes the verification of very large state space systems. Theoretical
results show that the resulting abstract system simulates the concrete one. Preservation
and correctness theorems are proved in this thesis. These theorems assure that if a temporal-epistemic
formula holds on the abstract system, then the formula also holds on the concrete
one. These results permit to verify temporal-epistemic formulas in abstract systems instead of
the concrete ones, therefore saving time and space in the verification process.
In order to test the applicability, usefulness, suitability, power and effectiveness of the abstraction
method presented, two different implementations are presented: a tool for data-abstraction
and one for variable-abstraction. The first technique achieves a state space reduction by collapsing
the values of the domains of the system variables. The second technique performs a
reduction on the size of the model by collapsing groups of two or more variables. Therefore, the
abstract system has a reduced number of variables. Each new variable in the abstract system
takes values belonging to a new domain built automatically by the tool. Both implementations
perform abstraction in a fully automatic way. They operate on multi agents models specified
in a formal language, called ISPL (Interpreted System Programming Language). This is the
input language for MCMAS, a model checker for multi-agent systems. The output is an ISPL
file as well (with a reduced state space).
This thesis also presents several suitable temporal-epistemic examples to evaluate both techniques.
The experiments show good results and point to the attractiveness of the temporal-epistemic
abstraction techniques developed in this thesis. In particular, the contributions of
the thesis are the following ones:
ā¢ We produced correctness and preservation theoretical results for existential abstraction.
ā¢ We introduced two algorithms to perform data-abstraction and variable-abstraction on
multi-agent systems.
ā¢ We developed two software toolkits for automatic abstraction on multi-agent scenarios:
one tool performing data-abstraction and the second performing variable-abstraction.
ā¢ We evaluated the methodologies introduced in this thesis by running experiments on
several multi-agent system examples
Towards a Unified Theory of Timed Automata
Timed automata are finite-state machines augmented with special clock variables that reflect the advancement of time. Able to both capture real-time behavior and be verified algorithmically (model-checked), timed automata are used to model real-time systems. These observations have led to the development of several timed-automata verification tools that have been successfully applied to the analysis of a number of different systems; however, the practical utility of timed automata is undermined by the theories underlying different tools differing in subtle but important ways. Since algorithmic results that hold for the variant used by one tool may not apply to another variant, this complicates the application of different tools to different models. The thesis of this dissertation is this: the theory of timed automata can be unified, and a practical unified approach to timed-automata model checking can be built around the paradigm of proof search.
First, this dissertation establishes the mutual expressivity of timed automata variants, thereby providing precise characterizations of when theoretical results of one variant apply to other variants. Second, it proves powerful expressive properties about different logics for timed behavior, and as a result, enlarges the set of verifiable properties. Third, it discusses an implementation of a verification tool for an expressive fixpoint-based logic, demonstrating an application of this newly developed theory. The tool is based on a proof-search paradigm; verifying timed automata involves constructing proofs using proof rules that enable verification problems to be translated into subproblems that must be solved. The tool's performance is optimized by using derived proof rules, thereby providing a theoretically sound basis for faster model checking. Last, this dissertation utilizes the proofs generated during verification to gain additional information about the vacuous satisfaction of certain formulae: whether the automaton satisfied a formula by never satisfying certain premises of that specification. This extra information is often obtained without significantly decreasing the verifier's performance
28th International Symposium on Temporal Representation and Reasoning (TIME 2021)
The 28th International Symposium on Temporal Representation and Reasoning (TIME 2021) was planned to take place in Klagenfurt, Austria, but had to move to an online conference due to the insecurities and restrictions caused by the pandemic. Since its frst edition in 1994, TIME Symposium is quite unique in the panorama of the scientifc conferences as its main goal is to bring together researchers from distinct research areas involving the management and representation of temporal data as well as the reasoning about temporal aspects of information. Moreover, TIME Symposium aims to bridge theoretical and applied research, as well as to serve as an interdisciplinary forum for exchange among researchers from the areas of artifcial intelligence, database management, logic and verifcation, and beyond
Techniques for the formal verification of analog and mixed- signal designs
Embedded systems are becoming a core technology in a growing range of electronic devices. Cornerstones of embedded systems are analog and mixed signal (AMS) designs, which are integrated circuits required at the interfaces with the real world environment. The verification of AMS designs is concerned with the assurance of correct functionality, in addition to checking whether an AMS design is robust with respect to different types of inaccuracies like parameter tolerances, nonlinearities, etc. The verification framework described in this thesis is composed of two proposed methodologies each concerned with a class of AMS designs, i.e., continuous-time AMS designs and discrete-time AMS designs. The common idea behind both methodologies is built on top of Bounded Model Checking (BMC) algorithms. In BMC, we search for a counter-example for a property verified against the design model for bounded number of verification steps. If a concrete counter-example is found, then the verification is complete and reports a failure, otherwise, we need to increment the number of steps until property validation is achieved. In general, the verification is not complete because of limitations in time and memory needed for the verification. To alleviate this problem, we observed that under certain conditions and for some classes of specification properties, the verification can be complete if we complement the BMC with other methods such as abstraction and constraint based verification methods. To test and validate the proposed approaches, we developed a prototype implementation in Mathematica and we targeted analog and mixed signal systems, like oscillator circuits, switched capacitor based designs, Delta-Sigma modulators for our initial tests of this approach
- ā¦