Skip to main content
European Commission logo print header
Content archived on 2024-04-16

Formal Methods and Tools for the Development of Distributed and Real-Time Systems

Objective

Research into the four basic approaches to concurrency (temporal logic, automata, process algebras and assertional methods) has produced specification formalisms and associated development and verification tools that have had successful applications, but none of the formalisms completely solves the concurrency problem and all have their deficiencies. For example, temporal logic performs slendidly when proving global eventuality properties, while performing badly for local precedence properties. For automata this is exactly the other way around. The overall objective of the SPEC Action was to alleviate these deficiencies and to provide frameworks for the specification and development of distributed real-time systems that are both practically adequate and theoretically sound. So why cannot these two techniques of temporal logic and algebra be combined? In general this extends to a combination of temporal logic and algebraic techniques. Especially worthwhile has been the extension of both to real-time. Special attention is given to the development of more efficient (both in time and in space) model checking and other machine assisted verification algorithms and tools. In this respect, besides giving attention to the topics mentioned above, the aim is to extend Xesar with time and make it faster, and to extend and investigate into the possibilities of the Statechart formalism. sm.
The task of developing concurrent, distributed and real time systems was addressed. Deficiencies of the 4 basic approaches to concurrency are perceived as largely complementary, and the combination of these formalizms seen as possibly very effective. Besides combining formalizms, research is proceeding into broadening the scope of existing formalizms towards real time probability and narrowing the gap between the specification and executable code of concurrent systems by extending the model checking paradigm with recent techniques such as on the fly searching space generation, partial order, and symbolic techniques.
APPROACH AND METHODS
-Combining existing formalisms, the result of fusing complementary formalisms, are being considered. One suggestion is to combine transition-based formalisms, such as finite-state automata or process algebras, with a logic-based formalism such as tempora l logic. Transition-based formalisms are ideal for describing local sequencing requirements, whereas logic-based formalisms are well-suited for representing global requirements and timing constraints. This combination has already partially been investigated in the past; in future their crossbreeding is foreseen within the context of an extension towards real-time and probability.
-Broadening the scope of existing formalisms. Investigations are proceeding into the ability to handle real-time constraints. Other extensions are planned, such as adapting existing formalisms to genuinely distributed models of computation or to models c ontaining probabilistic information. Especially worthwhile is the extension to timed automata, timed process algebras and timed logics. A similar extension towards including probability is undertaken. Finally, a merging of timed process algebra formalismswith Statecharts is undertaken.
-Narrowing the gap between formal specification and executable code. Two complementary efforts are being pursued. The first follows the development paradigm, and contains recommendations for an environment providing partially automated support for devel opment within the context of process algebra. The second effort will strive to obliterate traditional dividing lines between specification and implementation languages, especially focusing on executable subsets of Temporal Logics and the language for real-time embedded systems LUSTRE.
PROGRESS AND RESULTS
Executable subsets of temporal logic have been identified and implemented, and the foundations of executable temporal logic firmly established. Model checking of an important class of continous time stochastic systems has been reduced to a finite state verification problem, and process algebras and logics for time and probability have been developed, plus a theory of probabilistic refinement. The temporal logic methodology has been improved to such an extent that volume 1 of a book has appeared, with volu me 2 following shortly. Oxford's timed CSP methodology, consisting of a hierarchy of untimed and timed models for CSP, with timewise refinement mappings in between, a multitude of industrial applications, and associated algebraic and temporal logic based proof theories, has been firmly established, resulting in a book. A general, generic, mathematical model for asynchrony has been given.
Hooman's compositional assertional proof methodology for real-time distributed systems has been grounded in a book, with applications involving synchronous communication, asynchrony, local clocks, prioritised scheduling of processes, and maximal parallelism. One style uses metric temporal logic; the other uses Hoare-triples. Methods for "on the fly" automatic verification have been extended to model checking, the implementation of behavioural equivalence based on bisimulation semantics, and minimalisation . The latter has been implemented in LESAR, a verification tool for LUSTRE. A new approach to model checking based on partial-order semantics has been introduced and implemented, and improved even more for safety properties. Distributed model checking on a hypercube has been initiated, demonstrating that this is one of the problems benefitting most from parallelisation.
The real issues in establishing correctness of implementations of reactive systems have finally been tackled, transcending mere process refinement (since interface actions may change) and action refinement (since the nature of communication may change). ATL-based proof theory has been developed, and the change of synchronous to asynchronous communication has been worked out. Finally, The mathematical foundations of STATECHARTS and ESTEREL have been established and compared.
POTENTIAL
Considerable advances have been made towards the mechanised or semi-mechanised verification of embedded real-time systems. The incorporation of real-time and probability into process algebra theory allows for its further exploitation in work-benches. The fundamental assertional concurrent process refinement techniques have been clarified and extended to the point of application and generalised to real-time and probabilistic systems. Unification of sequential refinement and verification techniques is very near, while for concurrency, considerable progress towards the unification of refinement techniques has been made, with extension towards real-time.

Topic(s)

Data not available

Call for proposal

Data not available

Funding Scheme

Data not available

Coordinator

TECHNISCHE UNIVERSITEIT EINDHOVEN
EU contribution
No data
Address
, 513
5600 MB EINDHOVEN
Netherlands

See on map

Total cost
No data

Participants (8)