Inductive Logic Programming

Introduction to ILP

Inductive Logic Programming (ILP) is a research area formed at the intersection of Machine Learning and Logic Programming. ILP systems develop predicate descriptions from examples and background knowledge. The examples, background knowledge and final descriptions are all described as logic programs. A unifying theory of Inductive Logic Programming is being built up around lattice-based concepts such as refinement, least general generalisation, inverse resolution and most specific corrections. In addition to a well established tradition of learning-in-the-limit results, some results within Valiant's PAC-learning framework have been demonstrated for ILP systems. U-learnabilty, a new model of learnability, has also been developed.

Presently successful applications areas for ILP systems include the learning of structure-activity rules for drug design, finite-element mesh analysis design rules, primary-secondary prediction of protein structure and fault diagnosis rules for satellites.

Introduction to the Theory of ILP

The theory of ILP is based on proof theory and model theory for the first order predicate calculus. Inductive hypothesis formation is characterised by techniques including inverse resolution , relative least general generalisations , inverse implication , and inverse entailment.

The removal of redundancy, and use of search procedures also play an important role in the theory.

Computational Learning Theory (COLT) is used to analyse learning results for ILP systems. An extension to Valiant's PAC learning framework, U-learnability, has been suggested.

Introduction to Applications of ILP

ILP systems have been applied to various problem domains. Many applications benefit form the relational descriptions generated by the ILP systems. The ability of ILP systems to accomodate background knowledge is also fundamental. Some relationships learned in particular applications have been considered as discoveries within those domains.

Application areas include: learning drug structure-activity rules (drugs for Alzheimer's disease, for inhibition of E. Coli Dihydrofolate Reductase, in suramin analogues); learning rules for predicting mutagenesis; learning rules for predicting protein secondary structure; learning rules from chess databases; learning rules for finite element mesh design; learning diagnostic rules for qualitative models of satellite power supplies; and learning qualitative models of the U-tube system.

The applications are described in more detail on a separate page.

Implementations of ILP

This section introduces some implementaions of ILP.


The Duce system uses six inductive inference rules, of which, four are concerened with definite clause propositional logic.


Cigol inverts resolution of clauses in first order predicate logic.


Golem is based on the construction of relative least general generalisations (rlggs).


Progol implements the theoretical framework of inverting entailment (IE).

  Home Page