Results 1 -
2 of
2
Operational Properties of Lily, a Polymorphic Linear Lambda Calculus with Recursion
"... Plotkin has advocated the combination of linear lambda calculus, polymorphism and fixed point recursion as an expressive semantic metalanguage. We study its expressive power from an operational point of view. We show that the naturally call-by-value operators of linear lambda calculus can be given a ..."
Abstract
-
Cited by 33 (1 self)
- Add to MetaCart
Plotkin has advocated the combination of linear lambda calculus, polymorphism and fixed point recursion as an expressive semantic metalanguage. We study its expressive power from an operational point of view. We show that the naturally call-by-value operators of linear lambda calculus can be given a call-by-name semantics without affecting termination at exponential types and hence without affecting ground contextual equivalence. This result is used to prove properties of a logical relation that provides a new extensional characterisation of ground contextual equivalence and relational parametricity properties of polymorphic types.
Mechanized Operational Semantics via (Co)Induction
, 1999
"... We give a fully automated description of a small programming language in the theorem prover Isabelle-98. The language syntax and semantics are encoded, and we formally verify a range of semantic properties. This is achieved via uniform (co)inductive methods. Keywords: automated deduction, tactical ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
We give a fully automated description of a small programming language in the theorem prover Isabelle-98. The language syntax and semantics are encoded, and we formally verify a range of semantic properties. This is achieved via uniform (co)inductive methods. Keywords: automated deduction, tactical theorem proving (Isabelle), operational semantics, induction and coinduction, software specification and verification. Submitted for publication. 1 Introduction The design of new programming languages which are well-principled, reliable and expressive is an important part of Computer Science. In this paper we contribute towards the techniques for specification, design and development of programming languages by specifying and verifying properties of a core language, using tactical verification within the theorem prover Isabelle 98. We show how this can be done uniformly, so that our methodology readily adapts to new languages, using suitable variations of standard methods to ensure rapid m...

