Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Open access

Compositional verification of concurrent systems using Petri-net-based condensation rules

Published: 01 September 1998 Publication History

Abstract

The state-explosion problem of formal verification has obstructed its application to large-scale software systems. In this article, we introduce a set of new condensation theories: IOT-failure equivalence, IOT-state equivalence, and firing-dependence theory to cope with this problem. Our condensation theories are much weaker than current theories used for the compositional verification of Petri nets. More significantly, our new condensation theories can eliminate the interleaved behaviors caused by asynchronously sending actions. Therefore, our technique provides a much more powerful means for the compositional verification of asynchronous processes. Our technique can efficiently analyze several state-based properties: boundedness, reachable markings, reachable submarkings, and deadlock states. Based on the notion of our new theories, we develop a set of condensation rules for efficient verification of large-scale software systems. The experimental results show a significant improvement in the analysis large-scale concurrent systems.

References

[1]
ACETO, L. AND HENNESSY, M. 1992. Termination, deadlock, and divergence. J. ACM 39, 1 (Jan.), 147-187.
[2]
AUSTRY, D. AND BOUDOL, G. 1984. Algebre de processus et synchronisation. Theor. Comput. Sci. 30, 1, 91-131.
[3]
BERGSTRA, g. A. AND KLOP, g.W. 1985. Algebra of communicating processes with abstraction. Theor. Comput. Sci. 37, 1, 77-121.
[4]
BERGSTRA, J. A., KLOP, J. W., AND OLDEROG, E. R. 1986. Failure semantics with fair abstraction. CWI Rep. CS-R8609, Centre for Mathematics and Computer Science, CWI, Amsterdam, The Netherlands.
[5]
BERTHELOT, G. 1986. Checking properties of nets using transformations. Advances in Petri Nets 1985. Lecture Notes in Computer Science, vol. 222. Springer-Verlag, Berlin, 19-40.
[6]
BOUDOL, G., RUCAIROL, G., AND DESIMONE, R. 1985. Petri nets and algebraic calculi of processes. In Advances in Petri nets. Lecture Notes in Computer Science, vol. 188. Springer- Verlag, Berlin.
[7]
BOLOGNESI, T. AND BRINKSMA, E. 1987. Introduction to the ISO specification language LOTOS. Comput. Networks ISDN Syst. 25-59.
[8]
BRYANT, R. E. 1986. Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. C-35, 8, 677-691.
[9]
CHEN, Y., TSAI, W. T., AND CHAO, D. 1993. Dependency analysis--A Petri net based technique for synthesizing large concurrent systems. IEEE Trans. Parallel Distrib. Syst. 4, 4 (Apr.).
[10]
CHEUNG, S. C. AND KRAMER, J. 1996. Context constraints for compositional reachability analysis. ACM Trans. Softw. Eng. Method. 5, 4, 334-377.
[11]
CORBETT, J.C. 1996. Evaluating deadlock detection methods for concurrent software. IEEE Trans. Softw. Eng. 22, 3 (Mar.), 161-180.
[12]
D'ANNA, M. AND TRIGILA, S. 1988. Concurrent system analysis using Petri nets: An optimized algorithm for finding net invariants. Comput. Commun. 11, 4 (Aug.), 215-220.
[13]
DE SIMONE, R., ROY, V., RESSOUCHE, A., BOURDELLES, M., AND BOUALI, A. 1998. Welcome to FC2 tools and autograph! Meije Project Verification Tools Page. Online doc. Available via http://www.inria, fr/meij e/verification/.
[14]
DUR, S., BuY, U., DEVARAPALLI, R., AND SHATZ, S. M. 1993. Using state space reduction methods for deadlock analysis in Ada tasking. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA). ACM, New York, 51-60.
[15]
ELORANTA, g. 1994. Minimal transition systems with respect to divergence preserving behavioural equivalences. Doctoral thesis, Dept. of Computer Science, Univ. of Helsinki, Helsinki, Finland.
[16]
EMERSON, E. A. AND SISTLA, A. P. 1993. Symmetry and modelchecking. In Proceedings of Computer-Aided Verification (CAV'93). Lecture Notes in Computer Science, Springer-Verlag, Berlin, 463-478.
[17]
FELDMAN, J.A. 1979. High level programming for distributed computing. Commun. ACM 22, 6 (June), 353-368.
[18]
HENNESSY, M. 1988. Algebraic Theory of Processes. MIT Press, Cambridge, Mass.
[19]
HOARE, C. A. R. 1985. Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs, N.J.
[20]
HOLZMANN, a.J. 1997. The model checker SPIN. IEEE Trans. Softw. Eng. 23, 5 (May), 279-295.
[21]
JENSEN, K. 1992.oloured Petri Nets, Basic Concepts, Analysis Methods, and Practical Use. Monographs in Theoretical Computer Science, vol. 1. Springer-Verlag, Berlin.
[22]
JOHNSON, J. L. AND MURATA, T. 1985. Structure matrices for Petri nets and their applications. J. Franklin Inst. 319, 3 (Mar.), 299-309.
[23]
JUAN, E., TSAI, J. J. P., AND MURATA, T. 1996. A new compositional method for condensed state space verification. In Proceedings of the 1st High-Assurance Systems Engineering Workshop (Ontario, Canada, Oct.). 104-111.
[24]
KARAM, G. M. AND BUHR, R.J. 1990. Starvation and critical race analyzers for Ada. IEEE Trans. Softw. Eng. 16, 8, 829-843.
[25]
KANELLAKIS, P. C. AND SMOLKA, S.A. 1990. CCS expressions, finite state processes, and three problems of equivalence. Inf. Comput. 86, 43-68.
[26]
KOH, I. AND DICESARE, F. 1991. Modular transformation methods for generalized Petri nets and their application to automated manufacturing systems. IEEE Trans. Systems Man Cybernet. 21, 6.
[27]
LEE-KWANG, H., FAVREL, J., AND BAPTISTE, P. 1987. Generalized Petri net reduction method. IEEE Trans. Syst. Man. Cybernet. SMC-17, 2 (Mar./Apr.), 297-303.
[28]
LIPTON, R. g. 1976. The reachability problems requires exponential space. Res. Rep. 62, Dept. of Computer Science, Yale Univ., New Haven, Conn.
[29]
LONG, D. L. AND CLARKE, L.A. 1989. Task interaction graphs for concurrency analysis. In Proceedings of the 11th International Conference on Software Engineering. ACM Press, New York. 44 -52.
[30]
MARTINEZ, g. AND SILVA, M. 1982. A simple and fast algorithm to obtain all invariants of a generalized Petri net. In Application and Theory of Petri Nets. Infomatik-Fachberichte, vol. 52. Springer-Verlag, Berlin, 301-310.
[31]
MCMILLAN, K.L. 1998. The SMV system draft. Online doc. Available via http://www.cs.cmu. edu/afs/cs/project/modck/pub/www/smv.html.
[32]
MILNER, R. 1980. A Calculus of Communicating Systems. Lecture Notes in Computer Science, vol. 92. Springer-Verlag, Berlin.
[33]
MILNER, R. 1983. Operational and algebraic semantics of concurrent processes. In Handbook of Theoretical Computer Science, J. van Leeuwen, Ed. Elsevier Science B.V.
[34]
MURATA, T. 1989.Petri nets: Properties, analysis and applications. Proc. IEEE 77, 44 (Apr.), 541-580.
[35]
NOTOMI, M. AND MURATA, T. 1994. Hierarchical reachability graph of bounded Petri nets for concurrent-software analysis. IEEE Trans. Softw. Eng. 20, 5 (May).
[36]
PEZZE, M., TAYLOR, R. N., AND YOUNG, M. 1995. Graph models for reachability analysis of concurrent programs. ACM Trans. Softw. Eng. Method. 4, 2 (Apr.).
[37]
POMELLO, L. 1986. Some equivalence notions for concurrent systems. In Advances in Petri Nets 1985. Lecture Notes in Computer Science, vol. 222. Springer-Verlag, Berlin, 381-400.
[38]
SABNANI, K. K., LAPONE, A. M., AND UYAR, M.U. 1989. An algorithm procedure for checking safety properties of protocols. IEEE Trans. Commun. 37, 9, 940-948.
[39]
SHATZ, S. M., Tu, S., MURATA, T., AND DURI, S. 1996. An application of Petri net reduction for Ada tasking deadlock analysis. IEEE Trans. Parallel Distrib. Syst. 7, 12 (Dec.), 1307-1322.
[40]
SILVA, M. 1989. Petri nets and flexible manufacturing. In Advances in Petri Nets 1989. Lecture Notes in Computer Science. Springer-Verlag, Berlin.
[41]
STROM, R. E. AND HALIM, N. 1984. A new programming methodology for long-lived software systems. IBM J. Res. Devel. 28, 52-59.
[42]
SUZUKI, I. AND MURATA, T. 1983. A method for stepwise refinement and abstraction of Petri nets. J. Comput. Syst. Sci. 27, 51-76.
[43]
TAYLOR, R. N. 1983. A general-purpose algorithm for analyzing concurrent programs. Commun. ACM 26, 5 (May), 362-376.
[44]
TSAI, J. J. P. AND WEIGERT, T.J. 1993. Knowledge-Based Software Development for Real- Time Distributed Systems. World Scientific, Singapore.
[45]
TSAI, J. J. P., BI, Y., YANG, S. H., AND SMITH, R. A.W. 1996. Distributed Real-Time Systems: Monitoring, Visualization, Debugging, and Analysis. John Wiley and Sons, New York.
[46]
VALMARI, A. 1994. Compositional analysis with place-bordered subnets. In Proceedings of the 15th International Conference on Application and Theory of Petri Nets. 531-547.
[47]
VALMARI, A. 1995. The weakest deadlock-preserving congruence. Inf. Process. Lett. 53, 341-346.
[48]
WINSKEL, G. 1987. Petri nets, algebras, morphisms, and compositionality. Inf. Comput. 72, 197-238.
[49]
YEH, W. g. AND YOUNG, M. 1991. Compositional reachability analysis of Ada programs using process algebra. In Proceedings of the Symposium on Software Testing, Analysis, and Verification (TAV'91). ACM Press, New York, 49-59.
[50]
YEH, W. g. AND YOUNG, M. 1994. Re-designing tasking structures of Ada programs for analysis: A case study. J. Softw. Testing Verif. Rel. (Dec.).
[51]
YOELI, M. 1987. Specification and verification of asynchronous circuits using marked graphs. In Concurrency and Nets, K. Voss, H. J. Genrich, and G. Rozenberg, Eds. Springer- Verlag, Berlin, 605-622.
[52]
ZHOU, M. C., DICESARE, F., AND DESROCHERS, A.A. 1989. A top-down modular approach to synthesis of Petri net models for manufacturing systems. In Proceedings of the IEEE Robotics and Automation Conference (Scottsdale, Ariz., May). IEEE, New York, 534-539.
[53]
ZHOU, M., MCDERMOTT, K., AND PATEL, P.A. 1993. Petri net synthesis and analysis of a flexible manufacturing system cell. IEEE Trans. Syst. Man Cybernet. 23, 2 (Mar.), 523-531.

Cited By

View all
  • (2022)Scheduling in Real-Time Mobile SystemsACM Transactions on Embedded Computing Systems10.1145/351774721:3(1-36)Online publication date: 28-May-2022
  • (2014)Situation-aware adaptation to optimise energy consumption in intelligent buildings using coloured Petri Nets2014 9th IEEE Conference on Industrial Electronics and Applications10.1109/ICIEA.2014.6931164(231-236)Online publication date: Jun-2014
  • (2013)Composition of Functional Petri NetsFormal Methods in Manufacturing Systems10.4018/978-1-4666-4034-4.ch017(404-464)Online publication date: 2013
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Programming Languages and Systems
ACM Transactions on Programming Languages and Systems  Volume 20, Issue 5
Sept. 1998
193 pages
ISSN:0164-0925
EISSN:1558-4593
DOI:10.1145/293677
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 1998
Published in TOPLAS Volume 20, Issue 5

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Petri nets
  2. boundedness
  3. compositional verification
  4. deadlock states
  5. reachability analysis
  6. reachability graphs
  7. reachable markings

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)64
  • Downloads (Last 6 weeks)18
Reflects downloads up to 03 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Scheduling in Real-Time Mobile SystemsACM Transactions on Embedded Computing Systems10.1145/351774721:3(1-36)Online publication date: 28-May-2022
  • (2014)Situation-aware adaptation to optimise energy consumption in intelligent buildings using coloured Petri Nets2014 9th IEEE Conference on Industrial Electronics and Applications10.1109/ICIEA.2014.6931164(231-236)Online publication date: Jun-2014
  • (2013)Composition of Functional Petri NetsFormal Methods in Manufacturing Systems10.4018/978-1-4666-4034-4.ch017(404-464)Online publication date: 2013
  • (2011)Guaranteeing Weak Termination in Service DiscoveryFundamenta Informaticae10.5555/2362088.2362096108:1-2(151-180)Online publication date: 1-Jan-2011
  • (2009)PFuncProceedings of the Conference on High Performance Computing Networking, Storage and Analysis10.1145/1654059.1654103(1-11)Online publication date: 14-Nov-2009
  • (2009)Scenario-based timing verification of multiprocessor embedded applicationsACM Transactions on Design Automation of Electronic Systems10.1145/1529255.152925914:3(1-58)Online publication date: 4-Jun-2009
  • (2009)Verifying Deadlock- and Livelock Freedom in an SOA Scenario2009 Ninth International Conference on Application of Concurrency to System Design10.1109/ACSD.2009.16(168-177)Online publication date: Jul-2009
  • (2009)Experience on knowledge-based software engineeringJournal of Systems and Software10.1016/j.jss.2009.03.01982:10(1578-1587)Online publication date: 1-Oct-2009
  • (2009)An Improvement of Software Architecture VerificationElectronic Notes in Theoretical Computer Science (ENTCS)10.1016/j.entcs.2009.07.005243(49-67)Online publication date: 1-Jul-2009
  • (2009)Static Analysis of Concurrent Programs Using Ordinary Differential EquationsProceedings of the 6th International Colloquium on Theoretical Aspects of Computing10.1007/978-3-642-03466-4_1(1-35)Online publication date: 12-Aug-2009
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media