Program: 10039
Project: 10039
Buggy source:
private static void testOntology(String ont) throws MalformedURLException, ComponentInitException {
  System.out.print("String_Node_Str" + ont + "String_Node_Str");
  ComponentManager cm=ComponentManager.getInstance();
  KnowledgeSource source=cm.knowledgeSource(OWLFile.class);
  cm.applyConfigEntry(source,"String_Node_Str",new File(ont).toURI().toURL());
  source.init();
  ReasonerComponent reasoner=cm.reasoner(OWLAPIReasoner.class,source);
  reasoner.init();
  System.out.println("String_Node_Str");
  System.out.println();
  int outerLoops=10;
  for (int loop=0; loop < outerLoops; loop++) {
    int nrOfApplications=10;
    ELDescriptionTree currTree=new ELDescriptionTree(reasoner,Thing.instance);
    ELDown2 operator=new ELDown2(reasoner);
    Stat runtime=new Stat();
    Stat runtimePerRefinement=new Stat();
    System.out.println("String_Node_Str" + nrOfApplications + "String_Node_Str");
    for (int i=0; i < nrOfApplications; i++) {
      System.out.print("String_Node_Str" + currTree.transformToDescription().toString(reasoner.getBaseURI(),reasoner.getPrefixes()));
      long start=System.nanoTime();
      Set<ELDescriptionTree> refinements=operator.refine(currTree);
      long time=System.nanoTime() - start;
      runtime.addNumber(time / 1000000d);
      runtimePerRefinement.addNumber(time / 1000000d / refinements.size());
      System.out.println("String_Node_Str" + refinements.size() + "String_Node_Str");
      int index=rand.nextInt(refinements.size());
      currTree=new ArrayList<ELDescriptionTree>(refinements).get(index);
    }
    System.out.println("String_Node_Str" + runtime.prettyPrint("String_Node_Str"));
    System.out.println("String_Node_Str" + runtimePerRefinement.prettyPrint("String_Node_Str"));
    System.out.println();
  }
}

Fixed version (ground truth):
private static void testOntology(String ont) throws MalformedURLException, ComponentInitException {
  System.out.print("String_Node_Str" + ont + "String_Node_Str");
  ComponentManager cm=ComponentManager.getInstance();
  KnowledgeSource source=cm.knowledgeSource(OWLFile.class);
  cm.applyConfigEntry(source,"String_Node_Str",new File(ont).toURI().toURL());
  source.init();
  ReasonerComponent reasoner=cm.reasoner(OWLAPIReasoner.class,source);
  reasoner.init();
  System.out.println("String_Node_Str");
  System.out.println();
  int outerLoops=100;
  for (int loop=0; loop < outerLoops; loop++) {
    int nrOfApplications=10;
    ELDescriptionTree currTree=new ELDescriptionTree(reasoner,Thing.instance);
    ELDown2 operator=new ELDown2(reasoner);
    Stat runtime=new Stat();
    Stat runtimePerRefinement=new Stat();
    System.out.println("String_Node_Str" + nrOfApplications + "String_Node_Str");
    for (int i=0; i < nrOfApplications; i++) {
      System.out.print("String_Node_Str" + currTree.transformToDescription().toString(reasoner.getBaseURI(),reasoner.getPrefixes()));
      long start=System.nanoTime();
      Set<ELDescriptionTree> refinements=operator.refine(currTree);
      long time=System.nanoTime() - start;
      runtime.addNumber(time / 1000000d);
      runtimePerRefinement.addNumber(time / 1000000d / refinements.size());
      System.out.println("String_Node_Str" + refinements.size() + "String_Node_Str");
      int index=rand.nextInt(refinements.size());
      currTree=new ArrayList<ELDescriptionTree>(refinements).get(index);
    }
    System.out.println("String_Node_Str" + runtime.prettyPrint("String_Node_Str"));
    System.out.println("String_Node_Str" + runtimePerRefinement.prettyPrint("String_Node_Str"));
    System.out.println();
  }
}