Skip to main content

Using Domain-Independent Problems for Introducing Formal Methods

  • Conference paper
FM 2006: Formal Methods (FM 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4085))

Included in the following conference series:

Abstract

The key to the integration of formal methods into engineering practice is education. In teaching, domain-independent problems —i.e., not requiring prior engineering background— offer many advantages.

Such problems are widely available, but this paper adds two dimensions that are lacking in typical solutions yet are crucial to formal methods: (i) the translation of informal statements into formal expressions; (ii) the role of formal calculation (including proofs) in exposing risks or misunderstandings and in discovering pathways to solutions.

A few example problems illustrate this: (a) a small logical one showing the importance of fully capturing informal statements; (b) a combinatorial one showing how, in going from “real-world” formulations to mathematical ones, formal methods can cover more aspects than classical mathematics, and a half-page formal program semantics suitable for beginners is presented as a support; (c) a larger one showing how a single problem can contain enough elements to serve as a Leitmotiv for all notational and reasoning issues in a complete introductory course.

An important final observation is that, in teaching formal methods, no approach can be a substitute for an open mind, as extreme mathphobia appears resistant to any motivation.

Index Terms: Domain-independent problems, Formal methods, Functional Predicate Calculus, Funmath, Generic functionals, Teaching, Specification, Word problems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Almstrum, V.L.: Investigating Student Difficulties With Mathematical Logic. In: Neville Dean, C., Hinchey, M.G. (eds.) Teaching and Learning Formal Methods, pp. 131–160. Academic Press, London (1996)

    Google Scholar 

  2. Backhouse, R.: Algorithmic Problem Solving. Lecture Notes, University of Nottingham (2005), On the web: http://www.cs.nott.ac.uk/~rcb/G5AAPS/aps.ps

  3. Boute, R.T.: Funmath illustrated: a declarative formalism and application examples. Declarative Systems Series No. 1, Computing Science Institute, University of Nijmegen (1993)

    Google Scholar 

  4. Boute, R.: Concrete Generic Functionals: Principles, Design and Applications. In: Gibbons, J., Jeuring, J. (eds.) Generic Programming, pp. 89–119. Kluwer, Dordrecht (2003)

    Google Scholar 

  5. Boute, R.: Functional declarative language design and predicate calculus: a practical approach. ACM TOPLAS 27(5), 988–1047 (2005)

    Article  Google Scholar 

  6. Boute, R.: Calculational semantics: deriving programming theories from equations by functional predicate calculus. ACM TOPLAS (to appear, 2006)

    Google Scholar 

  7. Dahlke, K.: Fun and Challenging Math Problems for the Young, and Young At Heart, http://www.eklhad.net/funmath.html

  8. Dijkstra, E.W.: How Computing Science created a new mathematical style, EWD 1073 (1990), http://www.cs.utexas.edu/users/EWD/ewd10xx/EWD1073.PDF

  9. Gardner, M.: My Best Mathematical and Logic Puzzles. Dover, Mineola (1994)

    MATH  Google Scholar 

  10. Gries, D.: The Science of Programming. Springer, Heidelberg (1981) (5th printing, 1989)

    Google Scholar 

  11. Gries, D., Schneider, F.: A Logical Approach to Discrete Math. Springer, Heidelberg (1993)

    MATH  Google Scholar 

  12. Gries, D.: The need for education in useful formal logic. IEEE Computer 29(4), 29–30 (1996)

    Google Scholar 

  13. Johnson-Laird, P.N.: Example problems in the psychological study of human reasoning, http://www.princeton.edu/~psych/PsychSite/fac_phil.html

  14. Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley, Reading (2002)

    Google Scholar 

  15. Page, R.: BESEME: Better Software Engineering through Mathematics Education, project presentation, http://www.cs.ou.edu/~beseme/besemePres.pdf

  16. Propp, J.: Self-Referential Aptitude Test. Math. Horizons 12, 35 (2005), http://www.maa.org/mathhorizons/volume/volume12.html

    Google Scholar 

  17. Smullyan, R.: The Lady or the Tiger. Random House (1992)

    Google Scholar 

  18. Mike Spivey, J.: The Z notation: A Reference Manual. Prentice-Hall, Englewood Cliffs (1989)

    Google Scholar 

  19. Spolsky, J.: The Perils of JavaSchools. Joel on Software (December 29, 2005), http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html

  20. Taylor, P.: Practical Foundations of Mathematics (2nd printing), Cambridge Studies in Advanced Mathematics, vol. 59. Cambridge University Press, Cambridge (2000), quotation from comment on chapter 1 in: http://www.dcs.qmul.ac.uk/~pt/Practical_Foundations/html/s10.html

  21. Thomas, G.B., Weir, M.D., Hass, J., Giordano, F.R.: Thomas’s Calculus, 11th edn. Addison Wesley, Reading (2004)

    Google Scholar 

  22. Vaandrager, F.: Private communication (February 2006)

    Google Scholar 

  23. Wing, J.M.: Weaving Formal Methods into the Undergraduate Curriculum. In: Proceedings of the 8th International Conference on Algebraic Methodology and Software Technology (AMAST), May 2000, pp. 2–7 (2000), http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/calder/www/amast00.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Boute, R. (2006). Using Domain-Independent Problems for Introducing Formal Methods. In: Misra, J., Nipkow, T., Sekerinski, E. (eds) FM 2006: Formal Methods. FM 2006. Lecture Notes in Computer Science, vol 4085. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11813040_22

Download citation

  • DOI: https://doi.org/10.1007/11813040_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-37215-8

  • Online ISBN: 978-3-540-37216-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics