skip to main content
article
Free Access

Implementing deductive databases by mixed integer programming

Published:01 June 1996Publication History
Skip Abstract Section

Abstract

Existing and past generations of Prolog compilers have left deduction to run-time and this may account for the poor run-time performance of existing Prolog systems. Our work tries to minimize run-time deduction by shifting the deductive process to compile-time. In addition, we offer an alternative inferencing procedure based on translating logic to mixed integer programming. This makes available for research and implementation in deductive databases, all the theorems, algorithms, and software packages developed by the operations research community over the past 50 years. The method keeps the same query language as for disjunctive deductive databases, only the inferencing procedure changes. The language is purely declarative, independent of the order of rules in the program, and independent of the order in which literals occur in clause bodies. The technique avoids Prolog's problem of infinite looping. It saves run-time by doing primary inferencing at compile-time. Furthermore, it is incremental in nature. The first half of this article translates disjunctive clauses, integrity constraints, and database facts into Boolean equations, and develops procedures to use mixed integer programming methods to compute equations, and develops procedures to use mixed integer programming methods to compute equations, and develops procedures to use mixed integer programming methods to compute equations, and develops procedures to use mixed integer programming methods to compute

—least models of definite deductive databases, and

—minimal models and the Generalized Closed World Assumption of disjunctive databases.

References

  1. BANCILHON, F., MAIER, D., SAtHV, Y., AND ULLMAN, J. 1986. Magic sets and other strange ways to implement logic programs. In ProceedinGs ofACM-PODS, 1 15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. BAN('II,HON, F. AND RAMAKRISIINAN, R. 1986. An amateur's introduction to recursive query processing strategies. In ProceedinGs of ACM-SIGMOD, 16-52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. BEERI, C. ^NI) RAMAKRISHNAN, R. 1987. On the Power of Magic. In ProceedinGs of the Sixth Symposium on Principles of Database Systems, 269-283. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. B~:LI,, C., NEROt)E, A., Nt;, R., AND SUBRAHMANIAN, V. S. 1994. Mixed integer programming methods for computing nonmouotonic deductive databases. J. ACM 41, 6 (Nov.) 1178-1215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. BLAIR, C., JEROSLOW, R. G., AND LOWE, J.K. 1988. Some results and experiments in programming techniques for propositional logic. Comput. Oper. Res. 13, 633 645. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. BLAKELEY, J., LARSON, P., AND TOWPA, F. 1986. Efficiently updating materialized views. In Proceedings of ACM-SIGMOD, 61 71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. BLt;M, I,., SHUB, M., ANI) SMALE, S. 1989. On a theory of computation and complexity over the real numbers: NP-completeness, recursive functions and universal machines. Bull. Am. Math. Soc. 21, 1 -46.Google ScholarGoogle ScholarCross RefCross Ref
  8. BRY, R. 1989. Query evaluation in deductive databases: Bottom-up and top-down reconciled. In Proceedings of the First International Conference on Deductive and Object-Oriented Databases, 25-44.Google ScholarGoogle Scholar
  9. CAI)OLI, M. AND LENZER{NI, M, 1990. The complexity of closed world reasoning and circumscription. In Proceedings of AAAI-90, 550-555.Google ScholarGoogle Scholar
  10. (?~t^N~mAS~:KAP~t~, R. 1984. Integer programming problems for which a simple rounding type of algorithm works. In Progress in Combinatorial Optimization, W. Pulleyblank, Ed, Academic Press, San Diego, CA, 101 106.Google ScholarGoogle Scholar
  11. CHANDRU, V. AND HOOKFR, ,J. 1991. Extended Horn sets in propositional logic. J. ACM 38, 1, 205 221. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. CHARNIAK, E., RIESBECK, C., ANI) McDERMOTT, D. 1980. Artificial Intelltgence Programming, L. Erlbaum Associates, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. DIETRICH, S.W. 1987. Extension tables: Memo relations in logic programming. In ProceedinGs of the Fourth IEEE Symposium on Logic Programming, 264-272.Google ScholarGoogle Scholar
  14. D()WLIN(}, W. AND GALLIER, J. 1984. Linear-time algorithms for testing the satisfiability of propositional Horn theories, d. Logic Program. 3, 267 284.Google ScholarGoogle Scholar
  15. F~;RN~'~I~V:Z, J. A. AND MINKER, J. 1991. Bottom-up evaluation of hierarchical disjunctive deductive databases. In Proceedings of the International Conference on Logic Programming, (Paris, France, June) 661 675.Google ScholarGoogle Scholar
  16. GII,I,E'PT, B.E. 1976. Introduction to Operations Research: A Computer-Oriented Algorithmic Approach. McGraw Hill, New York.Google ScholarGoogle Scholar
  17. GOMORV, R E. 1965. On the relation between integer and non-integer solutions to linear programs. Proc. Nat. Acad. Sci. 53, 260 265.Google ScholarGoogle ScholarCross RefCross Ref
  18. (_~)TTI,OB, G., MARCUS, S., NEROI)E, A., SALZER, O., AND SUBRAHMANIAN, V.S. 1993. A non-ground realization of stable and well-founded semantics. Accepted for publication: Theoretical Computer Science.Google ScholarGoogle Scholar
  19. Guv'r^, A., MUMI(:K, I., ANt) SUBm~HMANrAN, V. S. 1993. Maintaining views incrementally. In Prt~ceedings of the 1993 ACM SIGMOD Conference on Management of Data (Washington, D.C., MayL 157 166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. HAILPERIN, T. 1976. Boole's Logic and Probability: A Critical Exposition from the Standpoint of Contemporary Algebra, Logic and Probability Theory. North Holland, Amsterdam. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. HILLIER, F. AND LIEBERMAN, G. 1990. Operations Research. McGraw-Hill, New York.Google ScholarGoogle Scholar
  22. HOOKER, J. 1988. A quantitative approach to logical inferences. Decis. Support Syst. 4, 45-69. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. HOOKER, J. AND FEDJKI, C. 1990. Branch-and-cut solution of inference problems in propositional logic. Ann. Math. Artif. Intell. 123-139.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. JAFFAR, J. AND LASSEZ, J. L. 1987. Constraint logic programming. In Proceedings of ACM Principles of Programming Languages, 111 119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. JEROSLOW, R. E. 1989. Logic-Based Decision Support: Mixed Integer Model Formulation. North Holland, Amsterdam.Google ScholarGoogle Scholar
  26. JEROSLOW, R. E. 1988. Computation-oriented reductions of predicate to propositional logic. Decis. Support Syst. 4, 183-187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. JEROSLOW, R. AND WANG, J. 1990. Solving propositional satisfiability problems. Ann. Math. Artif. Intell. 167-187.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. KAGAN, V., NERODE, A., AND SUBRAHMAN~tN, V.S. 1994a. Computing definite logic programs by partial instantiation. Ann. Pure Appl. Logic, 67, 161-182.Google ScholarGoogle ScholarCross RefCross Ref
  29. KA6AN, V., NERODE, A., AND SUBRAHMAN1AN, V. S. 1994b. Computing minimal models by partial instantiation. Accepted for publication: Theoretical Computer Science.Google ScholarGoogle Scholar
  30. KARMARKAR, N. 1988. Methods and apparatus for efficient resource allocation. Patent Number 4744028, US Patent Office.Google ScholarGoogle Scholar
  31. KOHN, W. 1991. Declarative control architecture. CACM 34, 8, 64-79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. KOHN, W. AND NERODE, A. 1993. Autonomous control theory of hybrid systems: The implementation. IEEE-CDC 93 (to appear).Google ScholarGoogle Scholar
  33. LI, Z. AND YES, P. 1990. Some results on exact data dependence analysis. In Languages and Compilers for Parallel Computing, D. Gelernter, A. Nicolau, and D. Padua, Eds. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. LIU, K. AND SUNDERRAMAN, a. 1990. Indefinite and maybe information in relational databases. ACM Trans. Database Syst. 15, 1, 1-39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. LLOYD, J. W. 1987. Foundations of Logic Programming. Springer-Verlag, Heidelberg, C-ermany. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Leo, J. AND REIJNS, G. 1992. Parallel implementation of two algorithms to solve linear programming problems. In Transputing in Numerical and Neural Network Applications, IOS Press, Amsterdam, 48-65.Google ScholarGoogle Scholar
  37. MAHER, M. 1991. Personal electronic mail message, July 29, 1991.Google ScholarGoogle Scholar
  38. MINKER, J. 1982. On indefinite databases and the closed world assumption. In Proceedings of the Sixth Conference on Automated Deduction (New York), D. Loveland, Ed., Lecture Notes in Computer Science, Vol. 138, Springer-Verlag, 292-308. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. MORRIS, K., ULLMAN, J., AND VAN GELDER, A. 1986. Design overview of the NAIL system. In Proceedings of the Third International Conference on Logic Programming (London, UK), E. Shapiro, Ed., Springer LNCS 225, Springer-Verlag, 554-568. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. NAQVl, S. AND TSUR, S. 1989. A Logical Language for Data and Knowledge Bases. Computer Science Press, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. NERODE, A., NO, R., AND SUS~MA~, V. S. 1995. Computing circumscription by linear programming. Inf. Comput., 116, 58-80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. RAMAKmSHNAN, R., SRIVASTAVA, D., AND SUD~d~SHAN, S. 1992. CORAL--control, relations and logic. In Proceedings of the Eighteenth VLDB, 238-250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. RoussoPOULOS, N. 1991. The incremental access method of view cache: Concept and cost analysis. ACM Trans. Database Syst. 16, 3, 535-563. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. SELLIS, T., ROUSSOPOULOS, N., AND NG, R. 1990. Efficient compilation of large rule bases using logical access paths. Inf. Syst. 15, 1, 73-84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. SHMUELI, O., TSUR, S., AND Za~IOLO, C. 1988. Rewriting of rules containing set terms in a logic data language. In Proceedings of the Seventh Symposium on Principles of Database Systems, 15-28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. ULLMAN, J. D. 1989. Bottom-up beats top-down for Datalog. In Proceedings of the 1989 Symposium on Principles of Database Systems (Philadelphia, PA, May), 140-149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. ULLMAN, J. D. 1988. Principles of Database and Knowledge-Base System, Vol. 1. Computer Science Press, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. vAN EMDE~, M. H. AND KOWALSrd, R.A. 1976. The semantics of predicate logic as a programming language. J. ACM 23, 4, 733-742. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. VAN GELDER, A. 1989. The alternating fixpoint of logic programs with negation. In Proceedings of the Eighth ACM Symposium on Principles of Database Systems, 1-10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. WARR~:N, D.S. 1992. Memoing for logic programs. Commun. ACM 35. 3, 94 111. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. YAHYA, A. AND HENSCHEN, L.J. 1985. Deduction in non-Horn databases. J. Autom. Reasoning 1, 2. 141 160.Google ScholarGoogle ScholarCross RefCross Ref
  52. ZANIOI,O, C. 1988. Design and implementation of a logic-based language for data-intensive applications. In Proceedings of the International Conference on Logic Programming, K. Bowen and R. Kowalski, Eds. MIT Press, Cambridge, MA, 1666- 1687.Google ScholarGoogle Scholar

Index Terms

  1. Implementing deductive databases by mixed integer programming

            Recommendations

            Reviews

            Julia E. Hodges

            The authors propose a new inferencing procedure for deductive databases that allows the deduction to be done at compile time rather than run<__?__Pub Caret>time. They also offer an alternative inferencing procedure, based on mixed integer programming, that is intended to make available to deductive database systems all of the algorithms and packages that have been developed by the “operations research community over the past 50 years.” Their approach is based on the fact that linear programming can replace logical deduction if the logical conditions are represented as Boolean inequalities of the form c 1 x 1 +&ldots;+c n x n ?a , where a,c 1 ,&ldots;,c n represent integers. The authors extend this approach so that they “solve a symbolic logic program by treating it as a numerical problem.” Thus, a deductive database is translated into a set of linear constraints. The least models for such a database can then be computed using a linear programming algorithm. This work has much in common with the work that has been done on finding efficient ways to provide materialized views in relational databases. The authors provide a method for translating deductive databases into sets of linear constraints, show their correspondence with minimal models, and provide a technique for computing the minimal models. Although much of their work is theoretical, and they admit to not knowing an efficient way to accomplish some of the computations, they have successfully demonstrated their approach with a prototype compiler. Researchers in deductive databases should find this paper of interest.

            Access critical reviews of Computing literature here

            Become a reviewer for Computing Reviews.

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader