Abstract
Traditionally, many automatic program verification techniques are applicable only to finite-state programs. In this paper we show how to extend some verification techniques to infinite-state programs that may read, store, and write data but not perform any other computations. We present algorithms for deciding strong equivalence and observation equivalence, defined by bisimulations (as in CCS), between such programs. These algorithms have major applications in verification of communication protocols. The equivalence problems are shown to be NP-hard in the size of the programs.
Preview
Unable to display preview. Download preview PDF.
References
S. Abramsky. Observation equivalence as a testing equivalence. Theoretical Computer Science, 53(2,3):225–241, 1987.
S. Brookes, C.A.R. Hoare, and W. Roscoe. A theory of communicating sequential processes. J. ACM, 31(3):560–599, 1984.
B. Bloom, S. Istrail, and A. Meyer. Bisimulation can't be traced: preliminary report. In Proc. 15th ACM PoPL, pages 229–239, 1988.
D. Brand and W. H. Joyner. Verification of protocols using symbolic execution. Computer Networks, 2(4–5):351–360, 1978.
D. Brand and W. H. Joyner. Verification of HDLC. IEEE Transactions on Communications, COM-30(5):1136–1142, 1982.
J. Bergstra and J. Klop. Verification of an Alternating Bit Protocol by means of Process Algebra. Technical Report, Centrum voor Wiskunde en Informatica, 1984.
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logics specification: a practical approach. In Proc. 10th ACM PoPL, pages 117–126, Austin, Texas, 1983.
T. W. Doeppner and A. Giacalone. A formal description of the UNIX operating system. In Proc. 2nd ACM PoDC, pages 241–253, 1983.
N. D. Jones and S. S. Muchnick. Even simple programs are hard to analyse. J. ACM, 24(2):338–350, April 1977.
B. Jonsson and J. Parrow. Deciding bisimulation equivalences for a class of non-finite-state programs. SICS Technical Report, In preparation.
C. Koomen. Algebraic specification and verification of protocols. Science of Computer Programming, 5(1):1–36, 1985.
P. C. Kanellakis and S. A. Smolka. CCS expressions, finite state processes, and three problems of equivalence. In Proc. 2nd ACM PoDC, pages 228–240, Montreal, Canada, 1983.
K. G. Larsen and R. Milner. Verifying a protocol using relativized bisimulation. In Proc. ICALP '87, LNCS 267, Springer Verlag, 1987.
R. Milner. A Calculus of Communicating Systems. Volume 92 of Lecture Notes of Computer Science, Springer Verlag, 1980.
R. Milner. Calculi for synchrony and asynchrony. Theoretical Computer Science, 25:267–310, 1983.
R. de Nicola and M. Hennessy. Testing equivalences for processes. Theoretical Computer Science, 34:83–133, 1984.
J. Parrow. Verifying a CSMA/CD-Protocol with CCS. Technical Report ECS-LFCS-87-18, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1987. To appear in Protocol Specification, Testing, and Verification VIII (1988).
S.A. Smolka, A.J. Frank, and S.K. Debray. Testing protocol robustness the CCS way. In Protocol Specification, Testing, and Verification IV (1984), pages 93–108, 1985. North-Holland.
D. Vergamini. Verification by means of Observation Equivalence on Automata. Technical Report 501, INRIA, Sophia Antipolis, 1986.
M. Y. Vardi and P. Wolper. An automata-theoretic approach to automatic program verification. In Proc. IEEE Symp. on Logic in Computer Science, pages 332–344, June 1986.
P. Wolper. Expressing interesting properties of programs in propositional temporal logic (extended abstract). In Proc. 13th ACM PoPL, pages 184–193, Jan. 1986.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1989 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jonsson, B., Parrow, J. (1989). Deciding bisimulation equivalences for a class of non-finite-state programs. In: Monien, B., Cori, R. (eds) STACS 89. STACS 1989. Lecture Notes in Computer Science, vol 349. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0029004
Download citation
DOI: https://doi.org/10.1007/BFb0029004
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-50840-3
Online ISBN: 978-3-540-46098-5
eBook Packages: Springer Book Archive