72 research outputs found
Parameterized Verification of Safety Properties in Ad Hoc Network Protocols
We summarize the main results proved in recent work on the parameterized
verification of safety properties for ad hoc network protocols. We consider a
model in which the communication topology of a network is represented as a
graph. Nodes represent states of individual processes. Adjacent nodes represent
single-hop neighbors. Processes are finite state automata that communicate via
selective broadcast messages. Reception of a broadcast is restricted to
single-hop neighbors. For this model we consider a decision problem that can be
expressed as the verification of the existence of an initial topology in which
the execution of the protocol can lead to a configuration with at least one
node in a certain state. The decision problem is parametric both on the size
and on the form of the communication topology of the initial configurations. We
draw a complete picture of the decidability and complexity boundaries of this
problem according to various assumptions on the possible topologies.Comment: In Proceedings PACO 2011, arXiv:1108.145
Feature refinement
Development by formal stepwise refinement offers a guarantee that an implementation satisfies a specification. But refinement is frequently defined in such a restrictive way as to disallow some useful development steps. Here we de- fine feature refinement to overcome some limitations of re- finement and show its usefulness by applying it to examples taken from the literature.
Using partial relations as a canonical state-based semantics and labelled transition systems as a canonical event-based semantics, we degine functions formally linking the state- and event-based operational semantics. We can then use this link to move notions of refinement between the event- and state-based worlds.
An advantage of this abstract approach is that it is not restricted to a specific syntax or even a specific interpretation of the operational semantic
A Process Calculus for Dynamic Networks
In this paper we propose a process calculus framework for dynamic networks in which the network topology may change as computation proceeds. The proposed calculus allows one to abstract away from neighborhood-discovery computations and it contains features for broadcasting at multiple transmission ranges and for viewing networks at different levels of abstraction. We develop a theory of confluence for the calculus and we use the machinery developed towards
the verification of a leader-election algorithm for mobile ad hoc networks
An Observational Theory for Mobile Ad Hoc Networks
AbstractWe propose a process calculus to study the observational theory of Mobile Ad Hoc Networks. The operational semantics of our calculus is given both in terms of a Reduction Semantics and in terms of a Labelled Transition Semantics. We prove that the two semantics coincide. The labelled transition system is then used to derive the notions of simulation and bisimulation for ad hoc networks. As a main result, we prove that the (weak) labelled bisimilarity completely characterises (weak) reduction barbed congruence, a standard, branching-time, contextually-defined program equivalence. We then use our (bi)simulation proof methods to formally prove a number of non-trivial properties of ad hoc networks
A synchronous pi-calculus
The SL synchronous programming model is a relaxation of the Esterel
synchronous model where the reaction to the absence of a signal within an
instant can only happen at the next instant. In previous work, we have
revisited the SL synchronous programming model. In particular, we have
discussed an alternative design of the model including thread spawning and
recursive definitions, introduced a CPS translation to a tail recursive form,
and proposed a notion of bisimulation equivalence. In the present work, we
extend the tail recursive model with first-order data types obtaining a
non-deterministic synchronous model whose complexity is comparable to the one
of the pi-calculus. We show that our approach to bisimulation equivalence can
cope with this extension and in particular that labelled bisimulation can be
characterised as a contextual bisimulation
Contexts, refinement and determinism
In this paper we have been influenced by those who take an āengineering viewā of the problem of designing systems, i.e. a view that is motivated by what someone designing a real system will be concerned with, and what questions will arise as they work on their design. Specifically, we have borrowed from the testing work of Hennessy, de Nicola and van Glabbeek, e.g. [13, 5, 21, 40, 39].
Here we concentrate on one fundamental part of the engineering view and where consideration of it leads. The aspects we are concerned with are computational entities in contexts, observed by users. This leads to formalising design steps that are often left informal, and that in turn gives insights into non-determinism and ultimately leads to being able to use refinement in situations where existing techniques fail
Flexible refinement
To help make refinement more usable in practice we introduce a general, flexible model of refinement. This is defined in terms of what contexts an entity can appear in, and what observations can be made of it in those contexts.
Our general model is expressed in terms of an operational semantics, and by exploiting the well-known isomorphism between state-based relational semantics and event-based labelled transition semantics we were able to take particular models from both the state- and event-based literature, reflect on them and gradually evolve our general model. We are also able to view our general model both as a testing semantics and as a logical theory with refinement as implication.
Our general model can used as a bridge between different particular special models and using this bridge we compare the definition of determinism found in different special models. We do this because the reduction of nondeterminism underpins many definitions of refinement found in a variety of special models. To our surprise we find that the definition of determinism commonly used in the process algebra literature to be at odds with determinism as defined in other special models. In order to rectify this situation we return to the intuitions expressed by Milner in CCS and by formalising these intuitions we are able to define determinism in process algebra in such a way that it no longer at odds with the definitions we have taken from other special models. Using our abstract definition of determinism we are able to construct a new model, interactive branching programs, that is an implementable subset of process algebra. Later in the chapter we show explicitly how five special models, taken from the literature, are instances of our general model. This is done simply by fixing the sets of contexts and observations involved. Next we define vertical refinement on our general model. Vertical refinement can be seen both as a generalisation of what, in the literature, has been called action refinement or non-atomic refinement. Alternatively, by viewing a layer as a logical theory, vertical refinement is a theory morphism, formalised as a Galois connection.
By constructing a vertical refinement between broadcast processes and interactive branching programs we can see how interactive branching programs can be implemented on a platform providing broadcast communication. But we have been unable to extend this theory morphism to implement all of process algebra using broadcast communication. Upon investigation we show the problem arises with the examples that caused the problem with the definition of determinism on process algebra. Finally we illustrate the usefulness of our flexible general model by formally developing a single entity that contains events that use handshake communication and events that use broadcast communication
Modelling Probabilistic Wireless Networks
We propose a process calculus to model high level wireless systems, where the
topology of a network is described by a digraph. The calculus enjoys features
which are proper of wireless networks, namely broadcast communication and
probabilistic behaviour. We first focus on the problem of composing wireless
networks, then we present a compositional theory based on a probabilistic
generalisation of the well known may-testing and must-testing pre- orders.
Also, we define an extensional semantics for our calculus, which will be used
to define both simulation and deadlock simulation preorders for wireless
networks. We prove that our simulation preorder is sound with respect to the
may-testing preorder; similarly, the deadlock simulation pre- order is sound
with respect to the must-testing preorder, for a large class of networks. We
also provide a counterexample showing that completeness of the simulation
preorder, with respect to the may testing one, does not hold. We conclude the
paper with an application of our theory to probabilistic routing protocols
- ā¦