Skip to main content

Liveness Properties in CafeOBJ – A Case Study for Meta-Level Specifications

  • Conference paper
  • First Online:
Logic-Based Program Synthesis and Transformation (LOPSTR 2014)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8981))

Abstract

We provide an innovative development of algebraic specifications and proof scores in CafeOBJ by extending a base specification to the meta-level that includes infinite transition sequences. The infinite transition sequences are modeled using behavioral specifications with hidden sort, and make it possible to prove safety and liveness properties in a uniform way.

As an example of the development, we present a specification of Dijkstra’s binary semaphore, a protocol to guarantee exclusive access to a resource. For this protocol we will give three different properties, one being the mutual exclusion (or safety) property, and two more regarding different forms of liveness, which we call progress property and entrance property. These three properties are verified in a computationally uniform way (by term rewriting) based on the new development.

Besides being a case study of modeling meta-properties in CafeOBJ, we provide an initial characterization of strength of various properties. Furthermore, this method can serve as a blue-print for other specifications, in particular those based on Abstract State System (ASSs).

This work was supported in part by Grant-in-Aid for Scientific Research (S) 23220002 from Japan Society for the Promotion of Science (JSPS).

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 EPUB and 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

References

  1. Bae, K., Meseguer, J.: Predicate abstraction of rewrite theories. In: Dowek, G. (ed.) RTA-TLCA 2014. LNCS, vol. 8560, pp. 61–76. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  2. Bae, K., Meseguer, J.: Infinite-state model checking of LTLR formulas unsing narrowing. In: WRLA 2014, 10th International Workshop on Rewriting Logic and its Applications, to appear

    Google Scholar 

  3. Bjørner, N., Browne, A., Colón, M., Finkbeiner, B., Manna, Z., Sipma, H., Uribe, T.E.: Verifying temporal properties of reactive systems: a step tutorial. Form. Methods Syst. Des. 16(3), 227–270 (2000)

    Article  Google Scholar 

  4. Chandy, K.M., Misra, J.: Parallel Program Design—A Foundation. Addison-Wesley, Boston (1989)

    Google Scholar 

  5. Chetali, B.: Formal verification of concurrent programs using the Larch prover. IEEE Trans. Softw. Eng. 24(1), 46–62 (1998)

    Article  Google Scholar 

  6. Futatsugi, K.: Generate and check methods for invariant verification in CafeOBJ. In: JAIST Research Report IS-RR-2013-006, http://hdl.handle.net/10119/11536 (2013)

  7. Futatsugi, K.: Generate and check method for verifying transition systems in CafeOBJ. Submitted for publication (2014)

    Google Scholar 

  8. Futatsugi, K., Gâinâ, D., Ogata, K.: Principles of proof scores in CafeOBJ. Theor. Comput. Sci. 464, 90–112 (2012)

    Article  MATH  Google Scholar 

  9. Goguen, J.A., Lin., K.: Behavioral verification of distributed concurrent systems with BOBJ. In: QSIC, pp. 216–235. IEEE Computer Society (2003)

    Google Scholar 

  10. Iida, S., Meseguer, J., Ogata, K. (eds.): Specification, Algebra, and Software. LNCS, vol. 8373, pp. 520–540. Springer, Heidelberg (2014)

    Book  MATH  Google Scholar 

  11. Meseguer, J.: Twenty years of rewriting logic. J. Log. Algebr. Program. 81(7–8), 721–781 (2012)

    Article  MATH  MathSciNet  Google Scholar 

  12. Ogata, K., Futatsugi, K.: State machines as inductive types. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. E90–A(12), 2985–2988 (2007)

    Article  Google Scholar 

  13. Ogata, K., Futatsugi, K.: Proof score approach to verification of liveness properties. IEICE Trans. 91–D(12), 2804–2817 (2008)

    Google Scholar 

  14. Ogata, K., Futatsugi, K.: A combination of forward and backward reachability analysis methods. In: Dong, J.S., Zhu, H. (eds.) ICFEM 2010. LNCS, vol. 6447, pp. 501–517. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  15. Paulson, L.C.: Mechanizing UNITY in Isabelle. ACM Trans. Comput. Log. 1(1), 3–32 (2000)

    Article  MathSciNet  Google Scholar 

  16. Podelski, A., Rybalchenko, A.: Transition invariants. In: LICS, pp. 32–41. IEEE Computer Society (2004)

    Google Scholar 

  17. Preining, N.: Specifications in CafeOBJ http://www.preining.info/blog/cafeobj/

  18. Preining, N., Futatsugi, K., Ogata, K.: Proving liveness properties using abstract state machines and \(n\)-visibility. In: Talk at the 22nd International Workshop on Algebraic Development Techniques WADT 2014, Sinaia, Romania, September 2014

    Google Scholar 

  19. Rybakov, V.: Linear temporal logic with until and next, logical consecutions. Ann. Pure Appl. Log. 155(1), 32–45 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  20. Stiliadis, D., Varma, A.: Latency-rate servers: a general model for analysis of traffic scheduling algorithms. IEEE/ACM Netw. 6(5), 611–624 (1998)

    Article  Google Scholar 

  21. Wierman, A.: Fairness and scheduling in single server queues. Surv. Oper. Res. Manag. Sci. 16(1), 39–48 (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Norbert Preining .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Preining, N., Ogata, K., Futatsugi, K. (2015). Liveness Properties in CafeOBJ – A Case Study for Meta-Level Specifications. In: Proietti, M., Seki, H. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2014. Lecture Notes in Computer Science(), vol 8981. Springer, Cham. https://doi.org/10.1007/978-3-319-17822-6_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-17822-6_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-17821-9

  • Online ISBN: 978-3-319-17822-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics