Learning logic programs by finding minimal unsatisfiable subprograms