Hiord: A Type-Free Higher-Order Logic Programming Language with Predicate Abstraction
Conference paper
- 2 Citations
- 871 Downloads
Abstract
A new formalism, called Hiord, for defining type-free higher-order logic programming languages with predicate abstraction is introduced. A model theory, based on partial combinatory algebras, is presented, with respect to which the formalism is shown sound. A programming language built on a subset of Hiord, and its implementation are discussed. A new proposal for defining modules in this framework is considered, along with several examples.
Keywords
Logic Program Logic Programming Atomic Formula Abstract Syntax Horn Clause
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Preview
Unable to display preview. Download preview PDF.
References
- 1.Miller, D., Nadathur, G., Pfenning, F., Scedrov, A.: Uniform proofs as a foundation for logic programming. Annals of Pure and Applied Logic 51, 125–157 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
- 2.Nadathur, G., Miller, D.: Higher-order horn clauses. Journal of the ACM 37, 777–814 (1990)zbMATHCrossRefMathSciNetGoogle Scholar
- 3.Miller, D.: λprolog: an introduction to the language and its logic (2002), Manuscript available at http://www.cse.psu.edu/~dale
- 4.Chen, W., Kifer, M., Warren, D.S.: Hilog: JuneA Foundation for Higher-Order Logic Programming. Journal of Logic Programming (1989)Google Scholar
- 5.Beeson, M.: Foundations of Constructive Mathematics. Springer, Heidelberg (1985)Google Scholar
- 6.Lawvere, F.W.: Diagonal arguments and cartesian-closed categories. In: Category Theory, Homology Theory and their Applications. Springer, Heidelberg (1969)Google Scholar
- 7.Huwig, H., Poigné, A.: A Note on Inconsistencies Caused by Fixpoints in a Cartesian Closed Categories. Theoretical Computer Science 73, 101–112 (1990)zbMATHCrossRefMathSciNetGoogle Scholar
- 8.Miller, D.: A logic programming language with lambda-abstraction, function variables, and simple unification. Journal of Logic and Computation 1, 497–536 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
- 9.Curry, H.B., Feys, R.: Combinatory Logic. North-Holland, Amsterdam (1958)zbMATHGoogle Scholar
- 10.Cabeza, D.: An Extensible, Global Analysis Friendly Logic Programming System. PhD thesis, Dept. of Computer Science, Technical University of Madrid, Spain, Madrid, Spain (2004)Google Scholar
- 11.Bueno, F., Cabeza, D., Carro, M., Hermenegildo, M., López-García, P. (eds.): G.P.: The Ciao System. Reference Manual (v1.10). The ciao system documentation series–TR, School of Computer Science, Technical University of Madrid, UPM (2002), System and on-line version of the manual, available at http://clip.dia.fi.upm.es/Software/Ciao/
- 12.Warren, D.H.: Higher-order extensions to prolog: are they needed? In: Hayes, J., Michie, D., Pao, Y.H. (eds.) Machine Intelligence 10, pp. 441–454. Ellis Horwood Ltd., Chicester (1982)Google Scholar
- 13.Naish, L.: Higher-order logic programming. Technical Report 96/2, Department of Computer Science, University of Melbourne, Melbourne, Australia (1996)Google Scholar
- 14.McDowell, R., Miller, D.: A logic for reasoning with higher-order abstract syntax. In: Proceedings of the 12th Annual IEEE Symposium on Logic in Computer Science, p. 434. IEEE Computer Society Press, Los Alamitos (1997)Google Scholar
- 15.Miller, D.: Abstract syntax and logic programming. In: Proceedings of the Second Russian Conference on Logic Programming. Springer, Heidelberg (1991)Google Scholar
Copyright information
© Springer-Verlag Berlin Heidelberg 2004