A Benchmark Evaluation of Incremental Pattern Matching in Graph Transformation

  • Gábor Bergmann
  • Ákos Horváth
  • István Ráth
  • Dániel Varró
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5214)


In graph transformation, the most cost-intensive phase of a transformation execution is pattern matching, where those subgraphs of a model graph are identified and matched which satisfy constraints prescribed by graph patterns. Incremental pattern matching aims to improve the efficiency of this critical step by storing the set of matches of a graph transformation rule and incrementally maintaining it as the model changes, thus eliminating the need of recalculating existing matches of a pattern. In this paper, we propose benchmark examples where incremental pattern matching is expected to have advantageous effect in the application domain of model simulation and model synchronization. Moreover, we compare the incremental graph pattern matching approach of Viatra2 with advanced non-incremental local-search based graph pattern matching approaches (as available in Viatra2 and GrGen).


incremental graph pattern matching RETE benchmarking 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bergmann, G., et al.: Incremental pattern matching in the VIATRA transformation system. In: GRaMoT 2008, 3rd International Workshop on Graph and Model Transformation, 30th International Conference on Software Engineering (accepted, 2008)Google Scholar
  2. 2.
    Matzner, A., Minas, M., Schulte, A.: Efficient graph matching with application to cognitive automation. In: Proc. Applications of Graph Transformations with Industrial Relevance (AGTIVE 2007). Springer, Heidelberg (2007)Google Scholar
  3. 3.
    Giese, H., Wagner, R.: Incremental Model Synchronization with Triple Graph Grammars. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 543–557. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  4. 4.
    Varró, G., Horváth, Á., Varró, D.: Recursive graph pattern matching with magic sets and global search plans. In: Proc. Applications of Graph Transformations with Industrial Relevance (AGTIVE 2007). Springer, Heidelberg (2007)Google Scholar
  5. 5.
    Geiss, R., et al.: GrGEN: A fast spo-based graph rewriting tool. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 383–397. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations: Foundations. World Scientific, Singapore (1997)MATHGoogle Scholar
  7. 7.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)MATHCrossRefGoogle Scholar
  8. 8.
    Rensink, A.: Representing first-order logic using graphs. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 319–335. Springer, Heidelberg (2004)Google Scholar
  9. 9.
    Ehrig, H., et al.: Handbook on Graph Grammars and Computing by Graph Transformation, Applications, Languages and Tools, vol. 2. World Scientific, Singapore (1999)Google Scholar
  10. 10.
    Börger, E., Särk, R.: Abstract State Machines. A method for High-Level System Design and Analysis. Springer, Heidelberg (2003)MATHGoogle Scholar
  11. 11.
    Varró, G., Schürr, A., Varró, D.: Benchmarking for graph transformation. In: Proc. IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2005), Dallas, Texas, USA, pp. 79–88. IEEE Press, Los Alamitos (2005)CrossRefGoogle Scholar
  12. 12.
    Murata, T.: Petri nets: Properties, analysis and applications. In: Proceedings of the IEEE, April 1989, published as Proceedings of the IEEE, vol. 77(4), pp. 541–580 (1989)Google Scholar
  13. 13.
    Jungel, M., Kindler, E., Weber, M.: The Petri Net Markup Language. In: Algorithmen und Werkzeuge fur Petrinetze (AWPN), Koblenz (June 2002)Google Scholar
  14. 14.
    The VIATRA2 Framework: official website (2008), http://viatra.inf.mit.bme.hu
  15. 15.
    Geiss, R., Kroll, M.: On improvements of the Varro benchmark for graph transformation tools. Technical Report 2007-7, Universität Karlsruhe, IPD Goos 12 (2007)Google Scholar
  16. 16.
    Lawley, M., Steel, J.: Practical declarative model transformation with Tefkat. In: Proc. International Workshop on Model Transformation in Practice (MTiP 2005) (October 2005)Google Scholar
  17. 17.
    Hearnden, D., et al.: Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 321–335. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  18. 18.
    Varró, G., Varró, D., Schürr, A.: Incremental graph pattern matching: Data structures and initial experiments. In: Proc. Graph and Model Transformation (GraMoT 2006). Electronic Communications of the EASST, vol. 4 (2006)Google Scholar
  19. 19.
    Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)CrossRefGoogle Scholar
  20. 20.
    Bunke, H., Glauser, T., Tran, T.H.: An efficient implementation of graph grammar based on the RETE-matching algorithm. In: Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) Graph Grammars 1990. LNCS, vol. 532, pp. 174–189. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  21. 21.
    Matzner, A., Minas, M., Schulte, A.: Efficient graph matching with application to cognitive automation. In: Proc. 3rd International Workshop and Symposium on Applications of Graph Transformation with Industrial Relevance, Kassel, Germany, October 2007, pp. 293–308 (2007)Google Scholar
  22. 22.
    Ermel, C., Rudolf, M., Taentzer, G.: The AGG-Approach: Language and Tool Environment. In: [9], pp. 551–603. World Scientific, Singapore (1999)Google Scholar
  23. 23.
    Schürr, A.: Introduction to PROGRES, an attributed graph grammar based specification language. In: Nagl, M. (ed.) WG 1989. LNCS, vol. 411, pp. 151–165. Springer, Heidelberg (1990)Google Scholar
  24. 24.
    Nickel, U., Niere, J., Zündorf, A.: Tool demonstration: The FUJABA environment. In: The 22nd International Conference on Software Engineering (ICSE), Limerick, Ireland. ACM Press, New York (2000)Google Scholar
  25. 25.
    The AGTIVE Tool Contest: official website (2007), http://www.informatik.uni-marburg.de/~swt/agtive-contest

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Gábor Bergmann
    • 1
  • Ákos Horváth
    • 1
  • István Ráth
    • 1
  • Dániel Varró
    • 1
  1. 1.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsBudapest

Personalised recommendations