Given an example YAILS has the task of trying to incorporate it into the present theory. Inorder to do that YAILS observes what happens to each rule of the theory given this new piece of evidence. This observation can lead to modifications of some rules. In effect one of three things can happen to a rule :- no modifications are needed; specialization is to be tried; generalization is to be tried. The first case happens both when the rule correctly covers the example and when it correctly doesn't cover them. The specialization process can be initiated whenever the example contradicts the conclusion of the rule. Finally a generalization is to be tried whenever the example belongs to the same concept of the rule but the rule doesn't cover it.
There are two notions that need further explanation namely contradiction and correct coverage (or corroboration). Saying that an example contradicts a rule means that the example satisfies the conditional part of the rule but it belongs to other concept. A corroboration happens when the example satisfies the rule's conditions and belongs to the same concept. At first sight one could be tempted to think that an example satisfies the conditional part of a rule if it satisfies all the conditions on it. Nevertheless with the existence of unknown values this is not so straightforward. In effect if the example has some unknown values then some statistical approximation is taken by YAILS. For a more formal specification of the concept of satisfaction see section 2.6.1.
The algorithm used by YAILS to modify a theory given an example is as follows :
Together with the notions of "better" specialization and "better" generalization which will be described bellow there is an important issue on the algorithm which is the motion through the search space. Given a set of attributes and a set of possible values for those attributes we can "build" a search space with all possible conjunctions of selectors built using those attributes and values. The task of learning a set of rules can be described as a search on such space for conjunctions (complexes) which have "nice" properties. Those properties will be captured by an evaluation function which guides the search mechanism. On such set of conjunctions it is possible to establish a partial order of generality (or inversely of specificity). The more specific hypotheses we have are the examples and the goal of the learning program is to find conjunctions as general as possible but exhibiting those "nice" properties.
The search in YAILS is bidirectional which means that we can "move" both downwards and upwards (or said in another way into more specif or more generic points of the search space). In effect an example can induce a generalization(or specialization) to some rule but as described in the algorithm YAILS doesn't stop here. On this new point on the search space YAILS observes if it is possible to enhance it (either by generalizing it further or by specializing it). The following figure tries to capture a possible scenario of a case which started by a simple generalization :