Skip to main content

A Formal Template Language Enabling Metaproof

  • 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

Design patterns are usually described in terms of instances. Templates describe sentences of some language with a particular form, generate sentences upon instantiation, and can be used to describe those commonly occurring structures that make a pattern. This paper presents FTL, a language to express templates, and an approach to proof with templates. This enables reuse at the level of formal modelling and verification: patterns of models are captured once and their structure is explored for proof, so that patterns instances can be generated mechanically and proved results related with the pattern can be reused in any context. The paper uses templates to capture the Z promotion pattern and metaproof to prove properties of Z promotion. The proved properties are applicable directly to Z promotions built by template instantiation.

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. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Resusable Object-Oriented Software. Professional Computing. Addison-Wesley, Reading (1995)

    Google Scholar 

  2. Darimont, R., van Lamsweerde, A.: Formal refinement patterns for goal-driven requirements elaboration. In: SIGSOFT 1996, pp. 179–190. ACM Press, New York (1996)

    Chapter  Google Scholar 

  3. Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE 1999, pp. 411–420. IEEE, Los Alamitos (1999)

    Chapter  Google Scholar 

  4. Stepney, S., Polack, F., Toyn, I.: Patterns to guide practical refactoring: examples targetting promotion in Z. In: Bert, D., Bowen, J.P., King, S. (eds.) ZB 2003. LNCS, vol. 2651, pp. 20–39. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  5. Abrial, J.-R.: Using design patterns in formal developments. In: RefineNet, Workshop of ICFEM 2005 (2005)

    Google Scholar 

  6. Amálio, N., Polack, F., Stepney, S.: An object-oriented structuring for Z based on views. In: Treharne, et al. (eds.) [19], pp. 262–278

    Google Scholar 

  7. Amálio, N., Polack, F., Stepney, S.: Software Specification Methods: an overview using a case study UML+Z: UML augmented with Z. In: Hermes Science (2006)

    Google Scholar 

  8. Amálio, N., Stepney, S., Polack, F.: Formal proof from UML models. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 418–433. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  9. Woodcock, J., Davies, J.: Using Z: Specification, Refinement, and Proof. Prentice-Hall, Englewood Cliffs (1996)

    MATH  Google Scholar 

  10. Saaltink, M.: The Z/EVES system. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212, Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  11. Tennent, R.D.: The denotational semantics of programming languages. Commun. ACM 19(8), 437–453 (1976)

    Article  MATH  MathSciNet  Google Scholar 

  12. Amálio, N.: Rigorous model-driven development with frameworks and templates. Ph.D. thesis, Dept of Computer Science, Univ. of York (2006)

    Google Scholar 

  13. ISO. Information technology—Z formal specification notation—syntax, type system and semantics, ISO/IEC 13568:2002, International Standard (2002)

    Google Scholar 

  14. Amálio, N.: Frameworks based on templates for rigorous model-driven development. In: Romijn, J., et al. (eds.) IFM 2005, Doctoral symposium, pp. 62–68 (2005); Technical report, University of Eindhoven, CS-05-29

    Google Scholar 

  15. D’Sousa, D., Wills, A.C.: Object Components and Frameworks with UML: the Catalysis approach. Addison-Wesley, Reading (1998)

    Google Scholar 

  16. Bezem, M., et al.: Term Rewriting Systems. Cambridge University Press, Cambridge (2003)

    MATH  Google Scholar 

  17. Prusinkiewicz, P., Lindenmayer, A.: The algorithmic beauty of plants. Springer, Heidelberg (1990)

    MATH  Google Scholar 

  18. Arthan, R.: ProofPower, http://www.lemma-one.com/ProofPower/index/index.html

  19. Treharne, H., King, S., Henson, C.M., Schneider, S. (eds.): ZB 2005. LNCS, vol. 3455. Springer, Heidelberg (2005)

    Google Scholar 

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

Amálio, N., Stepney, S., Polack, F. (2006). A Formal Template Language Enabling Metaproof. 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_18

Download citation

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

  • 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