Abstract
In late 1971 Shigeru Igarashi, Ralph London, David Luckham, and Robin Milner were working at the Stanford Artificial Intelligence Laboratory. At the same time Niklaus Wirth was visiting the Computer Science Department at Stanford. Robin Milner was implementing LCF [25, 26], a formal system to reason about programs based on Dana Scott’s logic of computable functions.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
Bibliography
Alberga, C. N., et. al.: A program development tool, Research report RC 7859, IBM 1979.
Allen J. R. : Stanford Resolution Theorem Prover: A user manual, Stanford Artificial Intelligence Lab. Operating Note, 1971..
Burstall, R. M., Goguen, J. A.: Putting theories together to make specifications, hit. Joint Conf. on Artifical Intelligence, Boston 1977.
Cartright, R., Oppen, D.: The Logic of Aliasing, STAN-CS-79–740.
Deutsch, L. P.: An interactive program verifier, Report CSL-73–1, XEROX PARC, 1973.
Floyd, R. W.: Assigning Meanings to Programs, Proceedings of Symp. in Applied Mathematics 19 (1967).
German, S.M.: Automating proofs of the absence of common runtime errors, Proc. 5th. ACM Symp. on Principles of Programming Languages, Tucson, 1978, pp 105–118.
German, S.M.: An extended semantic definition of Pascal for proving the absence of common runtime errors, STAN-CS-80–811.
Gordon, M., Milner, R., Wadsworth, C.: Edinburgh LCF, Report CSR-11–77, University of Edinburgh.
von Henke F. W., Luckham D. C.: Automatic Program Verification III: A Methodology for Verifying Programs, AIM-256, 1974.
Hoare, C. A. R.: An Axiomatic Basis of Computer Programming, CACM 12, Oct, pp 576–580 (1969).
Hoare, C. A. R., Wirth, N.: An Axiomatic Definition of the Programming language Pascal, Acta Informatica, 2 (1973), pp.335–355.
Igarashi, S., London, R. L., Luckham, D. C.: Automatic Program Verification 1: Logical Basis and Its Implementation, Acta Informatica, Vol 4, pp 145–182 (1975).
Jensen, K., Wirth, N.: PASCAL, User Manual and Report, Springer, New York, Heidelberg, Berlin, 1976.
Karp, R. A.: Proving Concurrent Programs Correct, STAN-CS-79–783.
King, J. C.: A program verifier, Ph. D. Thesis, CMU, 1969.
Lamport, B.W., et. al.: Report on the programming language Euclid, Sigplan Notices, Vol. 12, No. 2, 1977.
London, R. L.: Correctness of two compilers for a LISP subset, AIM - 151, Stanford University, 1971.
London, R.L. et al: Proof rules for the programming language Euclid, Acta Informatica, Vol 10, No 1 (1978).
Luckham, D. C., Polak, W.: ADA Exceptions: Specification and Proof Techniques, STAN—CS-80–789.
Luckham, D. C., Suzuki, N.: Automatic Program Verification IV: Proof of Termination Within a Weak Logic of Programs, AIM-269, October 1975.
Luckham, D. C., Suzuki, N.: Automatic Program Verification V: Verification-Oriented Proof Rules for Arrays, Records and Pointers, MM-278, March 1976.
Luckham, D. C., Suzuki, N.: Verification of Array, Record, and Pointer Operations in Pascal, ACM TOPLAS 1/2, 1979.
McCarthy, J., Painter, J.: Correctness of a Compiler for Arithmetic Expressions, AIM-40, Stanford University 1966.
Milner R.: Implementation and applications of Scott’s Logic for Computable Functions., in: Proceedings of the ACM Conference on Proving Assertions about Programs, Las Cruces, 1972.
Milner, R.: Logic for Computable Functions: Description of a Machine Implementation, AIM-169, May 1972.
Nakajima, R., Honda, M., Nakahara, L: Hierarchical program specification and verification — a many-sorted logical approach., Acta Informatica, Vol 14, Fasc. 2, 1980.
Nelson, C. G., Oppen, D. C.: Simplification by Cooperating Decision Procedures, AIM-311, April 1978.
Nelson, C. G., Oppen, D. C.: Simplification by Cooperating Decision Procedures, TOPLAS 2/1,1979.
Nelson, C. G., Oppen, D. C.: Fast decision procedures based on congruence closure, JACM 27/2, 1980.
Nelson, C. G., Oppen, D. C.: Fast decision procedures based on UNION and FIND, Proc 18th Annual Symp. on Foundations of Comp. Science, Providence, RI, 1977.
Oppen, D. C.: Complexity, convexity, and combinations of theories, TCS 12/3, 1980.
Oppen, D. C.: Reasoning about recursively defined data structures, JACM 27/2, 1980.
Polak, W.: An exercise in automatic program verification, IEEE Transactions on Software Engineering, SE-5/5 (1979).
Polak, W.: Theory of compiler specification and verification, STAN—CS-80–802.
Polak W.: Proram verification based on denotational semantics, Proc. 8th. ACM Symp. on Principles of Programming languages, Williamsburg, 1981.
Reynolds J.C.: Reasoning about arrays, Communications of the ACM 22.5, 1979, 290–299.
Stanford Verification Group: Stanford Pascal Verifier User Manual, Stanford Verification Group Report No. 11, 1979.
Suzuki, N.: Automatic Program Verification II: verifying programs by algebraic and logical reduction, STAN-CS-74–473.
Suzuki, N.: Verifying Programs by Algebraic and Logical Reduction, Proceedings of Int’l Conf on Reliable Software, IEEE, pp 473–481 (1975).
Suzuki, N.: Automatic Verification of Programs with Complex Data Structures, AIM-279, February 1976.
Teitelbaum, R. T.: The Cornell Program Synthesizer: A microcomputer Implementation of PL/CS, Cornell TR 79–370, 1979.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1981 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Polak, W. (1981). Program Veriflcation at Stanford: Past, Present, Future. In: Siekmann, J.H. (eds) GWAI-81. Informatik-Fachberichte, vol 47. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-02328-0_24
Download citation
DOI: https://doi.org/10.1007/978-3-662-02328-0_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-10859-7
Online ISBN: 978-3-662-02328-0
eBook Packages: Springer Book Archive