Predicate Invention in Inductive Program Synthesis
نویسنده
چکیده
In Inductive Logic Programming, predicate invention is the process of introducing a hitherto unknown predicate, and its description, into the description of the currently learned predicate. This is only necessary when a finite axiomatization of the current predicate is otherwise impossible, in which case the description of the invented predicate is recursive. So necessary predicate invention is a program synthesis task, and had thus best be done by a synthesizer rather than by a general purpose learner, because one can then re-use the vast body of knowledge about recursive algorithm design. Taking a schema-guided approach, I show how predicate invention can be performed (if not avoided) by intelligent re-use from structured background knowledge, by necessarily successful intelligent dialogue with the user, and by structural or computational generalization of the original problem.
منابع مشابه
Inductive Logic Program Synthesis with DIALOGS
DIALOGS (Dialog-based Inductive and Abductive LOGic program Synthesizer) is a schema-guided synthesizer of recursive logic programs; it takes the initiative and minimally queries a (possibly computationally naive) specifier for evidence in her/his conceptual language. The specifier must know the answers to such simple queries, because otherwise s/he wouldn’t even feel the need for the synthesiz...
متن کاملInductive Synthesis of Logic Programs by Composition of Combinatory Program Schemes
Based on a variable-free combinatory form of definite clause logic programs we outline a methodology and supporting program environment CombInduce for inducing well-moded logic programs from examples. The combinators comprise fold combinators for recursion on lists. The combinator form is distinguished by enabling piecewise composition of semantically meaningful program elements according to th...
متن کاملRepeat Learning Using Predicate Invention
Most of machine learning is concerned with learning a single concept from a sequence of examples. In repeat learning the teacher chooses a series of related concepts randomly and independently from a distribution D. A nite sequence of examples is provided for each concept in the series. The learner does not initially know D, but progressively updates a posterior estimation of D as the series pr...
متن کاملLearning Higher-Order Logic Programs through Abstraction and Invention
Many tasks in AI require the design of complex programs and representations, whether for programming robots, designing game-playing programs, or conducting textual or visual transformations. This paper explores a novel inductive logic programming approach to learn such programs from examples. To reduce the complexity of the learned programs, and thus the search for such a program, we introduce ...
متن کاملSystematic Predicate Invention in Inductive Logic Programming
We propose in this paper a new approach for learning predicate deenitions from examples and an initial theory. The particularity of this approach consists in inventing a new predicate at most steps of learning; once the learning task is ended, most invented predicates are removed by unfolding techniques. Nevertheless, some predicates remain in the learned deenitions, either because they enable ...
متن کامل