Abstract
The History of Formal Methods 2019 workshop ended with a discussion reflecting on the discipline of formal methods. An initial prompting question, “What have formal methods ever done for us?”, was presented, but the discussion evolved from there into consideration of applicability, education, and even Star Trek. The session was chaired and curated by Troy Astarte, who has also prepared this summary of the discussion. It is not a perfect transcription but rather a report on the interesting and stimulating conversation that resulted.
Supported by EPSRC.
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 subscriptionsNotes
- 1.
Throughout this text, I will refer to myself in the first person when I contributed to the discussion.
- 2.
I am grateful to Jeremy Gibbons for pointing out that in certain circles, such as IFIP Working Conferences, this tradition persisted for some time. See the 2002 conference on Generic Programming [3].
- 3.
The inspiration for this question is, of course, the classic scene from Monty Python’s Life of Brian.
- 4.
See a report authored by a number of people from the company on their use of formal methods [6].
- 5.
One example of a study that addressed this was reported in [12].
- 6.
The webpages can be found at https://www.cs.ox.ac.uk/strachey100/ which includes a link to recordings of all the talks.
- 7.
Schematic entry is the particular part of the electronics design process that involves drawing diagrams.
- 8.
Berry later added by email that he was particularly thinking here of Patterson’s PhD thesis [8].
- 9.
The history of maths community would reproach me if I did not comment that mathematical works must be appreciated within their historical context. One handbook for doing this has been written by Wardaugh [11].
- 10.
A further editorial note courtesy of Berry: patents are often written in a confusing way in order to play up the non-obviousness of the proposed “invention”.
- 11.
Expanding this point, Gibbons remarked in a later email: “Yes, a formal methodist can make a more precise specification than someone who doesn’t know maths, e.g. for writing a technical specification. The problem is that the specification must also be readable by people who don’t know maths. Rick Hehner used to tell a nice story about arguing with his lawyer while trying to write a will: how to specify the class of related people to whom your assets will be distributed. The lawyer had a long piece of text about cousins, and second cousins, and third, etc. Rick had a much shorter specification in terms of the transitive closure of a small relation. Rick lost the argument, because the reader of the will is not someone like Rick, but someone like Rick’s lawyer”.
- 12.
Earlier in the workshop, Berry had given a talk about his own shift in research emphasis away from formal methods and towards requirement engineering [2].
- 13.
These two worked together on denotational semantics in the 1970s; for an account of their work see Chap. 4 of [1].
References
Astarte, T.K.: Formalising meaning: a history of programming language semantics. Ph.D. thesis, Newcastle University, June 2019
Berry, D.M.: The prehistory and history of RE (+SE) as seen by me: how my interest in FMs helped to move me to RE and to teach me fundamental impediments to using FMs in SW systems development (abstract). In: Moreira, N., Sekerinski, E. (eds.) FM 2019 Workshops Proceedings, LNCS. Springer (2020)
Gibbons, J., Jeuring, J. (eds.): Generic Programming. In: Proceedings of the IFIP TC2 Working Conference on Generic Programming, Schloß Dagstuhl, July 2002. Kluwer Academic Publishers (2003). ISBN 1-4020-7374-7
Hadar, I., Zamansky, A., Berry, D.M.: The inconsistency between theory and practice in managing inconsistency in requirements engineering. Empir. Softw. Eng. 24, 3972–4005 (2019)
Johnstone, A., Scott, E.: Babbage’s mechanical notation (abstract). In: Moreira, N., Sekerinski, E. (eds.) FM 2019 Workshops Proceedings, LNCS. Springer (2020)
Newcombe, C., et al.: Use of Formal Methods at Amazon Web Services, September 2014. http://lamport.azurewebsites.net/tla/formal-methods-amazon.pdf
Nunes, P.: Libro de Algebra en Arithmetica y Geometria. Original edition by Arnoldo Birckman (Anvers) (1567)
Patterson, D.A.: Verification of microprograms. Ph.D. thesis, University of California, Los Angeles (1976)
Russo, L., et al.: The Forgotten Revolution: How Science was Born in 300 BC and Why it had to be Reborn. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-18904-3
Steel, T.B.: Formal Language Description Languages for Computer Programming. North-Holland, Amsterdam (1966)
Wardhaugh, B.: How to Read Historical Mathematics. Princeton University Press, Princeton (2010)
Woodcock, J., Larsen, P.G., Bicarregui, J., Fitzgerald, J.: Formal methods: practice and experience. ACM Comput. Surv. 41(4) (2009)
Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM Trans. Softw. Eng. Methodol. (TOSEM) 6(1), 1–30 (1997)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Astarte, T.K. (2020). What Have Formal Methods Ever Done for Us? An Audience Discussion. In: Sekerinski, E., et al. Formal Methods. FM 2019 International Workshops. FM 2019. Lecture Notes in Computer Science(), vol 12233. Springer, Cham. https://doi.org/10.1007/978-3-030-54997-8_7
Download citation
DOI: https://doi.org/10.1007/978-3-030-54997-8_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-54996-1
Online ISBN: 978-3-030-54997-8
eBook Packages: Computer ScienceComputer Science (R0)