Skip to main content

k-Inductive Invariant Checking for Graph Transformation Systems

  • Conference paper
  • First Online:
Graph Transformation (ICGT 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10373))

Included in the following conference series:

Abstract

While offering significant expressive power, graph transformation systems often come with rather limited capabilities for automated analysis, particularly if systems with many possible initial graphs and large or infinite state spaces are concerned. One approach that tries to overcome these limitations is inductive invariant checking. However, the verification of inductive invariants often requires extensive knowledge about the system in question and faces the approach-inherent challenges of locality and lack of context.

To address that, this paper discusses k-inductive invariant checking for graph transformation systems as a generalization of inductive invariants. The additional context acquired by taking multiple (k) steps into account is the key difference to inductive invariant checking and is often enough to establish the desired invariants without requiring the iterative development of additional properties.

To analyze possibly infinite systems in a finite fashion, we introduce a symbolic encoding for transformation traces using a restricted form of nested application conditions. As its central contribution, this paper then presents a formal approach and algorithm to verify graph constraints as k-inductive invariants. We prove the approach’s correctness and demonstrate its applicability by means of several examples evaluated with a prototypical implementation of our algorithm.

This work was partially developed in the course of the project Correct Model Transformations II (GI 765/1-2), which is funded by the Deutsche Forschungsgemeinschaft.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    To allow verification without forward propagation, Theorem 21 can be modified by considering all \( seq \in {\text {Seq}}_k(\mathcal {R}, \mathcal {F})\) instead of all \({\text {prop}}( seq ) \in {\text {Seq}}_k(\mathcal {R}, \mathcal {F})\).

  2. 2.

    Setup: 64-bit system, two cores at 2.8 GHz, 8 GB main memory, Eclipse 4.5.1, Java 8, Windows 7. Java heap space limit was set to 1 GB, with the exception of variant 4 with forward propagation and \(k = 6\), which required 4 GB.

References

  1. Becker, B., Beyer, D., Giese, H., Klein, F., Schilling, D.: Symbolic invariant verification for systems with dynamic structural adaptation. In: Proceedings of the 28th International Conference on Software Engineering (ICSE). ACM, New York (2006)

    Google Scholar 

  2. Blume, C., Bruggink, H.J.S., Engelke, D., König, B.: Efficient symbolic implementation of graph automata with applications to invariant checking. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 264–278. Springer, Heidelberg (2012). doi:10.1007/978-3-642-33654-6_18

    Chapter  Google Scholar 

  3. Boneva, I.B., Kreiker, J., Kurban, M.E., Rensink, A., Zambon, E.: Graph abstraction and abstract graph transformations (amended version). Technical report TR-CTIT-12-26, University of Twente, Enschede (2012)

    Google Scholar 

  4. Donaldson, A.F., Haller, L., Kroening, D., Rümmer, P.: Software verification using k-induction. In: Yahav, E. (ed.) SAS 2011. LNCS, vol. 6887, pp. 351–368. Springer, Heidelberg (2011). doi:10.1007/978-3-642-23702-7_26

    Chapter  Google Scholar 

  5. Dyck, J., Giese, H.: Inductive invariant checking with partial negative application conditions. In: Parisi-Presicce, F., Westfechtel, B. (eds.) ICGT 2015. LNCS, vol. 9151, pp. 237–253. Springer, Cham (2015). doi:10.1007/978-3-319-21145-9_15

    Chapter  Google Scholar 

  6. Dyck, J., Giese, H.: k-Inductive Invariant Checking for Graph Transformation Systems. Technical report, University of Potsdam (2017)

    Google Scholar 

  7. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, Secaucus (2006)

    MATH  Google Scholar 

  8. Ehrig, H., Golas, U., Habel, A., Lambers, L., Orejas, F.: \(\cal{M}\)-adhesive transformation systems with nested application conditions. part 1: parallelism, concurrency and amalgamation. Math. Struct. Comput. Sci. 24, 1–48 (2014)

    Google Scholar 

  9. Ghamarian, A.H., de Mol, M.J., Rensink, A., Zambon, E., Zimakova, M.V.: Modelling and analysis using GROOVE. Int. J. Softw. Tools Technol. Transf. 14(1), 15–40 (2012)

    Article  Google Scholar 

  10. Habel, A., Pennemann, K.-H.: Correctness of high-level transformation systems relative to nested conditions. Math. Struct. Comput. Sci. 19, 1–52 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  11. König, B., Kozioura, V.: Augur 2 - a new version of a tool for the analysis of graph transformation systems. Electron. Notes Theoret. Comput. Sci. 211, 201–210 (2008)

    Article  Google Scholar 

  12. König, B., Stückrath, J.: A general framework for well-structured graph transformation systems. In: Baldan, P., Gorla, D. (eds.) CONCUR 2014. LNCS, vol. 8704, pp. 467–481. Springer, Heidelberg (2014). doi:10.1007/978-3-662-44584-6_32

    Google Scholar 

  13. Pennemann, K.-H.: Development of correct graph transformation systems. Ph.D. thesis, University of Oldenburg (2009)

    Google Scholar 

  14. Schmidt, Á., Varró, D.: CheckVML: a tool for model checking visual modeling languages. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 92–95. Springer, Heidelberg (2003). doi:10.1007/978-3-540-45221-8_8

    Chapter  Google Scholar 

  15. Sheeran, M., Singh, S., Stålmarck, G.: Checking safety properties using induction and a SAT-solver. In: Hunt, W.A., Johnson, S.D. (eds.) FMCAD 2000. LNCS, vol. 1954, pp. 127–144. Springer, Heidelberg (2000). doi:10.1007/3-540-40922-X_8

    Chapter  Google Scholar 

  16. Steenken, D.: Verification of infinite-state graph transformation systems via abstraction. Ph.D. thesis, University of Paderborn (2015)

    Google Scholar 

Download references

Acknowledgments

We would like to thank Leen Lambers for her comprehensive feedback on a draft version of this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Johannes Dyck .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Dyck, J., Giese, H. (2017). k-Inductive Invariant Checking for Graph Transformation Systems. In: de Lara, J., Plump, D. (eds) Graph Transformation. ICGT 2017. Lecture Notes in Computer Science(), vol 10373. Springer, Cham. https://doi.org/10.1007/978-3-319-61470-0_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-61470-0_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-61469-4

  • Online ISBN: 978-3-319-61470-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics