Access the full text.
Sign up today, get DeepDyve free for 14 days.
References for this paper are not available at this time. We will be adding them shortly, thank you for your patience.
Verification of Array, Record, and Pointer Operations in Pascal DAVID C. LUCKHAM Artificial Intelligence Laboratory, Stanford University and NORIHISA SUZUKI Xerox Palo Alto Research Center A practical method is presented for automating in a uniform way the verification of Pascal programs that operate on the standard Pascal data structures Array, Record, and Pointer. New assertion language primitives are introduced for describing computational effects of operations on these data structures. Axioms defining the semantics of the new primitives are given. Proof rules for standard Pascal operations on data structures are then defined using the extended assertion language. An axiomatic rule for the Pascal storage allocation operation, NEW, is also given. These rules have been implemented in the Stanford Pascal program verifier. Examples illustrating the verification of programs which operate on list structures implemented with pointers and records are discussed. These include programs with side effects. Key Words and Phrases: program verification, data structures, formal semantics, axiomatic semantics, pointers, Pascal, side effect, storage allocation CR Categories: 4.34, 4.49, 5.24 1, INTRODUCTION A x i o m a t i c p r o o f r u l e s are p r e s e n t e d
ACM Transactions on Programming Languages and Systems (TOPLAS) – Association for Computing Machinery
Published: Oct 1, 1979
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.