Results 11  20
of
80
Reasoning about local variables with operationallybased logical relations
 In LICS
, 1996
"... A parametric logical relation between the phrases of an Algollike language is presented. Its definition involves the structural operational semantics of the language, but was inspired by recent denotationallybased work of O’Hearn and Reynolds on translating Algol into a predicatively polymorphic l ..."
Abstract

Cited by 32 (3 self)
 Add to MetaCart
A parametric logical relation between the phrases of an Algollike language is presented. Its definition involves the structural operational semantics of the language, but was inspired by recent denotationallybased work of O’Hearn and Reynolds on translating Algol into a predicatively polymorphic linear lambda calculus. The logical relation yields an applicative characterisation of contextual equivalence for the language and provides a useful (and complete) method for proving equivalences. Its utility is illustrated by giving simple and direct proofs of some contextual equivalences, including an interesting equivalence due to O’Hearn which hinges upon the undefinability of ‘snapback ’ operations (and which goes beyond the standard suite of ‘MeyerSieber ’ examples). Whilst some of the mathematical intricacies of denotational semantics are avoided, the hard work in this operational approach lies in establishing the ‘fundamental property’ for the logical relation—the proof of which makes use of a compactness property of fixpoint recursion with respect to evaluation of phrases. But once this property has been established, the logical relation provides a verification method with an attractively low mathematical overhead. 1.
A Conservative Look at Operational Semantics with Variable Binding
 INFORMATION AND COMPUTATION
, 1998
"... We set up a formal framework to describe transition system specifications in the style of Plotkin. This framework has the power to express manysortedness, general binding mechanisms and substitutions, among other notions such as negative hypotheses and unary predicates on terms. The framework i ..."
Abstract

Cited by 32 (5 self)
 Add to MetaCart
We set up a formal framework to describe transition system specifications in the style of Plotkin. This framework has the power to express manysortedness, general binding mechanisms and substitutions, among other notions such as negative hypotheses and unary predicates on terms. The framework is used to present a conservativity format in operational semantics, which states sufficient criteria to ensure that the extension of a transition system specification with new transition rules does not affect the semantics of the original terms.
Monads, effects and transformations
 Electronic Notes in Theoretical Computer Science
, 1999
"... Abstract We define a typed compiler intermediate language, MILlite, which incorporates computational types refined with effect information. We characterise MILlite observational congruence by using Howe's method to prove a ciu theorem for the language in terms of a termination predicate defined di ..."
Abstract

Cited by 27 (9 self)
 Add to MetaCart
Abstract We define a typed compiler intermediate language, MILlite, which incorporates computational types refined with effect information. We characterise MILlite observational congruence by using Howe's method to prove a ciu theorem for the language in terms of a termination predicate defined directly on the term. We then define a logical predicate which captures an observable version of the intended meaning of each of our effect annotations. Having proved the fundamental theorem for this predicate, we use it with the ciu theorem to validate a number of effectbased transformations performed by the MLj compiler for Standard ML.
Bisimilarity of Open Terms
, 2000
"... Traditionally, in process calculi, relations over open terms, i.e., terms with free process variables, are defined as extensions of closedterm relations: two open terms are related if and only if all their closed instantiations are related. Working in the context of bisimulation, in this paper we s ..."
Abstract

Cited by 20 (0 self)
 Add to MetaCart
Traditionally, in process calculi, relations over open terms, i.e., terms with free process variables, are defined as extensions of closedterm relations: two open terms are related if and only if all their closed instantiations are related. Working in the context of bisimulation, in this paper we study a different approach; we define semantic models for open terms, socalled conditional transition systems, and define bisimulation directly on those models. It turns out that this can be done in at least two different ways, one giving rise to De Simone's formal hypothesis bisimilarity and the other to a variation which we call hypothesispreserving bisimilarity (denoted t fh and t hp, respectively). For open terms, we have (strict) inclusions t fh /t hp / t ci (the latter denoting the standard ``closed instance' ' extension); for closed terms, the three coincide. Each of these relations is a congruence in the usual sense. We also give an alternative characterisation of t hp in terms of nonconditional transitions, as substitutionclosed bisimilarity (denoted t sb). Finally, we study the issue of recursion congruence: we prove that each of the above relations is a congruence with respect to the recursion operator; however, for t ci this result holds under more restrictive conditions than for tfh and thp.]
Relational Reasoning about Contexts
 HIGHER ORDER OPERATIONAL TECHNIQUES IN SEMANTICS, PUBLICATIONS OF THE NEWTON INSTITUTE
, 1998
"... ..."
From SOS Rules to Proof Principles: An Operational Metatheory for Functional Languages
 In Proc. POPL'97, the 24 th ACM SIGPLANSIGACT Symposium on Principles of Programming Languages
, 1997
"... Structural Operational Semantics (SOS) is a widely used formalism for specifying the computational meaning of programs, and is commonly used in specifying the semantics of functional languages. Despite this widespread use there has been relatively little work on the imetatheoryj for such semantics. ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
Structural Operational Semantics (SOS) is a widely used formalism for specifying the computational meaning of programs, and is commonly used in specifying the semantics of functional languages. Despite this widespread use there has been relatively little work on the imetatheoryj for such semantics. As a consequence the operational approach to reasoning is considered ad hoc since the same basic proof techniques and reasoning tools are reestablished over and over, once for each operational semantics speciøcation. This paper develops some metatheory for a certain class of SOS language speciøcations for functional languages. We deøne a rule format, Globally Deterministic SOS (gdsos), and establish some proof principles for reasoning about equivalence which are sound for all languages which can be expressed in this format. More speciøcally, if the SOS rules for the operators of a language conform to the syntax of the gdsos format, then ffl a syntactic analogy of continuity holds, which rel...
A congruence format for namepassing calculi
 In Proceedings of the Second Workshop on Structural Operational Semantics (SOS’05), volume 156 of Electron. Notes Theor. Comput. Sci
, 2005
"... ..."
From Settheoretic Coinduction to Coalgebraic Coinduction: some results, some problems
, 1999
"... ..."
A Definitional TwoLevel Approach to Reasoning with HigherOrder Abstract Syntax
 Journal of Automated Reasoning
, 2010
"... Abstract. Combining higherorder abstract syntax and (co)induction in a logical framework is well known to be problematic. Previous work [ACM02] described the implementation of a tool called Hybrid, within Isabelle HOL, syntax, and reasoned about using tactical theorem proving and principles of (co ..."
Abstract

Cited by 14 (3 self)
 Add to MetaCart
Abstract. Combining higherorder abstract syntax and (co)induction in a logical framework is well known to be problematic. Previous work [ACM02] described the implementation of a tool called Hybrid, within Isabelle HOL, syntax, and reasoned about using tactical theorem proving and principles of (co)induction. Moreover, it is definitional, which guarantees consistency within a classical type theory. The idea is to have a de Bruijn representation of syntax, while offering tools for reasoning about them at the higher level. In this paper we describe how to use it in a multilevel reasoning fashion, similar in spirit to other metalogics such as Linc and Twelf. By explicitly referencing provability in a middle layer called a specification logic, we solve the problem of reasoning by (co)induction in the presence of nonstratifiable hypothetical judgments, which allow very elegant and succinct specifications of object logic inference rules. We first demonstrate the method on a simple example, formally proving type soundness (subject reduction) for a fragment of a pure functional language, using a minimal intuitionistic logic as the specification logic. We then prove an analogous result for a continuationmachine presentation of the operational semantics of the same language, encoded this time in an ordered linear logic that serves as the specification layer. This example demonstrates the ease with which we can incorporate new specification logics, and also illustrates a significantly