English

Logical Reasoning for Higher-Order Functions with Local State

Logic in Computer Science 2015-07-01 v2 Programming Languages

Abstract

We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-like local reference generation. Local references may be generated dynamically and exported outside their scope, may store higher-order functions and may be used to construct complex mutable data structures. This primitive is captured logically using a predicate asserting reachability of a reference name from a possibly higher-order datum and quantifiers over hidden references. We explore the logic's descriptive and reasoning power with non-trivial programming examples combining higher-order procedures and dynamically generated local state. Axioms for reachability and local invariant play a central role for reasoning about the examples.

Keywords

Cite

@article{arxiv.0806.2448,
  title  = {Logical Reasoning for Higher-Order Functions with Local State},
  author = {Nobuko Yoshida and Kohei Honda and Martin Berger},
  journal= {arXiv preprint arXiv:0806.2448},
  year   = {2015}
}

Comments

68 pages

R2 v1 2026-06-21T10:50:44.062Z