Sub-Unification: A Tool for Efficient Induction of Recursive Programs

Abstract

This paper describes a relational learning system LOPSTER (inductive LOgic Programming with Sub-unification of TERms) that learns very efficiently and with small number of examples a class of typical recursive logic programs. Instead of θ-subsumption, usually used in learning systems due to its tractability, we use the notion of generalization based on logical implication. This frees us from some shortcomings of the θ-subsumption, e.g. the requirement to have only a single occurrence of the clause being induced in the proof of the training examples. The system is based on sub-unification: a mechanism that unifies subterms of a term with another term, without the decomposition of the first term. Sub-unification allows us to discover the substitutions performed by recursion, as well as the depth of recursion, before inducing a recursive clause. In the paper, we define two classes of syntactically simple, but at the same time quite common, logic programs: purely recursive and left-recursive programs. LOPSTER is able to induce programs belonging to either class, working from examples with arbitrarily complex terms. Compared to other inductive relational learners LOPSTER does not require large training sets containing structurally similar examples. LOPSTER has been implemented in Prolog. Early experiments reported in the paper show drastic improvements in performance over state-of-the-art relational learning systems.

Cite

Text

Lapointe and Matwin. "Sub-Unification: A Tool for Efficient Induction of Recursive Programs." International Conference on Machine Learning, 1992. doi:10.1016/B978-1-55860-247-2.50040-1

Markdown

[Lapointe and Matwin. "Sub-Unification: A Tool for Efficient Induction of Recursive Programs." International Conference on Machine Learning, 1992.](https://mlanthology.org/icml/1992/lapointe1992icml-sub/) doi:10.1016/B978-1-55860-247-2.50040-1

BibTeX

@inproceedings{lapointe1992icml-sub,
  title     = {{Sub-Unification: A Tool for Efficient Induction of Recursive Programs}},
  author    = {Lapointe, Stephane and Matwin, Stan},
  booktitle = {International Conference on Machine Learning},
  year      = {1992},
  pages     = {273-281},
  doi       = {10.1016/B978-1-55860-247-2.50040-1},
  url       = {https://mlanthology.org/icml/1992/lapointe1992icml-sub/}
}