Abstract
This paper argues that “formal methods” can (continue to) provide the thinking tools for the future of computing science. Every significant engineering or scientific discipline has advanced only with systematic and formally based notations. To see just how ubiquitous the need for notation is, one can look beyond the sciences and observe the importance of written notation in the development of music. Map making is another area where the importance of notation and the understanding of the need for (levels of) abstraction is recognised. Formal methods provide notations to navigate the future of computing science.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
J. Biccaregui, Matthew Bishop, Theo Dimitakos, Kevin Lano, Brian Matthews, and Brian Ritchie. Supporting co-use of VDM and B by translation. In J. S. Fitzgerald, editor, VDM in 2000, 2000.
J. H. Cheng and C. B. Jones. On the usability of logics which handle partial functions. In C. Morgan and J. C. P. Woodcock, editors, 3rd Refinement Workshop, pages 51–69. Springer-Verlag, 1991.
Pierre Collette and Cliff B. Jones. Enhancing the tractability of rely/guarantee specifications in the development of interfering operations. In Gordon Plotkin, Colin Stirling, and Mads Tofte, editors, Proof, Language and Interaction, chapter 10, pages 275–305. MIT Press, 2000.
Pierre Collette. Design of Compositional Proof Systems Based on Assumption-Commitment Specifications-Application to UNITY. PhD thesis, Louvain-la-Neuve, June 1994.
E. W. Dijkstra. A Discipline of Programming. Prentice-Hall, 1976.
Jürgen Dingel. Systematic Parallel Programming. PhD thesis, Carnegie Mellon University, 2000. CMU-CS-99-172.
W. P. de Roever and K. Engelhardt. Data Refinement: Model-Oriented Proof Methods and Their Comparison. Cambridge University Press, 1999.
Edsger W Dijkstra and Carel S Scholten. Predicate Calculus and Program Semantics. Springer-Verlag, 1990. ISBN 0-387-96957-8, 3-540-96957-8.
R.W. Floyd. Assigning meanings to programs. In Proc. Symp. in Applied Mathematics, Vol.19: Mathematical Aspects of Computer Science, pages 19–32. American Mathematical Society, 1967.
J. R. Gurd and C. B. Jones. The global-yet-personal information system. In Ian Wand and Robin Milner, editors, Computing Tomorrow, pages 127–157. Cambridge University Press, 1996.
R. L. Grossman, A. Nerode, A. P. Ravn, and H. Rischel, editors. Hybrid Systems VIII, volume 736 of Lecture Notes in Computer Science. Springer-Verlag, 1993.
C. A. R. Hoare and C. B. Jones. Essays in Computing Science. Prentice Hall International, 1989.
C. A. R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12(10):576–580, 583, October 1969.
C. A. R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.
Michael Jackson. System Design. Prentice-Hall International, 1983.
Michael Jackson. Problem Frames: Structring and Analysing Software Development Problems. Addison-Wesley, 2000.
C. B. Jones. Development Methods for Computer Programs including a Notion of Interference. PhD thesis, Oxford University, June 1981. Printed as: Programming Research Group, Technical Monograph 25.
C. B. Jones. The search for tractable ways of reasoning about programs. Technical Report UMCS-92-4-4, Manchester University, 1992.
C. B. Jones. Process algebra arguments about an object-based design notation. In A. W. Roscoe, editor, A Classical Mind, chapter 14, pages 231–246. Prentice-Hall, 1994.
C. B. Jones. Accommodating interference in the formal design of concurrent object-based programs. Formal Methods in System Design,8(2):105–122, March 1996.
C. B. Jones. A rigorous approach to formal methods. IEEE, Computer, 29(4):20–21, 1996.
C. B. Jones. Scientific decisions which characterize VDM. In FM’99 — Formal Methods, volume 1708 of Lecture Notes in Computer Science, pages 28–47. Springer-Verlag, 1999.
Cornelius A. Middelburg. Logic and Specification: Extending VDM-SL for advanced formal specification. Chapman and Hall, 1993.
R. Milner. Communication and Concurrency. Prentice Hall, 1989.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100:1–77, 1992.
Donald A Norman. The Psychology of Everyday Things. Basic Books, 1988.
S. Owicki. Axiomatic Proof Techniques for Parallel Programs. PhD thesis, Department of Computer Science, Cornell University, 1975. 75–251.
G. D. Plotkin. A structural approach to operational semantics. Technical report, Aarhus University, 1981.
B. Randell. Facing up to faults. The Computer Jopurnal, 43(2):95–106, 2000.
James Reason. Human Error. Cambridge University Press, 1990.
John Rushby. Using model checking to help discover mode confusions and other automation surprises. In Proceedings of 3rd Workshop on Human Error, pages 1–18. HESSD’99, 1999.
Davide Sangiorgi. Typed π-calculus at work: a correctness proof of Jones’s parallelisation transformation on concurrent objects. Theory and Practice of Object Systems, 5(1):25–34, 1999.
Edwin H. Satterthwaite. Source Language Debugging Tools. PhD thesis, Stanford University, 1975.
Mary Shaw and David Garlan. Sofware Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.
R.L. Sites. Some thoughts on proving clean termination of programs. Technical Report STAN-CS-74-417, Computer Science Department, Stanford University, May 1974.
F. B. Schneider and R. D. Schlichting. Fail-stop processors: an approach to designing fault-tolerant computing systems. TOCS, 1(3):222–238, 1983.
T. B. Steel. Formal Language Description Languages for Computer Programming. North-Holland, 1966.
K. Stølen. Development of Parallel Programs on Shared Data-Structures. PhD thesis, Manchester University, 1990. available as UMCS-91-1-1.
I. C. Smith and D. N. Wall. Programmamable electronic systems for reactor safety. Atom, (395), 1989.
WWW.http://www.dcs.gla.ac.uk/prosper/, 2000.
WWW.http://www.dirc.org.uk, 2000.
WWW.http://www.ifad.dk/products/vdmtools.htm, 2000.
Qiwen Xu. A Theory of State-based Parallel Programming. PhD thesis, Oxford University, 1992.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Jones, C.B. (2001). Thinking Tools for the Future of Computing Science. In: Wilhelm, R. (eds) Informatics. Lecture Notes in Computer Science, vol 2000. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44577-3_8
Download citation
DOI: https://doi.org/10.1007/3-540-44577-3_8
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41635-7
Online ISBN: 978-3-540-44577-7
eBook Packages: Springer Book Archive