A complete and decidable proof system for call-by-value equalities
Proceedings of the seventeenth international colloquium on Automata, languages and programming
Notions of computation and monads
Information and Computation
Research topics in functional programming
The revised report on the syntactic theories of sequential control and state
Theoretical Computer Science
Inferring the equivalence of functional programs that mutate data
Theoretical Computer Science
Reasoning about programs in continuation-passing style
Lisp and Symbolic Computation - Special issue on continuations—part I
Functional programming and input/output
Functional programming and input/output
A variable typed logic of effects
Information and Computation
Algebraic theories for name-passing calculi
Information and Computation
Proving congruence of bisimulation in functional programming languages
Information and Computation
Bisimulation for higher-order process calculi
Information and Computation
A calculus for cryptographic protocols: the spi calculus
Proceedings of the 4th ACM conference on Computer and communications security
Higher order operational techniques in semantics
Higher order operational techniques in semantics
Operational reasoning for functions with local state
Higher order operational techniques in semantics
Reasoning about functions with effects
Higher order operational techniques in semantics
The Definition of Standard ML
Observable Properties of Higher Order Functions that Dynamically Create Local Names, or What's new?
MFCS '93 Proceedings of the 18th International Symposium on Mathematical Foundations of Computer Science
Primitive Recursion for Higher-Order Abstract Syntax
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Five Axioms of Alpha-Conversion
TPHOLs '96 Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics
FoSSaCS '98 Proceedings of the First International Conference on Foundations of Software Science and Computation Structure
The semantics of destructive lisp (side-effects)
The semantics of destructive lisp (side-effects)
Hi-index | 0.00 |
The nu-calculus of Pitts and Stark is a typed lambda-calculus, extended with state in the form of dynamically-generated names. These names can be created locally, passed around, and compared with one another. Through the interaction between names and functions, the language can capture notions of scope, visibility and sharing. Originally motivated by the study of references in Standard ML, the nu-calculus has connections to local declarations in general; to the mobile processes of the π-calculus; and to security protocols in the spi-calculus. This paper introduces a logic of equations and relations which allows one to reason about expressions of the nu-calculus: this uses a simple representation of the private and public scope of names, and allows straightforward proofs of contextual equivalence (also known as observational, or observable, equivalence). The logic is based on earlier operational techniques, providing the same power but in a much more accessible form. In particular it allows intuitive and direct proofs of all contextual equivalences between first-order functions with local names.