Skip to main content

Isabelle/Circus: A Process Specification and Verification Environment

  • Conference paper
Verified Software: Theories, Tools, Experiments (VSTTE 2012)

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

Abstract

The Circus specification language combines elements for complex data and behavior specifications, using an integration of Z and CSP with a refinement calculus. Its semantics is based on Hoare and He’s unifying theories of programming (UTP).

We develop a machine-checked, formal semantics based on a “shallow embedding” of Circus in Isabelle/UTP (our semantic theory of UTP based on Isabelle/HOL). We derive proof rules from this semantics and implement tactic support that finally allows for proofs of refinement for Circus processes (involving both data and behavioral aspects).

This proof environment supports a syntax for the semantic definitions which is close to textbook presentations of Circus.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. Andrews, P.B.: Introduction to Mathematical Logic and Type Theory: To Truth through Proof, 2nd edn. Kluwer Academic (2002); now published by Springer

    Google Scholar 

  2. Brucker, A.D., Wolff, B.: On theorem prover-based testing. Formal Aspects of Computing (to appear, 2012)

    Google Scholar 

  3. Butler, M.: CSP2B: A practical approach to combining CSP and B. Formal Aspects of Computing 12, 182–196 (2000)

    Article  MATH  Google Scholar 

  4. Cavalcanti, A., Gaudel, M.-C.: Testing for refinement in Circus. Acta Informatica 48(2), 97–147 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  5. Cavalcanti, A.L.C., Sampaio, A.C.A., Woodcock, J.C.P.: A Refinement Strategy for Circus. Formal Aspects of Computing 15(2-3), 146–181 (2003)

    Article  MATH  Google Scholar 

  6. Cavalcanti, A., Woodcock, J.: A Tutorial Introduction to CSP in Unifying Theories of Programming. In: Cavalcanti, A., Sampaio, A., Woodcock, J. (eds.) PSSE 2004. LNCS, vol. 3167, pp. 220–268. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  7. Church, A.: A formulation of the simple theory of types. Journal of Symbolic Logic 5(2), 56–68 (1940)

    Article  MathSciNet  MATH  Google Scholar 

  8. Feliachi, A., Gaudel, M.-C., Wolff, B.: Unifying Theories in Isabelle/HOL. In: Qin, S. (ed.) UTP 2010. LNCS, vol. 6445, pp. 188–206. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  9. Feliachi, A., Gaudel, M.-C., Wolff, B.: Isabelle/Circus : a process specification and verification environment. Technical Report 1547, Univ. Paris-Sud XI LRI (November 2011), http://www.lri.fr/srubrique.php?news=33

  10. Fischer, C.: How to Combine Z with Process Algebra. In: Bowen, J., Fett, A., Hinchey, M.G. (eds.) ZUM 1998. LNCS, vol. 1493, pp. 5–25. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  11. Hoare, C.A.R., Jifeng, H.: Unifying Theories of Programming. Prentice Hall International Series in Computer Science (1998)

    Google Scholar 

  12. Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL—A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  13. Oliveira, M., Cavalcanti, A.L.C., Woodcock, J.C.P.: A denotational semantics for Circus. Electron. Notes Theor. Comput. Sci. 187, 107–123 (2007)

    Article  Google Scholar 

  14. Roggenbach, M.: CSP-CASL: a new integration of process algebra and algebraic specification. Theor. Comput. Sci. 354, 42–71 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  15. Roscoe, A.W., Hoare, C.A.R., Bird, R.: The Theory and Practice of Concurrency. Prentice Hall PTR, Upper Saddle River (1997)

    Google Scholar 

  16. Sampaio, A., Woodcock, J., Cavalcanti, A.: Refinement in Circus. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 451–470. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  17. Taguchi, K., Araki, K.: The state-based CCS semantics for concurrent Z specification. In: ICFEM 1997, pp. 283–292. IEEE (1997)

    Google Scholar 

  18. Woodcock, J., Cavalcanti, A.: The Semantics of Circus. In: Bert, D., Bowen, J., Henson, M., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 184–203. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  19. Zeyda, F., Cavalcanti, A.: Encoding Circus Programs in ProofPowerZ. In: Butterfield, A. (ed.) UTP 2008. LNCS, vol. 5713, pp. 218–237. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Feliachi, A., Gaudel, MC., Wolff, B. (2012). Isabelle/Circus: A Process Specification and Verification Environment. In: Joshi, R., Müller, P., Podelski, A. (eds) Verified Software: Theories, Tools, Experiments. VSTTE 2012. Lecture Notes in Computer Science, vol 7152. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-27705-4_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-27705-4_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-27704-7

  • Online ISBN: 978-3-642-27705-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics