Learning logic programs by discovering where not to search
  The goal of inductive logic programming (ILP) is to search for a hypothesis
that generalises training examples and background knowledge (BK). To improve
performance, we introduce an approach that, before searching for a hypothesis,
first discovers `where not to search'. We use given BK to discover constraints
on hypotheses, such as that a number cannot be both even and odd. We use the
constraints to bootstrap a constraint-driven ILP system. Our experiments on
multiple domains (including program synthesis and inductive general game
playing) show that our approach can substantially reduce learning times.
