YAILS algorithm involves two major steps. Given a new example to learn, the first step consists of modifying the current theory (possibly empty) in order to adapt it to the example. If it does not succeed it starts the second step which tries to invent a new rule that covers the example.
Learning of this type of systems can be seen as a search over a space of all possible conjunctions within the language of the problem. In YAILS the search is guided by an evaluation function and employs two types of search transformations: specialisation and generalisation (fig.1). YAILS has two specialisation (and generalisation) operators. The first is adding (removing) one condition to a rule. The second is the restriction (enlargement) of a numerical interval within a rule.
YAILS uses exactly the same search mechanism when inventing a new rule while its goal is also to cover a particular example. For this purpose the specialisation operators are restricted in order to satisfy this goal. The restriction consists of adding only conditions present in the example being covered.