Abstract
We define a cones and foci proof method, which rephrases the question whether two system specifications are branching bisimilar in terms of proof obligations on relations between data objects. Compared to the original cones and foci method from Groote and Springintveld [22], our method is more generally applicable, and does not require a preprocessing step to eliminate τ -loops. We prove soundness of our approach and give an application.
This research is supported by the Dutch Technology Foundation STW under the project CES5008: Improving the quality of embedded systems using formal design and systematic testing.
Chapter PDF
References
T. Arts and I.A. van Langevelde. Correct performance of transaction capabilities. In Proc. 2nd Conference on Application of Concurrency to System Design, pp. 35–42. IEEE Computer Society, June 2001.
J.C.M. Baeten, J.A. Bergstra, and J.W. Klop. On the consistency of Koomen’s fair abstraction rule. Theoretical Computer Science, 51:129–176, 1987.
J.C.M. Baeten and W.P. Weijland. Process Algebra, volume 18 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1990.
T. Basten. Branching bisimilarity is an equivalence indeed! Information Processing Letters, 58:141–147, 1996.
J.A. Bergstra and J.W. Klop. Algebra of communicating processes with abstraction. Theoretical Computer Science, 37:77–121, 1985.
M.A. Bezem and J.F. Groote. Invariants in process algebra with data. In Proc. 5th Conference on Concurrency Theory, LNCS 836, pp. 401–416. Springer, 1994.
S.C.C. Blom, W.J. Fokkink, J.F. Groote, I.A. van Langevelde, B. Lisser, and J.C. van de Pol. μCRL: A toolset for analysing algebraic specifications. In Proc. 13th Conference on Computer Aided Verification, LNCS 2102, pp. 250–254. Springer, 2001.
K.M. Chandy and J. Misra. Parallel Program Design. A Foundation. Addison Wesley, 1988.
A. Cimatti, F. Giunchiglia, P. Pecchiari, B. Pietra, J. Profeta, D. Romano, P. Traverso, and B. Yu. A provably correct embedded verifier for the certification of safety critical software. In Proc. 9th Conference on Computer Aided Verification, LNCS 1254, pp. 202–213. Springer, 1997.
E.M. Clarke, O. Grumberg, and D.A. Peled. Model Checking. MIT Press, 2000.
B. Courcelle. Recursive applicative program schemes. In Handbook of Theoretical Computer Science, Volume B, Formal Methods and Semantics, pp. 459–492. Elsevier, 1990.
J.-C. Fernandez, H. Garavel, A. Kerbrat, L. Mounier, R. Mateescu, and M. Sighireanu. CADP-a protocol validation and verification toolbox. In Proc. 8th Conference on Computer-Aided Verification, LNCS 1102, pp. 437–440. Springer, 1997.
W.J. Fokkink, J.F. Groote, and J. Pang. Verification of a sliding window protocol in μCRL. In preparation.
W.J. Fokkink and J.C. van de Pol. Simulation as a correct transformation of rewrite systems. In Proceedings of 22nd Symposium on Mathematical Foundations of Computer Science, LNCS 1295, pp. 249–258. Springer, 1997.
L.-Å. Fredlund, J.F. Groote, and H.P. Korver. Formal verification of a leader election protocol in process algebra. Theoretical Computer Science, 177:459–486, 1997.
R.J. van Glabbeek and W.P. Weijland. Branching time and abstraction in bisimulation semantics. Journal of the ACM, 43:555–600, 1996.
W. Goerigk and F. Simon. Towards rigorous compiler implementation verification. In Collaboration between Human and Artificial Societies, Coordination and Agent-Based Distributed Computing, LNCS 1624, pp. 62–73. Springer, 1999.
J. F. Groote, J. Pang, and A.G. Wouters. Analysis of a distributed system for lifting trucks. Journal of Logic and Algebraic Programming, 2003. To appear.
J. F. Groote, A. Ponse, and Y.S. Usenko. Linearization in parallel pCRL. Journal of Logic and Algebraic Programming, 48:39–72, 2001.
J.F. Groote, F. Monin, and J.C. van de Pol. Checking verifications of protocols and distributed systems by computer. In Proc. 9th Conference on Concurrency Theory, LNCS 1466, pp. 629–655. Springer, 1998.
J.F. Groote and A. Ponse. The syntax and semantics of μCRL. In Proc. 1st Workshop on the Algebra of Communicating Processes, Workshops in Computing Series, pp. 26–62. Springer, 1995.
J.F. Groote and J. Springintveld. Focus points and convergent process operators. A proof strategy for protocol verification. Journal of Logic and Algebraic Programming, 49:31–60, 2001.
J.F. Groote and F.W. Vaandrager. An efficient algorithm for branching bisimulation and stuttering equivalence. In Proc. 17th Colloquium on Automata, Languages and Programming, LNCS 443, pp. 626–638. Springer, 1990.
J.F. Groote and J.J. van Wamel. The parallel composition of uniform processes with data. Theoretical Computer Science, 266:631–652, 2001.
B. Jonsson. Compositional Verification of Distributed Systems. PhD thesis, Department of Computer Science, Uppsala University, 1987.
C.P.J. Koymans and J.C. Mulder. A modular approach to protocol verification using process algebra. In Applications of Process Algebra, Cambridge Tracts in Theoretical Computer Science 17, pp. 261–306. Cambridge University Press, 1990.
J. Loeckx, H.-D. Ehrich, and M. Wolf. Specification of Abstract Data Types. Wiley/Teubner, 1996.
N.A. Lynch and M.R. Tuttle. Hierarchical correctness proofs for distributed algorithms. In Proc. 6th ACM Symposium on Principles of Distributed Computing, pp. 137–151. ACM, 1987.
N.A. Lynch and F.W. Vaandrager. Forward and backward simulations. Part I: Untimed systems. Information and Computation, 121:214–233, 1995.
G. Necula. Translation validation for an optimizing compiler. In Proc. 2000 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. SIGPLAN Notices 35:83–94. ACM, 2000.
J. Pang. Analysis of a security protocol in μCRL. In Proc. 4th International Conference on Formal Engineering Methods, LNCS 2495, pp. 396–400. Springer, 2002.
A. Pnueli, M. Siegel, and E. Singerman. Translation validation. In Proc. 4th Conference on Tools and Algorithms for Construction and Analysis of Systems, LNCS 1384, pp. 151–166. Springer, 1998.
J.C. van de Pol and M. Valero Espada. Formal specification of JavaspacesTM architecture using μCRL. In Proc. 5th Conference on Coordination Models and Languages, LNCS 2315, pp. 274–290. Springer, 2002.
C. Shankland and M.B. van der Zwaag. The tree identify protocol of IEEE 1394 in μCRL. Formal Aspects of Computing, 10:509–531, 1998.
Y.S. Usenko. Linearization of μCRL specifications (extended abstract). In Proc. 3rd International Workshop on Verification and Computational Logic (VCL2002), Technical Report DSSE-TR-2002-5. Department of Electronics and Computer Science, University of Southampton, 2002.
M.B. van der Zwaag. The cones and foci proof technique for timed transition systems. Information Processing Letters, 80(1):33–40, 2001.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fokkink, W., Pang, J. (2003). Cones and Foci for Protocol Verification Revisited. In: Gordon, A.D. (eds) Foundations of Software Science and Computation Structures. FoSSaCS 2003. Lecture Notes in Computer Science, vol 2620. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36576-1_17
Download citation
DOI: https://doi.org/10.1007/3-540-36576-1_17
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00897-2
Online ISBN: 978-3-540-36576-1
eBook Packages: Springer Book Archive