Skip to main content
Article thumbnail
Location of Repository

ILC: A Foundation for Automated Reasoning About Pointer Programs



Abstract. This paper shows how to use Girard's intuitionistic linear logic extended with a classical sublogic to reason about pointer pro-grams. More specifically, first, the paper defines the proof theory for ILC (Intuitionistic Linear logic with Constraints) and shows it is well-defined via a proof of cut elimination. Second, inspired by prior work of O'Hearn, Reynolds, and Yang, the paper explains how to interpret linear logicalformulas as descriptions of a program store. Third, this paper defines a simple imperative programming language with mutable references and arrays and gives verification condition generation rules that produce assertions in ILC. Finally, we identify a fragment of ILC, ILC-, that isboth decidable and closed under generation of verification conditions. Since verification condition generation is syntax-directed, we obtain adecidable procedure for checking properties of pointer programs

Year: 2009
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • (external link)
  • (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.