ABSTRACT
Higher-order equational logic programming is a paradigm which combines first-order equational and higher-order logic programming, where higher-order logic programming is based on a subclass of simply typed λ-terms, called higher-order patterns. Central to the notion of higher-order equational logic programming is the so-called higher-order equational unification. This paper extends several important classes of first-order equational unification algorithms to the higher-order setting: only problems of the extensions are discussed and first-order equational unifications are viewed as black boxes whenever possible.
We first extend narrowing and show that the completeness of many higher-order narrowing strategies reduces to that of their underlying first-order counterparts. Then we propose an algorithm or higher-order equational unification of free higher-order patterns in an arbitrary equational theory. Finally a general approach to extend first-order unification combination algorithms is sketched informally. The termination property of the above higher-order extensions is considered in a uniform way.
- 1.F. Baader and J. Siekmann. Unification theory. In D. Gabbay, C. Hogger, and J. Robinson, editors, Handbook of Logic in Artificial Intelligence and Logic Programming. Oxford University Press, Oxford, UK, 1993. To appear.]] Google ScholarDigital Library
- 2.A. Boudet. Combining unification algorithms. J. Symbolic Computation, 11, 1992.]] Google ScholarDigital Library
- 3.V. Breazu-Tannen. Combining algebra and higher-order types. In Proc. 3rd IEEE Syrup. Logic in Corr~pu~er Science, pages 82-90, 1988.]]Google ScholarCross Ref
- 4.V. Breazu-Tannen and 3. Gallier. Polymorphic rewriting conserves algebraic strong normalization and confluence. In Proc. 16th Int. Coll. Automata, Languages and Programming, pages 137-150. Springer-Verlag LNCS 372, 1988.]] Google ScholarDigital Library
- 5.V. Breazu-Tannen and A. Meyer. Computable values can be classical. In Proc. 14th A CM Symp. Principles of Programming Languages, pages 238-245. ACM, 1987.]] Google ScholarDigital Library
- 6.D. DeGroot and G. Lindstrom (eds.). Logic Programming: Relations, Functions and Equations. Prentice Hall, 1986.]] Google ScholarDigital Library
- 7.N. Dershowitz and D. Plaisted. Logic programming cum applicative programming. In Proc. 1985 Syrup. on Logic Programming, pages 54- 67. IEEE Comput. Soc. Press, 1985.]]Google Scholar
- 8.D. Dougherty and P. Johann. A combinatory logic approach to higher-order E-unification. In Proc. llth Int. Conf. on Automated Deduction, pages 79-93. Springer-Verlag LNCS 607, 1992.]] Google ScholarDigital Library
- 9.F. Fages. Associative-commutative unification. In R. Shostak, editor, Proc. 7th Int. Conf. Automated Deduction. Springer-Verlag LNCS 170, 1984.]] Google ScholarDigital Library
- 10.L. Fribourg. SLOG: A logic programming language interpreter based on clausal superposition and rewriting. In Proc. 1985 Symp. on Logic Programming, pages 172-184. IEEE Comput. Soc. Press, 1985.]]Google Scholar
- 11.J. Gallier and W. Snyder. Complete sets of transformations for general E-unification. Theoretical Computer Science, 67:203-260, 1988.]] Google ScholarDigital Library
- 12.E. Giovannetti, G. Levi, C. Moiso, and C. Palamidessi. Kernel-LEAF: A logic plus functional language. J. Computer and System Sciences, pages 139-185, 1991.]] Google ScholarDigital Library
- 13.M. Hanus. Compiling logic programs with equality. In Proc. Int. Workshop on Language Implementation and Logic Programming, pages 387- 401. Springer-Verlag LNCS 456, 1990.]] Google ScholarDigital Library
- 14.S. HSlldobler. Foundations of Equational Logic Programming. Springer-Verlag LNCS 353, 1989.]] Google ScholarDigital Library
- 15.:I.-M. Hullot. Canonical forms and unification. In W. Bibel and R. Kowalski, editors, Proc. 5th Int. Conf. Automated Deduction, pages 318-334. Springer-Verlag LNCS 87, 1980.]] Google ScholarDigital Library
- 16.H. Huf~mann. Unification in conditionalequational theories. In Proc. European Conf. on Computer Algebras, pages 543-553. Springer- Verlag LNCS 204, 1985.]] Google ScholarDigital Library
- 17.J.-P. Jouannaud and C. Kirchner. Solving equations in abstract algebras: A rule-based survey of unification. In J.-L. Lassez and G. Plotkin, editors, Computational Logic" Essays in Honor of Alan Robinson. MIT Press, 1991.]]Google Scholar
- 18.S. Kaplan. Simplifying conditional term rewriting systems" Unification, termination and confluence. J. Symbolic Computation, 4(3):295-334, 1987.]] Google ScholarDigital Library
- 19.A. Middeldorp and E. Hamoen. Completeness results for basic narrowing. In Proc. 3rd Int. Conf. on Algebraic and Logic Programming, pages 244-258. Springer-Verlag LNCS 632, 1992. A long version to appear in the journal of Applicable Algebra in Engineering, Communication and Computing.]] Google ScholarDigital Library
- 20.D. Miller. A logic programming language with lambda-abstraction, function variables, and simple unification. Journal of Logic and Computation, 1(4):497- 536, 1991.]]Google ScholarCross Ref
- 21.J. Moreno-Navarro and M. Rodrlguez-Artatejo. BABEL: A functional and logic programming language based on constructor discipline and narrowing. In Proc. 2th Int. Conf. on Algebraic and Logic Programming, pages 223-232. Springer-Verlag LNCS 343, 1989.]] Google ScholarDigital Library
- 22.T. Nipkow. Higher-order critical pairs. In Proc. 6th IEEE Syrup. Logic in Computer Science, pages 342-349, 1991.]]Google ScholarCross Ref
- 23.T. Nipkow. Functional unification of higherorder patterns. In Proc. 8th IEEE Symp. Logic in Computer Science, pages 64-74, 1993.]]Google Scholar
- 24.T. Nipkow and Z. Qian. Modular higher-order E-unification. In R. Book, editor, Proc. 4th Int. Conf. Rewriting Techniques and Applications, pages 200-214. Springer-Verlag LNCS 488, 1991.]] Google ScholarDigital Library
- 25.L. Paulson. isabelie: The next 700 theorem provers. In P. Odifreddi, editor, Logic and Computer Science, pages 361-385. Academic Press, 1990.]]Google Scholar
- 26.L. Paulson. Introduction to Isabelle. Technical report, University of Cambridge, Computer Laboratory, 1993.]]Google Scholar
- 27.F.'Pfenning. Logic programming in the LF logical framework. In G. Huet and G. D. Plotkin, editors, Logical Frameworks, pages 66-78. Cambridge University Press, 1991.]] Google ScholarDigital Library
- 28.Z. Qian. Linear unification of higher-order patterns, in J.-P. j. M.-C. Gaudel, editor, Proc. TAPSOFT'93, pages 391-405. Springer-Verlag LNCS 668, 1993.]] Google Scholar
- 29.Z. Qian and K. Wang. Higher-order E- unification for arbitrary theories, in Proc. 1992 Joint Int. Conf. and Symp. on Logic Programming. MIT Press, 1992.]]Google Scholar
- 30.Z. Qian and K. Wang. Modular equational unification of higher-order patterns" The AC case. Technical report, Draft, Universit~t Bremen, June 1993.]]Google Scholar
- 31.U. Reddy. Narrowing as the operational semantics of functional languages. In Proc. 1985 Symp. on Logic Programming, pages 138-151. IEEE Comput. Soc. Press, 1985.]]Google Scholar
- 32.P. R~ty, C. Kirchner, H. Kirchner, and P. Lescann~. NARROWER: A new algorithm and its application to logic programming. In Proc. 1st Int. Conf. Rewriting Techniques and Applications, pages 141-157. Springer-Verlag LNCS 256, 1985.]] Google ScholarDigital Library
- 33.M. Schmidt-Schaui~. Unification in a combination of arbitrary disjoint equational theories. J. Symbolic Computation, 8:51-99, 1989.]] Google ScholarDigital Library
- 34.W. Snyder. Higher-order E-unification. In Proc. lOth Int. Conf. Automated Deduction, pages 573-587. Springer-Verlag LNCS 449, 1990.]] Google ScholarDigital Library
- 35.M. van Emden and K. Yukawa. Logic programming with equality, j. Logic Programming, pages 265-288, 1987.]] Google ScholarDigital Library
- 36.F. Weber. Softwareentwicklung mit Logik hoeberet Stufe. PhD thesis, FZI, Universit~t Karlsruhe, 1993.]]Google Scholar
- 37.D. Wolfram. Rewriting, and equational unification: the higher-order cases. In R. Book, editor, Pvoc. ~th Int. Conf. Rewriting Techniques and Applications, pages 25-36. Springer-Verlag LNCS 488, 1991.]] Google ScholarDigital Library
- 38.K. Yelick. Unification in combinations of collapse-free regular theories../. Symbolic Computation, 3:153-181, 1987.]] Google ScholarDigital Library
- 39.:I.-H. You. Unification modulo an equality theory for equational logic programming. J. Computer and System Sciences, pages 54-75, 1991.]] Google ScholarDigital Library
Index Terms
- Higher-order equational logic programming
Recommendations
Second-order equational logic
CSL'10/EACSL'10: Proceedings of the 24th international conference/19th annual conference on Computer science logicWe extend universal algebra and its equational logic from first to second order as follows. 1. We consider second-order equational presentations as specified by identities between second-order terms, with both variables and parameterised metavariables ...
Comments