Skip to main content

Abstraction of Communication Channels in Promela: A Case Study

  • Conference paper
SPIN Model Checking and Software Verification (SPIN 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1885))

Included in the following conference series:

Abstract

We present a case study of how abstractions can be applied to a protocol model, written in Promela, in order to make in amenable for exhaustive state-space exploration, e.g., by SPIN. The protocol is a simple version of the Five Packet Handshake Protocol, which is used in TCP for transmission of single messages. We present techniques for abstracting from actual values of messages, sequence numbers, and identifiers in the protocol. Instead, an abstract model of the protocol is constructed of variables which record whether variables and parameters of messages are equal or unequal. The abstraction works because the protocol handles identifiers and parameters of messages in a simple way. The abstracted model contains only on the order of a thousand states, and safety properties have been analyzed by SPIN.

support in part by the ASTEC competence center, and by the Swedish Board for Industrial and Technical Development (NUTEK)

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. Abdulla, P.A., Čerǎns, K., Jonsson, B., Yih-Kuen, T.: General decidability theorems for infinite-state systems. In: Proc. 11th IEEE Int. Symp. on Logic in Computer Science, pp. 313–321 (1996)

    Google Scholar 

  2. Abdulla, P.A., Jonsson, B.: Verifying programs with unre- liable channels. Information and Computation 127(2), 91–101 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  3. Belsnes, D.: Single-message communication. IEEE Trans. on Computers COM-24(2), 190–194 (1976)

    Google Scholar 

  4. Bensalem, S., Lakhnech, Y., Owre, S.: Computing abstractions of infinite state systems automatically and compositionally. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 319–331. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  5. Cousot, P., Cousot, R.: Abstract interpretation: A unified model for static analysis of programs by construction or approximation of fixpoints. In: Proc. 4th ACM Symp. on Principles of Programming Languages, pp. 238–252 (1977)

    Google Scholar 

  6. Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Trans. on Programming Languages and Systems 16(5) (September 1994)

    Google Scholar 

  7. Colon, M.A., Uribe, T.E.: Generating finite-state abstractions of re- active systems using decision procedures. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 293–304. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  8. Das, S., Dill, D.L., Park, S.: Experience with predicate abstraction. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 160–171. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  9. Dams, D., Gerth, R., Grumberg, O.: Abstract interpretation of reactive systems. ACM Transactions on Programming Languages and Systems 19(2) (1997)

    Google Scholar 

  10. Graf, S., Saidi, H.: Construction of abstract state graphs with PVS. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, Springer, Heidelberg (1997)

    Google Scholar 

  11. Jonsson, B., Parrow, J.: Deciding bisimulation equivalences for a class of non-finite-state programs. Information and Computation 107(2), 272–302 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  12. Lamport, L.: A theorem on atomicity in distributed algorithms. Distri- buted Computing 4(2), 59–68 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  13. Lesens, D., Saidi, H.: Abstraction of parameterized networks. Electronic Notes in Theoretical Computer Science, 9 (1997)

    Google Scholar 

  14. Lynch, N.: Distributed Algorithms. Morgan Kaufmann Publishers, San Francisco (1996)

    MATH  Google Scholar 

  15. Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems. Springer, Heidelberg (1992)

    Google Scholar 

  16. Saidi, H., Shankar, N.: Abstract and model check while you prove. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 443–454. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  17. Pierre Wolper. Expressing interesting properties of programs in proposi- tional temporal logic (extended abstract). In Proc. 13th ACM Symp. on Principles of Programming Languages, pages 184{193, Jan. 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Fersman, E., Jonsson, B. (2000). Abstraction of Communication Channels in Promela: A Case Study. In: Havelund, K., Penix, J., Visser, W. (eds) SPIN Model Checking and Software Verification. SPIN 2000. Lecture Notes in Computer Science, vol 1885. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10722468_12

Download citation

  • DOI: https://doi.org/10.1007/10722468_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41030-0

  • Online ISBN: 978-3-540-45297-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics