Abstract

• A program logic for fresh name generation. • A logic to reason about the nu-calculus (an extension of the lambda-calculus). • Introduces a “derived from” concept with which to restrict universal quantification. • Extends modal quantification with the ability to name the state. • Proves soundness of the program logic rules and axioms. We present a program logic for Pitts and Stark's ν -calculus, an extension of the call-by-value simply-typed λ -calculus with a mechanism for the generation of fresh names. Names can be compared for equality and inequality, producing programs with subtle observable properties. Hidden names produced by interactions between generation and abstraction are captured logically with a second-order quantifier over type contexts. We illustrate usage of the logic through reasoning about well-known difficult cases from the literature.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call