510 research outputs found
Specification and Construction of Control Flow Semantics
In this paper we propose a visual language CFSL for specifying control flow semantics of programming languages. We also present a translation from CFSL to graph production systems (GPS) for flow graph construction; that is, any CFSL specification, say for a language L, gives rise to a GPS that constructs from any L-program (represented as an abstract syntax graph) the corresponding flow graph. The specification language is rich enough to capture complex language constructs, including all of Java
Action Refinement as an Implementation Relation
We propose a theory of process refinement which relates behavioural descriptions belonging to conceptually different abstraction levels, through a so-called vertical implementation relation. The theory is based on action refinement, which permits to relate abstract actions of the implementation to concrete computations of the implementation; it is developed in the standard interleaving approach. A number of proof rules is shown to be sound for the particular vertical implementation relation (based on observation congruence) we study in this paper. We give an illustrative example
Abstraction and Refinement in Configuration Structures
An abstraction operator for configuration structures is defined and it is proven that it is left inverse to the traditional refinement operator. The abstraction operator describes how concrete behaviour looks when observed from a more abstract level, where the difference between concrete and abstract is given by a transformation mapping. This generates a notion of implementation: L is said to implement H iff L is mapped to H by the abstraction operator. The implementation relation generated by the abstraction operator is strictly more general than the implementation function defined by a refinement operator, thus allowing a more flexible design process for distributed systems
Graph transformation for verification and concurrency
The talk will begin with a brief introduction to Rewriting Logic and use of the Maude language. A case study based on modeling security aspects a remote service toolkit will be used to illustrate the approach to formal modeling and analysis in more detail
Graphical Encoding of a Spatial Logic for the pi-Calculus
This paper extends our graph-based approach to the verification of spatial properties of Ļ-calculus specifications. The mechanism is based on an encoding for mobile calculi where each process is mapped into a graph (with interfaces) such that the denotation is fully abstract with respect to the usual structural congruence, i.e., two processes are equivalent exactly when the corresponding encodings yield isomorphic graphs. Behavioral and structural properties of Ļ-calculus processes expressed in a spatial logic can then be verified on the graphical encoding of a process rather than on its textual representation. In this paper we introduce a modal logic for graphs and define a translation of spatial formulae such that a process verifies a spatial formula exactly when its graphical representation verifies the translated modal graph formula
Bisimilarity congruences for open terms and term graphs via tile logic
The definition of sos formats ensuring that bisimilarity on closed terms is a congruence has received much attention in the last two decades. For dealing with open terms, the congruence is usually lifted from closed terms by instantiating the free variables in all possible ways; the only alternatives considered in the literature are Larsen and Xinxinās context systems and Rensinkās conditional transition systems. We propose an approach based on tile logic, where closed and open terms are managed uniformly, and study the ābisimilarity as congruenceā property for several tile formats, accomplishing different concepts of open system
Contract-Driven Implementation of Choreographies
Choreographies and Contracts are important concepts in Service Oriented Computing. Choreographies are the description of the behaviour of a service system from a global point of view, while contracts are the description of the externally observable message-passing behaviour of a given service. Exploiting some of our previous results about choreography projection and contract refinement, we show how to solve the problem of implementing a choreography via the composition of already available services that are retrieved according to their contracts
- ā¦