Was the Year 2000 a Leap Year? Step-Wise Narrowing Theories with Metagol

Many people believe that every fourth year is a leap year. However, this rule is too general: year X is a leap year if X is divisible by 4 except if X is divisible by 100 except if X is divisible by 400. We call such a theory with alternating generalisation and specialisation a step-wise narrowed theory. We present and evaluate an extension to the ILP system Metagol which facilitates learning such theories. We enabled Metagol to learn over-general theories by allowing a limited number of false positives during learning. This variant is iteratively applied on a learning task. For each iteration after the first, positive examples are the false positives from the previous iteration and negative examples are the true positives from the previous iteration. Iteration continues until no more false positives are present. Then, the theories are combined to a single step-wise narrowed theory. We evaluate the usefulness of our approach in the leap year domain. We can show that our approach finds solutions with fewer clauses, higher accuracy, and in shorter time.