public LinkedList<Hypothesis> generate(LinkedList<Hypothesis> oldHypothesis){
  LinkedList<Hypothesis> newHypothesis=new LinkedList<Hypothesis>();
  while (!oldHypothesis.isEmpty()) {
    Hypothesis hypo=oldHypothesis.removeFirst();
    if (hypo.canBeRefined()) {
      newHypothesis.addAll(hypo.refine());
    }
  }
  return newHypothesis;
}

public LinkedList < Hypothesis > generate ( LinkedList < Hypothesis > oldHypothesis ) { LinkedList < Hypothesis > newHypothesis = new LinkedList < Hypothesis > ( ) ; while ( ! oldHypothesis . isEmpty ( ) ) { Hypothesis hypo = oldHypothesis . removeFirst ( ) ; if ( hypo . canBeRefined ( ) ) { newHypothesis . addAll ( hypo . refine ( ) ) ; } } return newHypothesis ; }
generates all successors of the hypothesis in the given list .
