Skip to main content

Evaluation Diversity for Graph Conditions

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

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

Included in the following conference series:

  • 363 Accesses

Abstract

Graphs are used as a universal data structure in various domains. Sets of graphs (and likewise graph morphisms) can be specified using the graph logic of Graph Conditions (GCs). The evaluation of a graph against a GC results in a satisfaction judgement on whether the graph is specified by the GC. is as expressive as first-order logic on graphs and infinitely many graphs may be evaluated against a given GC. Therefore, a complete compact overview of how a given GC may be evaluated for varying graphs can support GC validation, testing, debugging, and repair.

As a main contribution, we generate such an overview for a given GC in the form of a complete finite set of diverse evaluations for varying associated graphs formally given by so called Evaluation Trees (ETs). Each of these ETs concretely describes how its associated graph is evaluated against the given GC by presenting each evaluation step. The returned ETs are complete since each possible ET subsumes one of the returned ETs and diverse by not containing superfluous ETs subsuming smaller ETs. We apply an implementation of our ET generation procedure in the tool to a running example.

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

Similar content being viewed by others

Notes

  1. 1.

    Type graphs and typed graphs can be understood as formalizations of UML class diagrams and UML object diagrams.

  2. 2.

    The operation used here is a simplification of the operation presented in [23, 24], which returned symbolic models representing all graphs satisfying a given GC. Technically, we apply the operation from [23, 24], remove additional information with which the returned graphs are equipped and remove all graphs from that set for which the set contains a subgraph already.

  3. 3.

    Note that the runtime of is usually insignificant when it is applied offline (i.e., at design time) to small hand-written GCs only (despite the need to solve the NP-hard subgraph isomorphism problem when computing the possibly exponential number of graph overlappings). If one or both of these assumptions are not satisfied in an application context, further evaluations are required to ensure a practical runtime in that setting and the property (b) from Fact 1 on partial results may become relevant.

  4. 4.

    Intuitively, compactness means that all graph elements of the host graph G have been matched by some considered mono during the evaluation.

  5. 5.

    Intuitively, the operations of this three-valued logic can be computed based on numerical values using the bijective homomorphism \(\langle \cdot \rangle \), which maps the elements of the base set as follows: , , and . Then, negation is translated into the multiplication with \(-1\) and disjunction is translated into taking the maximum of its arguments. E.g. because \(-1\times \mathsf {max}(0,1)=-1\).

  6. 6.

    The operation is an adaptation of the predicate \(\models _{\mathrm {ST}}\) from [22] accommodating for the additional operator .

  7. 7.

    The returned satisfaction judgement for is either or .

  8. 8.

    Since is either or , this also has to hold for .

  9. 9.

    This ES is given by the operation in [22].

  10. 10.

    To simplify our presentation, we also employ the regular expression based specification via for existential quantification. We thereby restrict ourselves to finite sets of monos , which is guaranteed e.g. for finite host graphs. However, the used rules can easily be relaxed to handle also infinite match sets

  11. 11.

    Steps in Fig. 2 are i.a. labeled with the satisfaction judgement for the derived ET.

  12. 12.

    Note that for (c), there may be in general multiple ways as to why a sub-GC is not satisfied and fixing one particular reason for all matches would not allow for a set of ETs that is complete in the sense of Definition 10.

References

  1. Ammann, P., Offutt, A.J., Huang, H.: Coverage criteria for logical expressions. In: 14th International Symposium on Software Reliability Engineering (ISSRE 2003), Denver, CO, USA, 17–20 November 2003, pp. 99–107. IEEE Computer Society (2003). https://doi.org/10.1109/ISSRE.2003.1251034

  2. Barkowsky, M., Giese, H.: Hybrid search plan generation for generalized graph pattern matching. In: Guerra, E., Orejas, F. (eds.) ICGT 2019. LNCS, vol. 11629, pp. 212–229. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-23611-3_13

    Chapter  Google Scholar 

  3. Beyhl, T., Blouin, D., Giese, H., Lambers, L.: On the operationalization of graph queries with generalized discrimination networks. In: Echahed, R., Minas, M. (eds.) ICGT 2016. LNCS, vol. 9761, pp. 170–186. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-40530-8_11

    Chapter  MATH  Google Scholar 

  4. Chilenski, J.J., Miller, S.P.: Applicability of modified condition/decision coverage to software testing. Softw. Eng. J. 9(5), 193–200 (1994). https://doi.org/10.1049/sej.1994.0025

    Article  Google Scholar 

  5. Courcelle, B.: The expression of graph properties and graph transformations in monadic second-order logic. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations, pp. 313–400. World Scientific (1997). ISBN 9810228848

    Google Scholar 

  6. Cseppento, L., Micskei, Z.: Evaluating code-based test input generator tools. Softw. Test. Verification Reliab. 27(6) (2017). https://doi.org/10.1002/stvr.1627

  7. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. MTCSAES. Springer, Heidelberg (2006). https://doi.org/10.1007/3-540-31188-2

    Book  MATH  Google Scholar 

  8. Feldt, R., Poulding, S.M., Clark, D., Yoo, S.: Test set diameter: quantifying the diversity of sets of test cases. In: 2016 IEEE International Conference on Software Testing, Verification and Validation, ICST 2016, Chicago, IL, USA, 11–15 April 2016, pp. 223–233. IEEE Computer Society (2016). ICST.2016.33

    Google Scholar 

  9. Ghahremani, S., Giese, H., Vogel, T.: Efficient utility-driven self-healing employing adaptation rules for large dynamic architectures. In: Wang, X., Stewart, C., Lei, H. (eds.) 2017 IEEE International Conference on Autonomic Computing, ICAC 2017, Columbus, OH, USA, 17–21 July 2017, pp. 59–68. IEEE Computer Society (2017). https://doi.org/10.1109/ICAC.2017.35. ISBN 978-1-5386-1762-5

  10. Habel, A., Pennemann, K.: Correctness of high-level transformation systems relative to nested conditions. Math. Struct. Comput. Sci. 19(2), 245–296 (2009). https://doi.org/10.1017/S0960129508007202

    Article  MathSciNet  MATH  Google Scholar 

  11. Hochgeschwender, N., Schneider, S., Voos, H., Bruyninckx, H., Kraetzschmar, G.K.: Graph-based software knowledge: storage and semantic querying of domain models for run-time adaptation. In: 2016 IEEE International Conference on Simulation, Modeling, and Programming for Autonomous Robots, SIMPAR 2016, San Francisco, CA, USA, 13–16 December 2016, pp. 83–90. IEEE (2016). https://doi.org/10.1109/SIMPAR.2016.7862379

  12. Jackson, D., Milicevic, A., Torlak, E., Kang, E., Near, J.: Alloy: a language & tool for relational models (2017). https://alloytools.org/. Accessed 05 July 2020

  13. Kakita, S., Watanabe, Y., Densmore, D., Davare, A., Sangiovanni-Vincentelli, A.L.: Functional model exploration for multimedia applications via algebraic operators. In: Sixth International Conference on Application of Concurrency to System Design (ACSD 2006), 28–30 June 2006, Turku, Finland, pp. 229–238. IEEE Computer Society (2006). https://doi.org/10.1109/ACSD.2006.8

  14. Kang, E., Jackson, E.K., Schulte, W.: An approach for effective design space exploration. In: Calinescu, R., Jackson, E. (eds.) Monterey Workshop 2010. LNCS, vol. 6662, pp. 33–54. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21292-5_3

    Chapter  Google Scholar 

  15. Lambers, L., Schneider, S., Weisgut, M.: Model-based testing of read only graph queries. In: 13th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2020, Porto, Portugal, 24–28 October 2020, pp. 24–34. IEEE (2020). https://doi.org/10.1109/ICSTW50294.2020.00022

  16. Nassar, N., Kosiol, J., Kehrer, T., Taentzer, G.: Generating large EMF models efficiently. FASE 2020. LNCS, vol. 12076, pp. 224–244. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45234-6_11

    Chapter  Google Scholar 

  17. Neo4J Team. Neo4J. http://neo4j.com/

  18. Object Management Group. Unified Modeling Language. https://www.uml.org/

  19. OMG. Object Constraint Language (2014). http://www.omg.org/spec/OCL/

  20. Radke, H., Arendt, T., Becker, J.S., Habel, A., Taentzer, G.: Translating essential OCL invariants to nested graph constraints focusing on set operations. In: Parisi-Presicce, F., Westfechtel, B. (eds.) ICGT 2015. LNCS, vol. 9151, pp. 155–170. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21145-9_10

    Chapter  MATH  Google Scholar 

  21. Schneider, S.: AutoGraph. https://github.com/schneider-sven/AutoGraph

  22. Schneider, S., Lambers, L., Orejas, F.: A logic-based incremental approach to graph repair featuring delta preservation. Int. J. Softw. Tools Technol. Transf. (2020, accepted)

    Google Scholar 

  23. Schneider, S., Lambers, L., Orejas, F.: Automated reasoning for attributed graph properties. Int. J. Softw. Tools Technol. Transf. 20(6), 705–737 (2018). https://doi.org/10.1007/s10009-018-0496-3

    Article  Google Scholar 

  24. Schneider, S., Lambers, L., Orejas, F.: Symbolic model generation for graph properties. In: Huisman, M., Rubin, J. (eds.) FASE 2017. LNCS, vol. 10202, pp. 226–243. Springer, Heidelberg (2017). https://doi.org/10.1007/978-3-662-54494-5_13

    Chapter  Google Scholar 

  25. Semeráth, O., Farkas, R., Bergmann, G., Varró, D.: Diversity of graph models and graph generators in mutation testing. Int. J. Softw. Tools Technol. Transf. 22(1), 57–78 (2020). https://doi.org/10.1007/s10009-019-00530-6

    Article  Google Scholar 

  26. Semeráth, O., Nagy, A.S., Varró, D.: A graph solver for the automated generation of consistent domain-specific models. In: Chaudron, M., Crnkovic, I., Chechik, M., Harman, M. (eds.) Proceedings of the 40th International Conference on Software Engineering, ICSE 2018, Gothenburg, Sweden, 27 May–03 June 2018, pp. 969–980. ACM (2018). https://doi.org/10.1145/3180155.3180186

  27. Syriani, E., Bill, R., Wimmer, M.: Domain-specific model distance measures. J. Object Technol. 18(3), 3:1–3:19 (2019). https://doi.org/10.5381/jot.2019.18.3.a3

  28. The Linked Data Benchmark Council (LDBC). Datagen. Accessed 04 May 2021

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sven Schneider .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Schneider, S., Lambers, L. (2021). Evaluation Diversity for Graph Conditions. In: Gadducci, F., Kehrer, T. (eds) Graph Transformation. ICGT 2021. Lecture Notes in Computer Science(), vol 12741. Springer, Cham. https://doi.org/10.1007/978-3-030-78946-6_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-78946-6_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-78945-9

  • Online ISBN: 978-3-030-78946-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics