This Article 
 Bibliographic References 
 Add to: 
Prolog-Based Meta-rules for Relational Database Representation and Manipulation
August 1991 (vol. 17 no. 8)
pp. 762-788

A Prolog-based experimental system for relational databases that is not defined from the viewpoint of any specific relational topic is proposed. The idea is that the experimental system can be used in many different contexts such as query optimization, data restructuring and database design. The definition is based entirely on the theoretical foundations of the relational model. The experimental system offers a well-defined environment for studying how other systems can be integrated with relational databases. The use of the experimental system in the context of different approaches to deductive databases is considered.

[1] H. Abramson and V. Dahl,Logic GrammarsNew York: Springer-Verlag, 1989.
[2] R. Agrawal, "Alpha: An Extension of Relational Algebra to Express a Class of Recursive Queries,"Proc. Third Int'l Conf. Data Eng., CS Press, Los Alamitos, Calif., Order No. FN762, 1987, pp. 580-590.
[3] T. Amble,Logic Programming and Knowledge Engineering. Wokingham, UK: Addison-Wesley, 1987.
[4] M. M. Astrahan and D. D. Chamberlin, "Implementation of a structured English query language,"Commun. ACM, vol. 18, no. 10, pp. 580-588, 1975.
[5] F. Bancilhon and S. Khoshafian, "A calculus for complex objects," inProc. 5th ACM SIGMOD-SIGACT Symp. on Principles of Database Syst., 1986, pp. 53-59.
[6] F. Bancilhon, T. Briggs, S. Khoshafian, and P. Valduriez, "FAD: a powerful and simple database language," inProc. 13th VLDB Conf. (Brighton, UK), 1987, pp. 97-105.
[7] D. Bitton, "The effect of large main memory on database systems," inProc. ACM SIGMOD Conf.(Washington, DC), 1986, pp. 337-339.
[8] D. Bjorner,Programming in the Meta-language: The Vienna Development Method. New York: Springer-Verlag, 1978, pp. 24-217.
[9] C. Beeri, S. Naqvi, R. Ramakrishnan, O. Shmueli, and S. Tsur, "Sets and negation in logic database language (LDL1)," inProc. 6th ACM SIGMOD-SIGACT Symp. on Principles of Database Syst. (San Diego, CA), 1987, pp. 21-37.
[10] I. Bratko,PROLOG: Programming for Artificial Intelligence. Reading, MA: Addison-Wesley, 1986.
[11] M. L. Brodie, "Research issues in database specification,"ACM Sigmod Rec., vol. 13, no. 3, pp. 42-45, 1983.
[12] S. Ceri and G. Gottlob, "Normalization of the relations and Prolog,"Commun. ACM, vol. 29, no. 6, pp. 524-544, 1986.
[13] S. Ceri, G. Gottlob, and L. Tanca,Logic Programming and Databases. Berlin: Springer-Verlag, 1990.
[14] A. Y. Chan, "Index selection in a self-adaptive relational data base management system," MIT, Lab. Comput. Sci., Cambridge, MA, Rep. MIT/LCS/TR-166, 1976.
[15] C. L. Chang, "On evaluation of queries containing derived relations in a relational data base, inAdvances in Data Base Theory, vol. 1, H. Gallaire, J. Minker, and J.-M. Nicholas, Eds. New York: Plenum, 1981, pp. 235-260.
[16] S. Christodoulakis, "Estimating record selectivities," Inform. Syst., vol. 8, no. 2, pp. 105-115, 1983.
[17] C. L. Chang and A. Walker, "PROSQL: A Prolog programming interface with SQL/DS," inProc. 1st Int. Workshop on Expert Database Syst., L. Kerschberg, Ed., 1986, pp. 233-246.
[18] E. Clemons, "Design of an external schema facility to define and process recursive structures,"ACM Trans. Database Syst., vol. 6, no. 2, pp. 295-311, 1981.
[19] W. Clocksin and C. Mellish,Programming in Prolog. Springer-Verlag, 1981.
[20] E. F. Codd,The Relational Model for Database Management: Version 2. Reading, MA: Addison-Wesley, 1990.
[21] V. Dahl, "On database systems development through logic,"ACM TODS, vol. 7, no. 1, pp. 102-123, 1982.
[22] D. Delobel, "An overview of the relational data theory," inProc. IFIP '80. Amsterdam: North-Holland, 1980, pp. 413-426.
[23] D. J. DeWittet al., "Implementation techniques for main memory databases," inProc. ACM Sigmod(Boston, MA), June 18-21, 1984, pp. 1-8.
[24] P. M. D. Gray, "Efficient Prolog access to Codasyl and FDM databases," inProc. ACM Sigmod(TX), May 28-31, 1985, pp. 437-443.
[25] A. Guttman, "New features for relational database systems to support CAD applications," Ph.D. dissert., Comput. Sci. Dept., Univ. California, Berkley, June 1984.
[26] D. I. Howells, N. J. Fiddian, and W. A. Gray, "A source-to-source meta-translation system for relational query languages," inProc. 13th VLDB Conf. (Brighton, UK), 1987, pp. 227-234.
[27] H. V. Jagadish and R. Agrawal, "A study of transitive closure as a recursion mechanism," inProc. 1987 ACM SIGMOD Conf. (San Francisco, CA), 1987, pp. 331-334.
[28] K. Järvelin and T. Niemi, "Entity-based query construction for relational database access," Dept. Comput. Sci., Univ. Tampere, Tampere, Finland, Rep. A-1990-6, 1990.
[29] K. Järvelin, "Boolean predicate reduction for file access," inInformation Modeling and Knowledge Bases, H. Kangassalo, S. Ohsuga, and H. Jaakola, Eds. Amsterdam: IOS, 1990, pp. 388-406.
[30] C. Kellog, A. O'Hare, and L. Travis, "Optimizing the rule-data interface in a KMS," inProc. 12th VLDB Conf.(Kyoto, Japan), 1986, pp. 42-51.
[31] S. Kunifuji and H. Yokota, "Prolog and relational data bases for fifth generation computer systems," presented at the Workshop on Logical Bases for Data Bases, Tolouse, France, 1982.
[32] Y. Y. Leung and D. L. Lee, "Logic approaches for deductive databases,"IEEE Expert, Winter Issue, pp. 64-75, 1988.
[33] D. Li,A PROLOG Database System. Letchworth, UK: Research Studies Press, 1984.
[34] R. Lucas,Database Applications Using Prolog. Chichester, UK: Ellis Horwood, 1988.
[35] D. Maier,The Theory of Relational Databases. London: Pitman, 1984.
[36] M. McCord, "Natural language processing in Prolog," inKnowledge Systems and Prolog, A. Walkeret al., Eds. Reading, MA: Addison-Wesley, 1987, pp. 291-402.
[37] S. P. Navathe and J. B. Fry, "Restructuring for large databases: three levels of abstraction,"ACM TODS, vol. 1, no. 2, pp. 138-158, 1976.
[38] P. Naur, "Formalization in program development,"BIT, vol. 22, no. 4, pp. 437-453, 1982.
[39] T. Niemi, "Formal restructuring functions for hierarchical data bases,"Int. J. Comput. Inform. Sci., vol. 12, no. 6, pp. 385-411, 1983.
[40] T. Niemi, "Specification of a query language by the attribute method,"BIT, vol. 24, pp. 171-186, 1984.
[41] T. Niemi and K. Järvelin, "A straightforward formalization of the relational model,"Inform. Syst., vol. 10, no. 1, pp. 65-76, 1985.
[42] T. Niemi and K. Järvelin, "A meta-information approach to relational database representation and manipulation based on Prolog," Dept. Comput. Sci., Univ. Tampere, Tampere, Finland, Rep. A-1988-11, 1988.
[43] T. Niemi and K. Järvelin, "Operation-oriented query language approach for recursive queries," Dept. Comput. Sci., Univ. Tampere, Rep. A- 1990-2, Tampere, Finland, 1990.
[44] T. Niemi and K. Järvelin, "The rule-based prototype implementation for the operation-oriented recursive query language approach and its integration with relational databases," Dept. Comput. Sci., Univ. Tampere, Tampere, Finland, Rep. A-1990-9, 1990.
[45] T. Niemi and K. Järvelin, "Advanced query processing in deductive databases,"Inform Proc. Manage., to be published.
[46] S. Oshuga, "Knowledge-based systems as a new interactive computer system of the next generation," inComputer Science and Technologies. Amsterdam: North-Holland, 1982, pp. 227-249.
[47] Z. Ozsoyogly and L. Yuan, "A normal form for nested relations," inProc. 4th Symp. Principles Database Syst., 1985, pp. 251-260.
[48] F. C. N. Pereira and D. H. D. Warren, "Definite clause grammars for language analysis--a survey of the formalism and a comparison with augmented transition networks,"Artificial Intell., vol. 13, pp. 231-278, 1980.
[49] A. Pirotte, "A precise definition of basic relational notations and of the relational algebra,"ACM Sigmod Rec., vol. 13, no. 1, pp. 30-45, 1982.
[50] A. Rosenthal, S. Heiler, U. Dayal, and F. Manola, "Traversal recursion: a practical approach to supporting recursive applications," inProc. 1986 ACM SIGMOD Conf.(Washington, DC), 1986, pp. 166-176.
[51] M. A. Roth, "The design of - 1NF relational databases into nested normal form," inProc. ACM Sigmod(San Francisco, CA), May 27-29, 1987, pp. 143-159.
[52] E. Sciore, "Database facilities for Prolog," Dept. Comput. Sci., State Univ. New York, Stony Brook, Tech. Rep. 85/012, 1985.
[53] M. Schkolnick and P. Tiberio, "A note on estimating the maintenance cost in a relational database," IBM Res. Lab., San Jose, CA, Rep. RJ 3327 (40084), 1981.
[54] E. Sciore and D. S. Warren, "Towards an integrated database-Prolog system," inProc. 1st Int. Workshop Expert Database Syst., L. Kerschberg, Ed., 1986, pp. 293-305.
[55] P. Selinger,et al., "Access path selection in a relational data base system," inProc. 1979 ACM-SIGMOD Int. Conf. Management of Data, Boston, MA, June 1979.
[56] B. Shneiderman and G. Thomas, "An architecture for automatic relational database system conversion,"ACM TODS, vol. 7, no. 2, pp. 235-257, 1982.
[57] J. M. Smith and P. Y.-T. Chang, "Optimizing the performance of a relational algebra database interface,"Commun. ACM, vol. 18, no. 10, pp. 568-579, 1975.
[58] L. Sterling and E. Shapiro,The Art of Prolog. Cambridge, MA: MIT Press, 1986.
[59] T. J. Teorey and J. R. Fry,Design of Database Structures. Englewood Cliffs, NJ: Prentice-Hall, 1982.
[60] S. Tsur and C. Zaniolo, "LDL: a logic-based data-language," inProc. 12th VLDB Conf., 1986, pp. 33-41.
[61] J. D. Ullman,Principles of Databases Systems. Rockville, MD: Computer Science Press, 1982.
[62] J. D. Ullman, "Implementation of logical query languages for databases,"ACM TODS, vol. 10, no. 3, pp. 289-321, 1985.
[63] J. D. Ullman,Database and Knowledge-base Systems. Rockville, MD: Computer Science Press, 1988.
[64] J. D. Ullman,Principles of Database and Knowledge Base Systems, vol. II:The New Technologies. Rockville, MD: Comput. Sci. Press, 1989.
[65] H. Yokotaet al., "An enhanced inference mechanism for generating relational algebra queries," inProc. 3rd Symp. Principles of Database Syst., 1984, pp. 229-238.
[66] T. Yokomori, "A logic program schema and its applications," inProc. 9th Int. Joint Conf. Artificial Intell., (Los Angeles, CA), 1985, pp. 723-725.
[67] C. T. Yu and Y. C. Lin, "Some estimation problems in distributed query processing" inProc. IEEE Distrib. Comput. Syst. Conf., 1982, pp. 13-19.
[68] C. Zaniolo, "Prolog: a database query language for all seasons," inProc. 1st Int. Workshop Expert Database Syst., 1986, L. Kerschberg, Ed., pp. 219-232.
[69] H. Zemanak, "Abstract architecture," inAbstract Software Specification. New York: Springer-Verlag, 1980, pp. 437-453.
[70] M. M. Zloof, "Query-by-example: operations on transitive closure," IBM, Yorktown Hts., NY, RC 5526, 1975.

Index Terms:
Prolog-based meta-rules; relational database representation; Prolog-based experimental system; query optimization; data restructuring; database design; theoretical foundations; well-defined environment; deductive databases; database theory; deductive databases; knowledge based systems; PROLOG; relational databases
T. Niemi, K. Jarvelin, "Prolog-Based Meta-rules for Relational Database Representation and Manipulation," IEEE Transactions on Software Engineering, vol. 17, no. 8, pp. 762-788, Aug. 1991, doi:10.1109/32.83913
Usage of this product signifies your acceptance of the Terms of Use.