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)
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
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)
Abdulla, P.A., Jonsson, B.: Verifying programs with unre- liable channels. Information and Computation 127(2), 91–101 (1996)
Belsnes, D.: Single-message communication. IEEE Trans. on Computers COM-24(2), 190–194 (1976)
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)
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)
Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Trans. on Programming Languages and Systems 16(5) (September 1994)
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)
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)
Dams, D., Gerth, R., Grumberg, O.: Abstract interpretation of reactive systems. ACM Transactions on Programming Languages and Systems 19(2) (1997)
Graf, S., Saidi, H.: Construction of abstract state graphs with PVS. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, Springer, Heidelberg (1997)
Jonsson, B., Parrow, J.: Deciding bisimulation equivalences for a class of non-finite-state programs. Information and Computation 107(2), 272–302 (1993)
Lamport, L.: A theorem on atomicity in distributed algorithms. Distri- buted Computing 4(2), 59–68 (1990)
Lesens, D., Saidi, H.: Abstraction of parameterized networks. Electronic Notes in Theoretical Computer Science, 9 (1997)
Lynch, N.: Distributed Algorithms. Morgan Kaufmann Publishers, San Francisco (1996)
Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems. Springer, Heidelberg (1992)
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)
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.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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