Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Normalization of relations and PROLOG

Published: 01 June 1986 Publication History

Abstract

A program for the normalization of relations that is written in Prolog has several advantages relative to programs written in conventional programming languages: notably, conciseness and clarity. The program presented here implements several normalization algorithms and is suitable for the interactive design of small database applications and as a teaching aid.

References

[1]
Aho, A.V., Beeri. C., (and Ullman. J.D. The theory of joins in rela. 1. tional databases. .4Cn4 Trans. D&abase Sysf. 4, 3 (Sopi. 1979). 297-314. A study of join dependencies (a type of dependency not considered in this paper) and the lossless join property of decompositions.]]
[2]
Armstrong, W.W. Dependency structures of database relations. In Information Processing. North-Holland, Amsterdam, 1974. pp. 580- 583. Development and proof of the axiomatization of functional dependencies.]]
[3]
Beeri, C. On the membership problem for functional and multivalued dependencies in relational databases. ACM Trans. Database Sysf. 5. 3 (Sept. 1980), 214.-259.]]
[4]
Beeri. C. and Bernstein. P.A. Computational problems related to the design of normal form relational schemata. ACM Trans. Dafabase Sysf. 4. 1 (Mar. 1979), 30-59.]]
[5]
Beeri, C., Bernstein, P.A. and Goodman, N. A sophisticate's introduction to database normalization theory. In Proceedings of the 4th Infernational Confmv~ce on Very Lar>{e Data Bases (West Berlin). 1978, pp. 113-124. A comprehensive survey of normalization theory.]]
[6]
Bernstein, P.A. Synthesizing third-normal-form relations from functional dependencies. ACM Trans. Database Sysf. I, 4 (Dec. 7976), 277- 298. Presents the firsi and best-known algorithm for the synthesis of dependency-preserving third-normal-form relations.]]
[7]
Blanning. R.W. Issues in the design of relational model management systems. In Proceedings of the Nafionnf Compufer Conference. AFIPS Press, June 1983, pp. 395-401.]]
[8]
Bonczek. R.H., Holsapple. C.W., and Whinston, A.B. Foundations of Decision Support Sysfems. Academic Press. New York, 1981.]]
[9]
Bouzeghoub, M. Gardarin, G., and Metais, E. Database design tools: An expert system approach. In Proceedings of the 11th VLDB (Stockholm, Sweden, Aug. 121). 1985. pp. 82-95. Presents a system for database design written in Prolog: The system supports a semantic network as data model: semantic networks are then translated into normalized relation.]]
[10]
Ceri, S. Ed. Methodology and Tools for Dafabase Design. North- Holland. Amsterdam, 1983. An approach to database design through conceptual. logical, and physical design phases.]]
[11]
Cloksin, W.F., and Mallish. C.S. Programming in PROLOG. Springer- Verlag. New York. 1981. A well-written and widely used textbook for the Prolog programming language.]]
[12]
Codd, E.F. A relational modal of data for large shared data banks. Commun. ACM 13. 6 (June 19701, 377-387. A fundamental article defining the relational model and algebra, and a first development of normalization theory.]]
[13]
Codd, E.F. Further normalization of the database relational model. In Dafa Base Sysfems Couranf Compufer Science Symposia, vol. 6, R. Rustin, Ed. Prentice-Hall, En&wood Cliffs, N.J. 1972. Introduces the Boyce-Codd normal form.]]
[14]
Date. C.J. An Infroducfion to Database Sysfems. 3rd ed. Addison- Wesley, Reading, Mass. 1981. The most widely used introductory book on database systems.]]
[15]
Fagin, R. Functional dependencies in a relational database and propositional logic. IBM 1. Res. Den 21, Ci (Nov. 19771, 534-544.]]
[16]
Gottlob. G. Computing covers for embedded functional dependencies. Intern. Rep. 86-006, Dipartimento di Elettronica, Politecnico di Milano, Italy. Submitted for publication. Presents a new algorithm for computing covers of the functional dependencies holding in subsets of a relation schema.]]
[17]
Kent, W. A simple guide to five normal forms in relational database theory. Commun. ACM 26, 2 {Feb. 1963), 120-125. An introduction to normal forms for the practitioner; a good complement to this article.]]
[18]
Kerschberg, L., Ed. Expert database systems. In Proceedings of the 1st lnfernafional Conference on Expert Database Systems (Kiawah Island, SC. Oct.). 1984.]]
[19]
Kowalski. R. Logic for Problem Soloing. North-Holland, Amsterdam, 1979.]]
[20]
Lee, R.M. Database inferencing for decision support. Decis. Support Sysf. I, 1 (Jan. 19851, 57-68.]]
[21]
Loizou. G., and Thanish. P. Testing a dependency-preserving decomposition for losslessness. rnf. Sysf. 8, 1 (Mar. 1983), 25-28. Introduces a simple test for losslessness of third-normal-form decompositions.]]
[22]
Lucchesi, CL., and Osborn. S.L. Candidate keys for relations. 1. Compuf. Sysf. Sci. 17. ? (Oct. 1978), 270-280. Presents the algorithms for determining keys of relations.]]
[23]
Maier. D. The Theory of Relational Databases. Computer Science Press, Rockville, Md. 1983. The most comprehensive book on database theory: It includes four chapters on functional dependencies and normalization.]]
[24]
Potter, W.D. DESIGN-PRO: A multi-model schema design tool in PROLOG. In Proceedings of the 1st Infernational Conference on Experf Dafabase Sysfems (Kiawah Island, SC. Oct.). 1984, pp. 747-759. Presents a system that translates entity-relationship schemata into relational schemata.]]
[25]
Tsou. D.M., and Fischer, P.C. Decomposition of a relation scheme into Boyce-Codd normal form. ACM-SIGACT 14, 3 (Summer 1982). 23-29. Presents a polynomial algorithm for decomposition into Boyce-Codd normal form.]]
[26]
Ullman. J.D. Principles of Dafabase Systems. 2nd ed. Computer Science Press, Rockville, Md., 1982. Standard reference for a theoretical approach to all features of database systems: It includes one chapter on design theory for relational databases based on normalization.]]
[27]
Vinek, G. Rennert. P.F., and Tjoa, A.M. Dafenmodellierung. Physica- Verlag, Wurzburg-Wien. 1982 (in German). Contains an excellent description and comparison of several algorithms for database normalization.]]
[28]
Wiederhold. G. Database Design. 2nd ed. McGraw-Hill, New York. 1983. Standard reference for a pragmatic approach to file and database systems.]]
[29]
Yu, C.T., and Johnson, D.T. On the complexity of finding the set of candidate keys for a given set of functional dependencies. Jnf. Process. Lef. 5. 4 (Oct. 1976), 100-101.]]
[30]
Zaniolo. C., and Melkanoff. M.A. On the design of relational database schemata. ACM Trans. Database Sysf. 6, 1 (Mar. 1981), l-47.]]

Cited By

View all
  • (2018)A Design Method for People-Oriented ProgrammingInnovative Methods, User-Friendly Tools, Coding, and Design Approaches in People-Oriented Programming10.4018/978-1-5225-5969-6.ch006(174-225)Online publication date: 2018
  • (2012)Automating the TANDEM Design Method in End-User Programming EnvironmentsInternational Journal of People-Oriented Programming10.4018/ijpop.20120101022:1(16-52)Online publication date: 1-Jan-2012
  • (2011)Normalization of relations and ontologiesProceedings of the 10th WSEAS international conference on Artificial intelligence, knowledge engineering and data bases10.5555/1959485.1959558(419-424)Online publication date: 20-Feb-2011
  • Show More Cited By

Recommendations

Reviews

Bob Paul Weems

PROLOG is often viewed as a programming language useful for performing inference tasks such as database design. The authors supply a substantial set of procedures for manipulating relation schemes, including keys, third normal form decomposition, Boyce-Codd normal form, detecting lossless joins, and projecting functional dependencies over a set of attributes. Most notably, multivalued dependencies and fourth normal form are absent. A working knowledge of PROLOG is assumed. A summary of the normalization techniques is presented by using a running example. The discussion is by no means a complete survey of the theory, but it is self-contained for those readers with some familiarity with the subject. The program is well written. The diagram provided of the relationship of procedures is helpful in understanding the program. In reviewing this paper, an attempt was made to duplicate the given behavior, but different decompositions were obtained, so caveat emptor.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image Communications of the ACM
Communications of the ACM  Volume 29, Issue 6
June 1986
92 pages
ISSN:0001-0782
EISSN:1557-7317
DOI:10.1145/5948
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 June 1986
Published in CACM Volume 29, Issue 6

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)106
  • Downloads (Last 6 weeks)11
Reflects downloads up to 17 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2018)A Design Method for People-Oriented ProgrammingInnovative Methods, User-Friendly Tools, Coding, and Design Approaches in People-Oriented Programming10.4018/978-1-5225-5969-6.ch006(174-225)Online publication date: 2018
  • (2012)Automating the TANDEM Design Method in End-User Programming EnvironmentsInternational Journal of People-Oriented Programming10.4018/ijpop.20120101022:1(16-52)Online publication date: 1-Jan-2012
  • (2011)Normalization of relations and ontologiesProceedings of the 10th WSEAS international conference on Artificial intelligence, knowledge engineering and data bases10.5555/1959485.1959558(419-424)Online publication date: 20-Feb-2011
  • (2007)JMathNormProceedings of the 7th international conference on Computational Science, Part II10.1007/978-3-540-72586-2_27(186-193)Online publication date: 27-May-2007
  • (2006)Normalizing relational database schemas using mathematicaProceedings of the 6th international conference on Computational Science - Volume Part II10.1007/11758525_51(375-382)Online publication date: 28-May-2006
  • (2005)Reconstruction of ER schema from database applications: a cognitive approachEntity-Relationship Approach — ER '94 Business Modelling and Re-Engineering10.1007/3-540-58786-1_92(387-402)Online publication date: 8-Jun-2005
  • (2005)On the interaction between transitive closure and functional dependenciesMFDBS 8910.1007/3-540-51251-9_13(187-206)Online publication date: 1-Jun-2005
  • (2000)Enhanced ER to relational mapping and interrelational normalizationInformation and Software Technology10.1016/S0950-5849(00)00132-442:15(1057-1073)Online publication date: Dec-2000
  • (1997)A Mathematical Programming Approach to Data Base NormalizationINFORMS Journal on Computing10.1287/ijoc.9.1.19:1(1-14)Online publication date: 1-Feb-1997
  • (1997)How good is that data in the warehouse?ACM SIGMIS Database: the DATABASE for Advances in Information Systems10.1145/272657.27268828:3(21-31)Online publication date: 1-Jun-1997
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media