Abstract
We present a generalization of SLD-resolution, Limiting Resolution (LR) which embeds concepts from the field of inductive inference into logic programming. This paper describes the development of LR from theoretical underpinnings through to demonstrating a practical implementation. LR is designed to represent and solve problems which are not purely deductive more easily than current logic programming formalisms. It is based on the notion of identification in the limit, where successful computations produce a non-halting converging sequence of outputs as opposed to computations which produce a single output and halt. The queries of LR are of the form \(\exists \overline{x} ( \psi(\overline{x}) \land \forall \overline{y} \neg \chi(\overline{x},\overline{y}))\), with some restrictions on the occurrence of negation in ψ and χ. The programs are divided into background knowledge and a potentially infinite stream of data which drives the construction of the converging sequence of outputs. In some problems true negation can be applied to data in this stream. We describe the logical foundations of LR, where the notions of induction, deduction and identification in the limit are unified in a common framework. The programs, queries, and proof procedure of LR are precisely defined, and a completeness result is stated. Furthermore we present a Prolog-style system, RichProlog, which implements LR, and provide an extended example of RichProlog’s execution. This example shows that it is possible to solve genuine problems in polynomial time and also illustrates RichProlog’s utility, conciseness, and declarative nature.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Anderson, A., Belnap, N.: Entailment: The Logic of Relevance and Necessity. Princeton University Press, Princeton (1975)
Apt, K.R., Bol, R.: Logic Programming and Negation: A Survey. J. of Logic Programming. 19/20, 9–71 (1994)
Clark, K.: Negation as Failure. In: Gallaire, H., Minker, J. (eds.) Logic and Databases, pp. 293–322. Plenum Press, New York (1978)
Chen, W., Warren, D.S.: Tabled Evaluation with Delaying for General Logic Programs. J. of the ACM 43(1), 20–74 (1996)
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. M.I.T. Press, Cambridge (1990)
Gold, E.: Language Identification in the Limit. Information and Control 10 (1967)
Holzbaur, C.: Metastructures vs. attributed variables in the context of extensible unification. In: Bruynooghe, M., Wirsing, M. (eds.) PLILP 1992. LNCS, vol. 631, Springer, Heidelberg (1992)
Israel, D.J.: What’s wrong with nonmonotonic logic. In: Proc. of the First National Conference on Artificial Intelligence, pp. 99–101 (1980)
Jain, S., Osherson, D., Royer, J., Sharma, A.: Systems that Learn, 2nd edn. M.I.T. Press, Cambridge (1999)
Kraus, S., Lehmann, D., Magidor, M.: Nonmonotonic Reasoning, Preferential Models and Cumulative Logics. Artificial Intelligence 44, 167–207 (1990)
Kunen, K.: Negation in logic programming. J. of Logic Prog. 4, 289–308 (1987)
Le, T.: A general scheme for representing negative and quantified queries for deductive databases. In: Proc. of the First Int. Conf. on Information and Knowledge Management. Baltimore, Maryland (1992)
Lloyd, J.W., Topor, R.W.: Making Prolog more expressive. J. of Logic Programming 1(3), 225–240 (1984)
Martin, É., Nguyen, P., Sharma, A., Stephan, F.: Learning in Logic with Rich- Prolog. In: Stuckey, P.J. (ed.) ICLP 2002. LNCS, vol. 2401, p. 239. Springer, Heidelberg (2002)
Martin, E., Sharma, A., Stephan, F.: A General Theory of Deduction, Induction, and Learning. In: Jantke, K.P., Shinohara, A. (eds.) DS 2001. LNCS (LNAI), vol. 2226, p. 228. Springer, Heidelberg (2001)
Martin, E., Sharma, A., Stephan, F.: Logic, Learning, and Topology in a Common Framework. In: Cesa-Bianchi, N., Numao, M., Reischuk, R. (eds.) ALT 2002. LNCS (LNAI), vol. 2533, pp. 248–262. Springer, Heidelberg (2002)
Muggleton, S., de Raedt, L.: Inductive Logic Programming: Theory and Methods. J. of Logic Programming. 19/20, 629–679 (1994)
Mycroft, A., O’Keefe, R.A.: A Polymorphic Type System for Prolog. Artificial Intelligence 23, 295–307 (1983)
Perlis, D.: On the Consistency of Commonsense Reasoning. Computational Intelligence 2, 180–190 (1986)
Przymusinski, T.C.: On the declarative and procedural semantics of logic programs. J. of Automated Reasoning. 5, 167–205 (1989)
Shepherdson, J.C.: A sound and complete semantics for a version of negation as failure. Theoretical Computer Science 65, 343–371 (1989)
Voronkov, A.: Logic programming with bounded quantifiers. In: Voronkov, A. (ed.) RCLP 1990 and RCLP 1991. LNCS, vol. 592, pp. 486–514. Springer, Heidelberg (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Caldon, P., Martin, E. (2004). Limiting Resolution: From Foundations to Implementation. In: Demoen, B., Lifschitz, V. (eds) Logic Programming. ICLP 2004. Lecture Notes in Computer Science, vol 3132. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27775-0_11
Download citation
DOI: https://doi.org/10.1007/978-3-540-27775-0_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22671-0
Online ISBN: 978-3-540-27775-0
eBook Packages: Springer Book Archive