Abstract
We present new algorithms to compute the Syntactic Closure and the Minimal Cover of a set of functional dependencies, using strategic port graph rewriting. We specify a Visual Domain Specific Language to model relational database schemata as port graphs, including an extension to port graph rewriting rules. Using these rules we implement strategies to compute a syntactic closure, analyse it and find minimal covers, essential for schema normalisation. The graph program provides a visual description of the computation steps coupled with analysis features not available in other approaches. We show soundness and completeness of the computed closure, and implement it in PORGY.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
References
Abrial, J.: Data semantics. In: Klimbie, J.W., Koffeman, K.L. (eds.) Proceeding of the IFIP Working Conference Data Base Management, Cargèse, Corsica, France, 1–5 April 1974, pp. 1–60. North-Holland (1974)
Andrei, O.: Rewriting calculus for graphs: applications to biology and autonomous systems. Ph.D. thesis, Institut National Polytechnique de Lorraine, Nancy, France, November 2008
Andrei, O., Fernández, M., Kirchner, H., Melançon, G., Namet, O., Pinaud, B.: Porgy: strategy-driven interactive transformation of graphs. In: Echahed, R. (ed.) TERMGRAPH. EPTCS, vol. 48, pp. 54–68 (2011)
Armstrong, W.W.: Dependency structures of data base relationships. In: Proceedings of IFIP Congress, Information processing, vol. 74, pp. 580–583, North-Holland, Amsterdam (1974)
Ausiello, G., D’Atri, A., Saccà, D.: Graph algorithms for functional dependency manipulation. J. ACM 30(4), 752–766 (1983). https://doi.org/10.1145/2157.322404
Badia, A., Lemire, D.: A call to arms: revisiting database design. SIGMOD Rec. 40(3), 61–69 (2011). https://doi.org/10.1145/2070736.2070750
Batini, C., D’Atri, A.: Rewriting systems as a tool for relational data base design. In: Claus, V., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1978. LNCS, vol. 73, pp. 139–154. Springer, Heidelberg (1979). https://doi.org/10.1007/BFb0025717
Beeri, C., Bernstein, P.A.: Computational problems related to the design of normal form relational schemas. ACM Trans. Database Syst. 4(1), 30–59 (1979)
Beeri, C., Fagin, R., Howard, J.H.: A complete axiomatization for functional and multivalued dependencies in database relations. In: Smith, D.C.P. (ed.) SIGMOD Conference, pp. 47–61. ACM (1977)
Bernstein, P.A.: Synthesizing third normal form relations from functional dependencies. ACM Trans. Database Syst. 1(4), 277–298 (1976)
Borovanský, P., Kirchner, C., Kirchner, H., Moreau, P., Ringeissen, C.: An overview of ELAN. Electr. Notes Theor. Comput. Sci. 15, 55–70 (1998). https://doi.org/10.1016/S1571-0661(05)82552-6
Ehrig, H., Engels, G., Kreowski, H., Rozenberg, G. (eds.): Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages and Tools, vol. 2. World Scientific, River Edge (1999)
Embley, D.W., Mok, W.Y.: Mapping conceptual models to database schemas. In: Embley, D.W., Thalheim, B. (eds.) Handbook of Conceptual Modeling, vol. XIX, pp. 123–164. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-15865-0_5
Fernández, M., Kirchner, H., Pinaud, B.: Strategic Port Graph Rewriting: an Interactive Modelling Framework. Math. Struct. Comput. Sci. 1–48 (2018). https://doi.org/10.1017/S0960129518000270. https://hal.inria.fr/hal-01251871
Fernández, M., Kirchner, H., Pinaud, B., Vallet, J.: Labelled graph strategic rewriting for social networks. J. Log. Algebr. Meth. Program. 96, 12–40 (2018). https://doi.org/10.1016/j.jlamp.2017.12.005
Garcia-Molina, H., Ullman, J.D., Widom, J.: Database Systems - The Complete Book, 2nd edn. Pearson Education, Harlow (2014)
Jahnke, J.H., Zündorf, A.: Applying graph transformations to database re-engineering. In: Ehrig et al., vol. 12, pp. 267–286 (1999)
Jiresch, E.: Extending the interaction nets calculus by generic rules. In: Alves, S., Mackie, I. (eds.) Proceedings 2nd International Workshop on Linearity, LINEARITY 2012, Tallinn, Estonia, 1 April 2012. EPTCS, vol. 101, pp. 12–24 (2012). https://doi.org/10.4204/EPTCS.101.2
Kalleberg, K.T.: Stratego: a programming language for program manipulation. ACM Crossroads 12(3), 4 (2006). https://doi.org/10.1145/1144366.1144370
Löwe, M.: Algebraic approach to single-pushout graph transformation. Theor. Comput. Sci. 109(1 and 2), 181–224 (1993). https://doi.org/10.1016/0304-3975(93)90068-5
Maier, D.: Minimum covers in relational database model. J. ACM 27(4), 664–674 (1980). https://doi.org/10.1145/322217.322223
Maier, D.: The Theory of Relational Databases. Computer Science Press, Rockville (1983)
Plump, D.: The design of GP 2. In: Escobar, S. (ed.) Proceedings 10th International Workshop on Reduction Strategies in Rewriting and Programming, WRS 2011, Novi Sad, Serbia, 29 May 2011. EPTCS, vol. 82, pp. 1–16 (2011). https://doi.org/10.4204/EPTCS.82.1
Saiedian, H., Spencer, T.: An efficient algorithm to compute the candidate keys of a relational database schema. Comput. J. 39(2), 124–132 (1996). https://doi.org/10.1093/comjnl/39.2.124
Schürr, A., Winter, A.J., Zündorf, A.: The PROGRES approach: language and environment. In: Ehrig et al., vol. 12, pp. 551–603 (1999)
Vallet, J.: Where social networks, graph rewriting and visualisation meet: application to network generation and information diffusion. Ph.D. thesis, University of Bordeaux, France (2017). https://tel.archives-ouvertes.fr/tel-01691037
Varga, J.: Finding the transitive closure of functional dependencies using strategic port graph rewriting. In: Fernández, M., Mackie, I. (eds.) Proceedings Tenth International Workshop on Computing with Terms and Graphs, Oxford, UK, 7th July 2018. Electronic Proceedings in Theoretical Computer Science, vol. 288, pp. 50–62. Open Publishing Association (2019). https://doi.org/10.4204/EPTCS.288.5
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Fernández, M., Pinaud, B., Varga, J. (2020). A Port Graph Rewriting Approach to Relational Database Modelling. In: Gabbrielli, M. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2019. Lecture Notes in Computer Science(), vol 12042. Springer, Cham. https://doi.org/10.1007/978-3-030-45260-5_13
Download citation
DOI: https://doi.org/10.1007/978-3-030-45260-5_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-45259-9
Online ISBN: 978-3-030-45260-5
eBook Packages: Computer ScienceComputer Science (R0)