ICGT 2008: Graph Transformations pp 274-288

Attributed Graph Constraints

• Fernando Orejas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5214)

Abstract

Graph constraints were introduced in the area of graph transformation, in connection with the notion of (negative) application conditions, as a form to limit the applicability of transformation rules. However, in a previous paper, we showed that graph constraints may also play a significant role in the area of visual software modelling or in the specification and verification of semi-structured documents or websites (i.e. HTML or XML sets of documents). In that paper we present a sound and complete proof system for reasoning with this kind of constraints. Those results apply, in principle, to any category satisfying some given properties, but the category of (typed) attributed graphs does not satisfy these properties. In particular, the proof rules introduced for reasoning with standard graph constraints allow us to infer infinitary formulas, making the logic incomplete. In addition, using the straightforward generalization of standard graph constraints, there is no obvious way of stating properties about the attributes of the given graphs.

In this paper we introduce a new formulation for attributed graph constraints. More precisely, the idea is to see these constraints as standard graph constraints whose attributes are just variables, together with a logic formula that expresses properties that must be satisfied by these attributes. Then a proof system, which extends the one introduced in the previous paper, is presented and it is shown to be sound and complete.

References

1. 1.
Alpuente, M., Ballis, D., Falaschi, M.: Automated Verification of Web Sites Using Partial Rewriting. Software Tools for Technology Transfer 8, 565–585 (2006)
2. 2.
Courcelle, B.: The expression of Graph Properties and Graph Transformations in Monadic Second-Order Logic. In: [17], pp. 313–400 (1997)Google Scholar
3. 3.
Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, Heidelberg (2006)
4. 4.
Ehrig, H., Ehrig, K., Habel, A., Pennemann, K.-H.: Constraints and Application Conditions: From Graphs to High-Level Structures. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 287–303. Springer, Heidelberg (2004)Google Scholar
5. 5.
Ehrig, H., Habel, A.: Graph Grammars with Application Conditions: From Graphs to High-Level Structures. In: Rozenberg, G., Salomaa, A. (eds.) The Book of L, pp. 87–100. Springer, Heidelberg (1986)Google Scholar
6. 6.
Ellmer, E., Emmerich, W., Finkelstein, A., Nentwich, C.: Flexible Consistency Checking. ACM T. on Soft. Eng. and Methodology 12(1), 28–63 (2003)
7. 7.
Habel, A., Heckel, R., Taentzer, G.: Graph Grammars with Negative Application Conditions. Fundam. Inform. 26(3/4), 287–313 (1996)
8. 8.
Habel, A., Pennemann, K.-H.: Nested Constraints and Application Conditions for High-Level Structures. In: Kreowski, H.-J., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds.) Formal Methods in Software and Systems Modeling. LNCS, vol. 3393, pp. 293–308. Springer, Heidelberg (2005)Google Scholar
9. 9.
Habel, A., Pennemann, K.-H.: Satisfiability of High-Level Conditions. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 430–444. Springer, Heidelberg (2006)
10. 10.
Heckel, R., Wagner, A.: Ensuring Consistency of Conditional Graph Grammars - A Constructive Approach. In: Proceedings SEGRAGRA 1995. Electr. Notes Theor. Comput. Sci, vol. 2, pp. 118–126 (1995)Google Scholar
11. 11.
Jaffar, J., Maher, M., Marriot, K., Stukey, P.: The semantics of constraint logic programs. The Journal of Logic Programming (37), 1–46 (1998)
12. 12.
Jelliffe, R.: “Schematron”, Internet Document (May 2000), http://xml.ascc.net/resource/schematron/
13. 13.
Lucio, P., Orejas, F., Pasarella, E., Pino, E.: A Functorial Framework for Constraint Normal Logic Programming. Abstract Categorical Structures 3, 421–450 (2008)
14. 14.
Nieuwenhuis, R., Rubio, A.: Paramodulation-Based Theorem Proving. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, Elsevier Science and MIT Press (2001)Google Scholar
15. 15.
Orejas, F., Ehrig, H., Prange, U.: A Logic of Graph Constraints. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 179–198. Springer, Heidelberg (2008)
16. 16.
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
17. 17.
Rozenberg, G.: Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. 1. World Scientific, Singapore (1997)Google Scholar