Program: 21299
Project: 21299
Buggy source:
@Override public void initLearning(){
  this.noLatentVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().filter(p -> p.getMainVar().isObservable()).map(p -> p.getMainVar().getName()).collect(Collectors.toList());
  this.latentVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().flatMap(p -> p.getParents().stream()).filter(v -> v.isInterfaceVariable()).map(v -> this.dynamicDAG.getDynamicVariables().getVariableFromInterface(v)).map(v -> v.getName()).collect(Collectors.toList());
  this.latentInterfaceVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().flatMap(p -> p.getParents().stream()).filter(v -> v.isInterfaceVariable()).map(v -> v.getName()).collect(Collectors.toList());
  this.parallelVBTime0=new eu.amidst.flinklink.core.learning.parametric.ParallelVB();
  this.parallelVBTime0.setPlateuStructure(Serialization.deepCopy(plateuStructure));
  this.parallelVBTime0.setTransitionMethod(Serialization.deepCopy(transitionMethod));
  this.parallelVBTime0.getSVB().getPlateuStructure().getVMP().setMaxIter(1000);
  this.parallelVBTime0.setBatchSize(this.batchSize);
  this.parallelVBTime0.setGlobalThreshold(this.globalThreshold);
  this.parallelVBTime0.setMaximumGlobalIterations(this.maximumGlobalIterations);
  this.parallelVBTime0.setOutput(this.output);
  this.parallelVBTime0.setSeed(this.seed);
  this.parallelVBTime0.setDAG(this.dagTime0);
  this.parallelVBTime0.initLearning();
  this.svbTimeT=new SVB();
  this.svbTimeT.setPlateuStructure(Serialization.deepCopy(plateuStructure));
  this.svbTimeT.setTransitionMethod(Serialization.deepCopy(transitionMethod));
  this.svbTimeT.getPlateuStructure().getVMP().setMaxIter(1000);
  this.svbTimeT.setWindowsSize(this.batchSize);
  this.svbTimeT.setOutput(this.output);
  this.svbTimeT.setSeed(this.seed);
  this.svbTimeT.setDAG(this.dagTimeT);
  this.svbTimeT.initLearning();
}

Fixed version (ground truth):
@Override public void initLearning(){
  this.noLatentVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().filter(p -> p.getMainVar().isObservable()).map(p -> p.getMainVar().getName()).collect(Collectors.toList());
  this.latentVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().flatMap(p -> p.getParents().stream()).filter(v -> v.isInterfaceVariable()).map(v -> this.dynamicDAG.getDynamicVariables().getVariableFromInterface(v)).map(v -> v.getName()).collect(Collectors.toList());
  this.latentInterfaceVariablesNames=this.dynamicDAG.getParentSetsTimeT().stream().flatMap(p -> p.getParents().stream()).filter(v -> v.isInterfaceVariable()).map(v -> v.getName()).collect(Collectors.toList());
  this.parallelVBTime0=new eu.amidst.flinklink.core.learning.parametric.ParallelVB();
  this.parallelVBTime0.setPlateuStructure(Serialization.deepCopy(plateuStructure));
  if (transitionMethod != null)   this.parallelVBTime0.setTransitionMethod(Serialization.deepCopy(transitionMethod));
  this.parallelVBTime0.getSVB().getPlateuStructure().getVMP().setMaxIter(1000);
  this.parallelVBTime0.setBatchSize(this.batchSize);
  this.parallelVBTime0.setGlobalThreshold(this.globalThreshold);
  this.parallelVBTime0.setMaximumGlobalIterations(this.maximumGlobalIterations);
  this.parallelVBTime0.setOutput(this.output);
  this.parallelVBTime0.setSeed(this.seed);
  this.parallelVBTime0.setDAG(this.dagTime0);
  this.parallelVBTime0.initLearning();
  this.svbTimeT=new SVB();
  if (transitionMethod != null)   this.svbTimeT.setPlateuStructure(Serialization.deepCopy(plateuStructure));
  this.svbTimeT.setTransitionMethod(Serialization.deepCopy(transitionMethod));
  this.svbTimeT.getPlateuStructure().getVMP().setMaxIter(1000);
  this.svbTimeT.setWindowsSize(this.batchSize);
  this.svbTimeT.setOutput(this.output);
  this.svbTimeT.setSeed(this.seed);
  this.svbTimeT.setDAG(this.dagTimeT);
  this.svbTimeT.initLearning();
}