Integration of Formal Verification and Debugging Methods in P-GRADE Environment

  • Róbert Lovas
  • Bertalan Vécsei
Part of the The International Series in Engineering and Computer Science book series (SECS, volume 777)


In this paper we present a combined method, which enables the collaboration of parallel debugging techniques with simulation and verification of parallel program’s coloured Petri-net model in the frame of an integrated development environment. For parallel applications, written in the hybrid graphical language of P-GRADE, the coloured Petri-net model can be automatically generated. The Occurrence Graph (a kind of state-space) is constructed straight away from the model by the GRSIM simulation engine, which allows examining and querying the Occurrence Graph for critical information, such as dead-locks, wrong termination, or the meeting the temporal logic specification. Based on the obtained information the macrostep-based execution can be steered towards the erroneous situations assisting to users to improve the quality of their software.


parallel programming debugging formal methods Petri-net temporal logic 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Kacsuk, P., Dozsa, G. and Fadgyas, T.: Designing Parallel Programs by the Graphical Language GRAPNEL. Microprocessing and Microprogramming, No. 41 (1996), pp. 625–643Google Scholar
  2. [2]
    Meta Software Corporation: Desgin/CPN. A Tool Package Supporting the Use of Colored Petri Nets. Technical Report, Cambridge, MA, USA, 1991Google Scholar
  3. [3]
    Jensen, K.: Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. Volume 2, Analysis Methods. Monographs in Theoretical Computer Science, Springer-Verlag, 1994. ISBN: 3-540-58276-2Google Scholar
  4. [4]
    Vecsei, B., Lovas, R.: Debugging Method for Parallel Programs Based on Petri-net Representation. Proc. of microCAD International Scientific Conference, 18–19 March 2004, pp. 413–420Google Scholar
  5. [5]
    Kovacs, J., Kusper, G., Lovas, R., Shreiner, W.: Integrating Temporal Assertions into a Parallel Debugger. Proc. of the 8th International, Euro-Par Conference, Paderborn, Germany, pp. 113–120, 2002Google Scholar
  6. [6]
    Tsiatsoulis, Z., Dozsa, G., Cotronis, Y., Kacsuk, P.: Associating Composition of Petri Net Specifications with Application Designs in Grade. Proc. of the Seventh Euromicro Workshop on Parallel and Distributed Processing, Funchal, Portugal, pp. 204–211, 1999.Google Scholar
  7. [7]
    Lovas, R., Kacsuk, P., Horvath, A., Horanyi, A.: Application of P-GRADE Development Environment in Meteorology. Journal of Parallel and Distributed Computing Practices, Special issue on DAPSYS 2002, Nova, Science Publishers (accepted for publication)Google Scholar
  8. [8]
    Kranzlmuller, D., Rimnac, A.: Parallel Program Debugging with MAD-A Practical Approach. Proc. International Conference on Computational Science 2003, pp. 201–212Google Scholar
  9. [9]
    Kacsuk, P.: Systematic Macrostep Debugging of Message Passing Parallel Programs. Journal of Future Generation Computer Systems, Vol. 16, No. 6, pp. 609–624, 2000.Google Scholar
  10. [10]
    Tarafdar, A., Garg, V.K.: Predicate control for active debugging of distributed programs. Proc. of IPPS/SPDP-98, pages 763–769, Los Alamitos, March 30–April 3 1998.Google Scholar
  11. [11]
    Frey, M., Oberhuber, M.: Testing and Debugging Parallel and Distributed Programs with Temporal Logic Specifications. Proc. of Second Workshop on Parallel and Distributed Software Engeneering 1997, pages 62–72, Boston, May 1997.Google Scholar
  12. [12]
    Lourenco, J., Cunha, J.C.: Fiddle: A Flexible Distributed Debugging Architecture. Proc. of ICCS 2001, San Francisco, CA, USA, 2001, pp. 821–830Google Scholar
  13. [13]
    Bruneton, E., Pradat-Peyre, J.-F. Automatic verification of concurrent Ada programs. Ada-Europe’99 International Conference on Reliable Software Technologies (Santander, Spain), pp. 146–157.Google Scholar
  14. [14]
    Rondogiannis, P., Cheng, M.H.M: Petri-net-based deadlock analysis of Process Algebra programs. Science of Computer Programming, 1994. Vol. 23(1), pp. 55–89.CrossRefMathSciNetGoogle Scholar
  15. [15]
    Dwyer, M.B., Clarke, L.A., Nies, K.A.: A compact petri net representation for concurrent programs. Technical Report TR 94-46, University of Massachusetts, Amherst, 1994.Google Scholar
  16. [16]
    Kacsuk, P. et al.: P-GRADE: a Grid Programming Environment. Journal of Grid Computing Volume 1, Issue 2, 2003, pp. 171–197CrossRefGoogle Scholar

Copyright information

© Springer Science + Business Media, Inc. 2005

Authors and Affiliations

  • Róbert Lovas
    • 1
  • Bertalan Vécsei
    • 1
  1. 1.Computer and Automation Research InstituteHungarian Academy of Sciences (MTA SZTAKI)Hungary

Personalised recommendations