scispace - formally typeset
Search or ask a question

Showing papers on "Operational semantics published in 1994"


Book ChapterDOI
04 Jul 1994
TL;DR: The language is given formal operational semantics and a type inference system, regarding which it is proved that if a program is well-typed in the typing system, it never causes run-time error due to type inconsistent communication patterns.
Abstract: We present a small language \(\mathcal{L}\) and its typing system, starting from the idea of interaction, one of the important notions in parallel and distributed computing. \(\mathcal{L}\) is based on, apart from such constructs as parallel composition and process creation, three pairs of communication primitives which use the notion of a session, a semantically atomic chain of communication actions which can interleave with other such chains freely, for high-level abstraction of interactionbased computing. The three primitives enable programmers to elegantly describe complex interactions among processes with a rigorous type discipline similar to ML [4]. The language is given formal operational semantics and a type inference system, regarding which we prove that if a program is well-typed in the typing system, it never causes run-time error due to type inconsistent communication patterns, offering a new foundation for type discipline in parallel programming languages.

370 citations


Proceedings Article
01 Nov 1994
TL;DR: Experimental results indicate that Newton outperforms existing languages by an order of magnitude and is competitive with some state-of-the-art tools on some standard benchmarks.
Abstract: The design and implementation of constraint logic programming (CLP) languages over intervals is revisited. Instead of decomposing complex constraints in terms of simple primitive constraints as in CLP(BNR), complex constraints are manipulated as a whole, enabling more sophisticated narrowing procedures to be applied in the solver. This idea is embodied in a new CLP language Newton whose operational semantics is based on the notion of box-consistency, an approximation of arc-consistency, and whose implementation uses Newton interval method. Experimental results indicate that Newton outperforms existing languages by an order of magnitude and is competitive with some state-of-the-art tools on some standard benchmarks. Limitations of our current implementation and directions for further work are also identified.

316 citations


Proceedings ArticleDOI
01 Jul 1994
TL;DR: This paper develops an approximate “set-based” operational semantics for the language, which formalizes the intuition of treating program variables as sets and develops an O(n3) algorithm for computing the set based approximation of a program.
Abstract: Reasoning about program variables as sets of “values” leads to a simple, accurate and intuitively appealing notion of program approximation. This paper presents approach for the compile-time analysis of ML programs. To develop the core ideas of the analysis, we consider a simple untyped call-by-value functional language. Starting with an operational semantics for the language, we develop an approximate “set-based” operational semantics, which formalizes the intuition of treating program variables as sets. The key result of the paper is an O(n3) algorithm for computing the set based approximation of a program. We then extend this analysis in a natural way to deal with arrays, arithmetic, exceptions and continuations. We briefly describe our experience with an implementation of this analysis for ML programs.

222 citations


Journal ArticleDOI
TL;DR: In this paper, an approach to the semantics of logic programs whose aim is to find notions of models which really capture the operational semantics, and are, therefore, useful for defining program equivalences and for semantics-based program analysis is presented.
Abstract: This paper is a general overview of an approach to the semantics of logic programs whose aim is to find notions of models which really capture the operational semantics, and are, therefore, useful for defining program equivalences and for semantics-based program analysis. The approach leads to the introduction of extended interpretations which are more expressive than Herbrand interpretations. The semantics in terms of extended interpretations can be obtained as a result of both an operational (top-down) and a fixpoint (bottom-up) construction. It can also be characterized from the model-theoretic viewpoint, by defining a set of extended models which contains standard Herbrand models. We discuss the original construction modeling computed answer substitutions, its compositional version, and various semantics modeling more concrete observables. We then show how the approach can be applied to several extensions of positive logic programs. We finally consider some applications, mainly in the area of semantics-based program transformation and analysis.

168 citations


Book ChapterDOI
11 Jul 1994
TL;DR: In order to define models of simply typed functional programming languages being closer to the operational semantics of these languages, the notions of sequentiality, stability and seriality were introduced.
Abstract: In order to define models of simply typed functional programming languages being closer to the operational semantics of these languages, the notions of sequentiality, stability and seriality were introduced. These works originated from the definability problem for PCF, posed in [Sco72], and the full abstraction problem for PCF, raised in [Plo77].

164 citations


Book ChapterDOI
22 Aug 1994
TL;DR: The panth format as discussed by the authors is a syntactic format for structured operational semantics in which besides ordinary transitions also predicates, negated predicates and negative transitions may occur such that if the rules are stratifiable, strong bisimulation equivalence is a congruence for all the operators that can be defined within the panth.
Abstract: We proposed a syntactic format, the panth format, for structured operational semantics in which besides ordinary transitions also predicates, negated predicates, and negative transitions may occur such that if the rules are stratifiable, strong bisimulation equivalence is a congruence for all the operators that can be defined within the panth format. To show that this format is useful we took some examples from the literature satisfying the panth format but no formats proposed by others. The examples touch upon issues such as priorities, termination, convergence, discrete time, recursion, (infinitary) Hennessy-Milner logic, and universal quantification. Collation: pp. 16, ill. 2, tab. 5, ref. 25.

148 citations


Proceedings ArticleDOI
16 May 1994
TL;DR: A set-theoretic abstract interpretation framework is formulated in a way which is independent of both the programming language and the method used to specify its semantics, starting from its standard denotational semantics.
Abstract: The original formulation of abstract interpretation represents program properties by sets. A property is understood as the set of semantic values satisfying it. Strongest program properties are defined by the collecting semantics which extends the standard semantics to powersets of semantic values. The approximation relation corresponding to the logical implication of program properties is subset inclusion. This was expressed using set and lattice theory in the context of transition systems. Some applications of abstract interpretation, such as strictness analysis for lazy functional languages, require infinite behaviours of higher-order functions to be taken into account. We solve the problem by returning to the sources of abstract interpretation, which consists in considering collecting semantics. By using Galois connections, properties of the standard semantics naturally transfer to the collecting and then to the abstract semantics. This set-theoretic abstract interpretation framework is formulated in a way which is independent of both the programming language and the method used to specify its semantics. It is illustrated for a higher-order monomorphically typed lazy functional language starting from its standard denotational semantics. >

143 citations


Proceedings ArticleDOI
01 Feb 1994
TL;DR: This work unifies previous work on continuation-passing style (CPS) transformations in a generic framework based on Moggi's computational meta-language, and proves an adequacy property for the generic transformation and establishes an equational correspondence between the meta- language and CPS terms.
Abstract: We unify previous work on the continuation-passing style (CPS) transformations in a generic framework based on Moggi's computational meta-language. This framework is used to obtain CPS transformations for a variety of evaluation strategies and to characterize the corresponding administrative reductions and inverse transformations. We establish generic formal connections between operational semantics and equational theories. Formal properties of transformations for specific evaluation orders follow as corollaries.Essentially, we factor transformations through Moggi's computational m eta-language. Mapping l-terms into the meta-language captures computation properties (e.g., partiality, strictness) and evaluation order explicitly in both the term and the type structure of the meta-language. The CPS transformation is then obtained by applying a generic transformation from terms and types in the meta-language to CPS terms and types, based on a typed term representation of the continuation monad. We prove an adequacy property for the generic transformation and establish an equational correspondence between the meta-language and CPS terms.These generic results generalize Plotkin's seminal theorems, subsume more recent results, and enable new uses of CPS transformations and their inverses. We discuss how to aply these results to compilation.

133 citations


Journal ArticleDOI
TL;DR: This work gives a procedure for converting any GSOS language definition to a finite complete equational axiom system (possibly with one infinitary induction principle) which precisely characterizes strong bisimulation of processes.
Abstract: Many process algebras are defined by structural operational semantics (SOS). Indeed, most such definitions are nicely structured and fit the GSOS format of Bloom et al. (J. Assoc. Comput. Mach., to appear). We give a procedure for converting any GSOS language definition to a finite complete equational axiom system (possibly with one infinitary induction principle) which precisely characterizes strong bisimulation of processes.

130 citations


Journal ArticleDOI
TL;DR: This work presents a formal semantics of Basic Message Sequence Charts, exploiting techniques from process algebra based on the semantics of the full language as being proposed for standardization in the International Telecommunication Union.
Abstract: Message Sequence Charts are a widely used technique for the visualization of the communications between system components. We present a formal semantics of Basic Message Sequence Charts, exploiting techniques from process algebra. This semantics is based on the semantics of the full language as being proposed for standardization in the International Telecommunication Union.

124 citations



Journal ArticleDOI
TL;DR: This paper proposes a belief-based semantics for secure databases, which provides a semantics for databases that can “lie” about the state of the world, or about their knowledge about theState of the World, in order to preserve security.
Abstract: The addition of stringent security specifications to the list of requirements for an application poses many new problems in DBMS design and implementation, as well as database design, use, and maintenance. Tight security requirements, such as those that result in silent masking of witholding of true information from a user or the introduction of false information into query answers, also raise fundamental questions about the meaning of the database and the semantics of accompanying query languages. In this paper, we propose a belief-based semantics for secure databases, which provides a semantics for databases that can “lie” about the state of the world, or about their knowledge about the state of the world, in order to preserve security. This kind of semantics can be used as a helpful retrofit for the proposals for a “multilevel secure” database model (a particularly stringent form of security), and may be useful for less restrictive security policies as well. We also propose a family of query languages for multilevel secure relational database applications, and base the semantics of those languages on our semantics for secure databases. Our query languages are free of the semantic problems associated with use of ordinary SQL in a multilevel secure context, and should be easy for users to understand and employ.

Journal ArticleDOI
TL;DR: The theoretical foundations of hypernodes and types are given, and it is shown that type checking is tractable, and also how conventional type-forming operators can be simulated by graph types, including cyclic types.
Abstract: Three recent trends in database research are object-oriented and deductive databases and graph-based user interfaces. We draw these trends together in a data model we call the Hypernode Model. The single data structure of this model is the hypernode, a graph whose nodes can themselves be graphs. Hypernodes are typed, and types, too, are nested graphs. We give the theoretical foundations of hypernodes and types, and we show that type checking is tractable. We show also how conventional type-forming operators can be simulated by our graph types, including cyclic types. The Hypernode Model comes equipped with a rule-based query language called Hyperlog, which is complete with respect to computation and update. We define the operational semantics of Hyperlog and show that the evaluation can be performed efficiently. We discuss also the use of Hyperlog for supporting database browsing, an essential feature of Hypertext databases. We compare our work with other graph-based data models—unlike previous graph-based models, the Hypernode Model provides inherent support for data abstraction via its nesting of graphs. Finally, we briefly discuss the implementation of a DBMS based on the Hypernode Model.

Journal ArticleDOI
TL;DR: This paper presents a proof procedure for the possible model semantics, an alternative theoretical framework to the classical minimal model semantics and provides a flexible inference mechanism for inferring negation in disjunctive logic programs.
Abstract: In this paper, we study a new semantics of logic programming and deductive databases. Thepossible model semantics is introduced as a declarative semantics of disjunctive logic programs. The possible model semantics is an alternative theoretical framework to the classical minimal model semantics and provides a flexible inference mechanism for inferring negation in disjunctive logic programs. We also present a proof procedure for the possible model semantics and show that the possible model semantics has an advantage from the computational complexity point of view.

Book
01 Sep 1994
TL;DR: Syntax Trees Those qualities of a BNF definition that make parsing possible also create a resulting derivation tree containing far more information than necessary for a semantic specification.
Abstract: This text developed out of our experiences teaching courses covering the formal semantics of programming languages

Journal ArticleDOI
TL;DR: This work studies a notion of observation for concurrent processes which allows the observer to see the distributed nature of processes, giving explicit names for the location of actions, and finds that these bisimulation relations are completely axiomatizable.
Abstract: We study a notion of observation for concurrent processes which allows the observer to see the distributed nature of processes, giving explicit names for the location of actions. A general notion of bisimulation related to this observation of distributed systems is introduced. Our main result is that these bisimulation relations, particularized to a process algebra extending CCS, are completely axiomatizable. We discuss in detail two instances of location bisimulations, namely the location equivalence and the location preorder.

Journal ArticleDOI
TL;DR: This presentation is based on a semantic formalism that combines the benefits of the approaches considered by Wright and Felleisen, and by Tofte, leading to a particularly simple proof of soundness of T ofte's type discipline.

Journal ArticleDOI
TL;DR: This paper proposes two principles, justifiability and minimal undefinedness, for a three-valued model-theoretic approach to semantics of logic programs and deductive databases, which yields a declarative semantics, which is called the regular model semantics.

Journal ArticleDOI
TL;DR: This paper focuses on a sequential extension of PCF that includes two classes of control operators: a possibly empty set of error generators and a collection of catch and throw constructs, and presents a fully abstract semantics for SPCF.
Abstract: One of the major challenges in denotational semantics is the construction of a fully abstract semantics for a higher-order sequential programming language. For the past fifteen years, research on this problem has focused on developing a semantics for PCF, an idealized functional programming language based on the typed λ-calculus. Unlike most practical languages, PCF has no facilities for observing and exploiting the evaluation order of arguments to procedures. Since we believe that these facilities play a crucial role in sequential computation, this paper focuses on a sequential extension of PCF, called SPCF, that includes two classes of control operators: a possibly empty set of error generators and a collection of catch and throw constructs. For each set of error generators, the paper presents a fully abstract semantics for SPCF. If the set of error generators is empty, the semantics interprets all procedures-including catch and throw-as Berry-Curien sequential algorithms. If the language contains error generators, procedures denote manifestly sequential functions. The manifestly sequential functions form a Scott domain that is isomorphic to a domain of decision trees, which is the natural extension of the Berry-Curien domain of sequential algorithms in the presence of errors.

Journal ArticleDOI
TL;DR: A number of analyses are developed, based on abstract interpretation, which succeed if a program is definitely suspension free, and it is proven that for these analyses it suffices to consider only one scheduling policy, allowing for efficient implementation.
Abstract: Concurrent logic languages specify reactive systems which consist of collections of communicating processes. The presence of unintended suspended computations is a common programming error which is difficult to detect using standard debugging and testing techniques. We develop a number of analyses, based on abstract interpretation, which succeed if a program is definitely suspension free. If an analysis fails, the program may, or may not, be suspension free. Examples demonstrate that the analyses are practically useful. They are conceptually simple and easy to justify because they are based directly on the transition system semantics of concurrent logic programs. A naive analysis must consider all scheduling policies. However, it is proven that for our analyses it suffices to consider only one scheduling policy, allowing for efficient implementation.

Journal ArticleDOI
TL;DR: In this paper, a compositional operational semantics for logic programs is defined, which models computed answer substitutions and is compositional w.r.t. the union 6f programs, and the fixpoint semantics given by Bossi and Menegus (1991) is proved equivalent to the operational semantics.

Journal ArticleDOI
TL;DR: The correctness of the model is demonstrated by proving it equivalent to an operational semantics of inheritance based upon the method lookup algorithm of object-oriented languages.
Abstract: This paper presents a denotational model of inheritance. The model is based on an intuitive motivation of inheritance as a mechanism for deriving modified versions of recursive definitions. The correctness of the model is demonstrated by proving it equivalent to an operational semantics of inheritance based upon the method lookup algorithm of object-oriented languages.

01 Jan 1994
TL;DR: This dissertation investigates a new approach to query languages inspired by structural recursion and by the categorical notion of a monad, which provides easy answers to several hitherto unresolved conjectures on query languages that are more realistic than the flat relational algebra.
Abstract: This dissertation investigates a new approach to query languages inspired by structural recursion and by the categorical notion of a monad. A language based on these principles has been designed and studied. It is found to have the strength of several widely known relational languages but without their weaknesses. This language and its various extensions are shown to exhibit a conservative extension property, which indicates that the depth of nesting of collections in intermediate data has no effect on their expressive power. These languages also exhibit the finite-cofiniteness property on many classes of queries. These two properties provide easy answers to several hitherto unresolved conjectures on query languages that are more realistic than the flat relational algebra. A useful rewrite system has been derived from the equational theory of monads. It forms the core of a source-to-source optimizer capable of performing filter promotion, code motion, and loop fusion. Scanning routines and printing routines are considered as part of optimization process. An operational semantics that is a blending of eager evaluation and lazy evaluation is suggested in conjunction with these input-output routines. This strategy leads to a reduction in space consumption and a faster response time while preserving good total time performance. Additional optimization rules have been systematically introduced to cache and index small relations, to map monad operations to several classical join operators, to cache large intermediate relations, and to push monad operations to external servers. A query system Kleisli and a high-level query language CPL for it have been built on top of the functional language ML. Many of my theoretical and practical contributions have been physically realized in Kleisli and CPL. In addition, I have explored the idea of open system in my implementation. Dynamic extension of the system with new primitives, cost functions, optimization rules, scanners, and writers are fully supported. As a consequence, my system can be easily connected to external data sources. In particular, it has been successfully applied to integrate several genetic data sources which include relational databases, structured files, as well as data generated by special application programs.

Book ChapterDOI
07 Nov 1994
TL;DR: An axiomatisation of security properties based on the notion of information flow for a simple guarded command language is proposed and its soundness is proved with respect to the operational semantics of the language.
Abstract: We give a formal definition of the notion of information flow for a simple guarded command language. We propose an axiomatisation of security properties based on this notion of information flow and we prove its soundness with respect to the operational semantics of the language. We then identify the sources of non determinism in proofs and we derive in successive steps an inference algorithm which is both sound and complete with respect to the inference system.

Proceedings ArticleDOI
24 May 1994
TL;DR: The brave variants of these semantics of disjunctive datalog express the same set of queries and precisely capture the complexity of class &Sgr;P/2.
Abstract: We study the expressive power and complexity of disjunctive datalog, i.e., datalog with disjunctive rule heads, under three different semantics: the minimal model semantics, the perfect models semantics, and the stable model semantics. We show that the brave variants of these semantics express the same set of queries. In fact, they precisely capture the complexity of class SP/2. The combined complexity of disjunctive datalog is shown to be NEXPTIMENP-complete.

Book ChapterDOI
17 Jun 1994
TL;DR: This paper demonstrates an approach to derive bottom-up query-evaluation algorithms from abstract properties of the underlying negation semantics for the disjunctive stable model semantics, and proposes an appropriate completion of the residual program, which syntactically characterizes the intended models.
Abstract: Our goal is to derive bottom-up query-evaluation algorithms from abstract properties of the underlying negation semantics. In this paper, we demonstrate our approach for the disjunctive stable model semantics, but the ideas are applicable to many other semantics as well. Our framework also helps to understand and compare other proposed query evaluation algorithms. It is based on the notion of conditional facts, developed by Bry and Dung/Kanchansut. We start by computing a “residual program” and show that it is equivalent to the original program under very general conditions on the semantics (which are satisfied, e.g., by the well-founded, stable, stationary, and static semantics). Many queries can already be answered on the basis of the residual program. For the remaining literals, we propose to use an appropriate completion of the residual program, which syntactically characterizes the intended models. In the case of the stable model semantics, we utilize an interesting connection to Clark's completion.

Journal ArticleDOI
TL;DR: A language-independent semantic model of the process of combining changes to programs is presented, which extends the domains used in denotational semantics to Boolean algebras, and represents incompatible modifications as well as compatible extensions.
Abstract: We present a language-independent semantic model of the process of combining changes to programs. This model extends the domains used in denotational semantics (complete partial orders) to Boolean algebras, and represents incompatible modifications as well as compatible extensions. The model is used to define the intended semantics of change-merging operations on programs and to establish some general properties of software merging. We determine conditions under which changes to subprograms of a software system can be merged independently and illustrate cases where this is not possible.

Michael Hanus1
01 Jan 1994
TL;DR: This paper surveys the development of the operational semantics as well as the improvement of the implementation of functional logic languages.
Abstract: Functional and logic programming are the most important declarative programming paradigms, and interest in combining them has grown over the last decade. Early research concentrated on the definition and improvement of execution principles for such integrated languages, while more recently efficient implementations of these execution principles have been developed so that these languages became relevant for practical applications. In this paper we survey the development of the operational semantics as well as the improvement of the implementation of functional logic languages.

Book ChapterDOI
01 Jan 1994
TL;DR: A new semantics for disjunctive logic programs in an abstract way is defined as the weakest semantics with certain properties, the most important being the unfolding-property (GPPE).
Abstract: We define a new semantics for disjunctive logic programs in an abstract way as the weakest semantics with certain properties, the most important being the unfolding-property (GPPE). Our semantics is similar to the strong well-founded semantics proposed by Ross, but seems to be more regularly behaved. It is an extension of both the well-founded semantics WFS and the generalized closed world semantics GCWA. We then present a bottom-up query-evaluation method for this semantics. An important feature of our approach is that we directly derive the algorithm from the given abstract properties of the logic programming semantics. The idea of the method is to compute derived rule instances with purely negative bodies (corresponding to Bry’s conditional facts and Chen/Warren’S residual program), and then to apply reduction steps in order to eliminate the conditions where possible.

Journal ArticleDOI
Luca Aceto1
TL;DR: This paper introduces effective notions of equivalence and preorder which are shown to coincide with those proposed in [BCHK], and gives these “distributed nets” a standard operational semantics which associates with each net a finite labelled transition system.
Abstract: This paper proposes alternative, effective characterizations for nets of automata of the location equivalence and preorder presented by Boudol et al. in the companion paper [BCHK]. Contrary to the technical development in the above given reference, where locations are dynamically associated to the subparts of a process in the operational semantics, the equivalence and preorder we propose are based on a static association of locations to the parallel components of a net. Following this static approach, it is possible to give these “distributed nets” a standard operational semantics which associates with each net a finite labelled transition system. Using this operational semantics for distributed nets, we introduce effective notions of equivalence and preorder which are shown to coincide with those proposed in [BCHK].