Understanding Mobile Agents via a Non-Interleaving Semantics for Facile (original) (raw)

Analysis of Facile Programs: A Case Study

1996

Mobile agents, i.e. pieces of programs that can be sent around networks of computers, are starting to appear on the Internet. Such programs may be seen as an enrichment of traditional distributed computing. Since mobile agents may carry communication links with them as they move across the network, they create very dynamic interconnection structures that can be extremely complex to analyse. In this paper we apply a non-interleaving semantics to analyse a system based on the mobile agent principle written in the Facile programming language. This example is a scaled down version of a system demonstrated at the European IT Conference Exhibition in Brussels, 1995. This paper further develops a non-interleaving semantics for Facile, first presented in [4]. We develop a Structural Operational Semantics (SOS) for Facile, giving a proved transition system that records encodings of the derivation trees of transitions in their labels. This information allows us to easily recover non-interleaving semantics for Facile by looking only at the labels of transitions. This semantics may be instantiated to recover both causality and locality information.

Non-Interleaving Semantics for Mobile Processes

Theoretical Computer Science, 1999

This paper studies causality in the x-calculus. Our notion of causality combines the dependencies given by the syntactic structure of processes with those originated by passing names. Our studies show that two transitions not causally related may however occur in a fixed ordering in any computation, i.e., the z-calculus may implicitly express a precedence between actions. The same partial order of transitions is associated with all the computations that are obtained by shuffling transitions that are concurrent (i.e. related neither by causality nor by precedence). Other non-interleaving semantics are investigated and compared. The presentation takes advantage of a parametric definition of process behaviour given in SOS style that permits us to take almost for free the interleaving theory and tools. Finally, we extend our approach to higherorder n-calculus, enriched with a spurn operation. @ 1999-Elsevier Science B.V. All rights rcscrvcd . 0304-3975/99/$ -see front matter @ 1999-Elsevier Science B.V. All rights reserved I'll: SO304-3975(97)00236-3

Operational Semantics for Agent Communication Languages

Lecture Notes in Computer Science, 2000

In this paper, we study the operational semantics of agent communication languages. We develop a basic multi-agent programming language for systems of concurrently operating agents, into which agent communication languages can be integrated. In this language, each agent has a mental state comprised of an informational component and a motivational component; interaction between the agents proceeds via a rendezvous communication mechanism. The language builds upon well-understood concepts from the object-oriented programming paradigm as object classes, method invocations and object creation. The formal semantics of the language are de ned by means of transition rules that describe its operational behaviour. Moreover, the operational semantics closely follow the syntactic structure of the language, and hence give rise to an abstract machine to interpret it.

Operational semantics for agents by iterated refinement

2004

In this paper we evaluate transition systems as a tool for providing a rule-based specification of the operational aspects of autonomous agents. By our technique, different aspects of an agent can be analyzed and designed in a loosely coupled way, enabling the possibility of studying their properties in isolation. We take as a use case the ParADE framework for building intelligent agents, which leverages a FIPA-like ACL semantics to support semantic interoperability.

Formal Approach to Ensuring Interoperability of Mobile Agents

Design, Implementation, and Emergent Applications, 2012

Mobile agent systems are complex distributed systems that are dynamically composed from autonomous agents. It is difficult to guarantee agent interoperability since they are often developed independently. We propose a formal approach to ensuring agent interoperabiilty which relies on decomposition of a specification of the multiagent application into a set of specifications of the agent roles. We use refinement in the Event-B framework to formally define the process of decomposition.

A calculus of mobile agents

Lecture Notes in Computer Science, 1996

We introduce a calculus for mobile agents and give its chemical semantics, with a precise de nition for migration, failure, and failure detection. Various examples written in our calculus illustrate how to express remote executions, dynamic loading of remote resources and protocols with mobile agents. We give the encoding of our distributed calculus into the join-calculus.

A Logical Study of Distributed Transition Systems

Information and Computation, 1995

We extend labelled transition systems to distributed transition systems by labelling the transition relation with a nite set of actions, representing the fact that the actions occur as a concurrent step. We design an action-based temporal logic in which one can explicitly talk about steps. The logic is studied to establish a variety of positive and negative results in terms of axiomatizability and decidability. Our positive results show that the step notion is amenable to logical treatment via standard techniques. They also help us to obtain a logical characterization of two well known models for distributed systems: labelled elementary net systems and labelled prime event structures. Our negative results show that demanding deterministic structures when dealing with a \noninterleaved" notion of transitions is, from a logical standpoint, very expressive. They also show that another well known model of distributed systems called asynchronous transition systems exhibits a surprising amount of expressive power in a natural logical setting.

Exploiting Labels In Structural Operational Semantics

Fundamenta Informaticae, 2004

Structural Operational Semantics (SOS) allows transitions to be labelled. This is fully exploited in SOS descriptions of concurrent systems, but usually not at all in conventional descriptions of sequential programming languages.

Towards Multi-Level Semantics for Multi-Agent Systems

Electronic Notes in Theoretical Computer Science, 2016

In multi-agent systems, changes in an agent's mental state often reflect changes at the social level as well. Furthermore, most work on agent languages use structural operational semantics to formalise multi-agent systems. As multi-agent systems are complex systems, it is difficult to formalise all relevant aspects of such system as a single transition system, and even transition systems for a single agent can easily become cumbersome. In this paper, we propose a particular style of semantic rules that make it visually clearer how changes at one level of a multi-agent system require simultaneous changes in other levels of the system (where each component of each level is modelled as a separate transition system).

Labelled transition logic: an outline

Acta Informatica, 2001

In the last ten years we have developed and experimented in a series of projects, including industry test cases, a method for the specification of reactive/concurrent/parallel/distributed systems both at the requirement and at the design level. We present here in outline its main technical features, providing pointers to appropriate references for more detailed presentations of single aspects, applications and documentation. The overall main feature of the method is its logical (algebraic) character, because it extends to labelled transition systems the logical/algebraic specification method of abstract data types; moreover systems are viewed as data within first-order structures called LT-structures. Some advantages of the approach are the full integration of the specification of static data and of dynamic systems, which includes by free higher-order concurrency, and the exploitation of well-explored classical techniques in many respects, including implementation and tools. On the other hand the use of labelled transition systems for modelling systems, inspired by CCS, allows us to take advantage, with appropriate extensions, of some important concepts, like communication mechanisms and observational semantics, developed in the area of concurrency around CCS, CSP and related approaches.