Program: 10233
Project: 10233
Buggy source:
private void printStatistics(boolean finalStats){
  long algorithmRuntime=System.nanoTime() - algorithmStartTime;
  if (!finalStats) {
    ExampleBasedNode bestNode=candidatesStable.last();
    String bestNodeString="String_Node_Str" + bestNode.getShortDescription(nrOfPositiveExamples,nrOfNegativeExamples,baseURI);
    System.out.println(bestNodeString);
    String expandedNodeString="String_Node_Str" + candidates.last().getShortDescription(nrOfPositiveExamples,nrOfNegativeExamples,baseURI);
    System.out.println(expandedNodeString);
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(algorithmRuntime));
    System.out.println("String_Node_Str" + candidates.size());
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(rs.getSubsumptionReasoningTimeNs()));
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(rs.getInstanceCheckReasoningTimeNs()));
  }
  if (computeBenchmarkInformation) {
    long reasoningTime=rs.getOverallReasoningTimeNs();
    double reasoningPercentage=100 * reasoningTime / (double)algorithmRuntime;
    long propWithoutReasoning=propernessCalcTimeNs - propernessCalcReasoningTimeNs;
    double propPercentage=100 * propWithoutReasoning / (double)algorithmRuntime;
    double deletionPercentage=100 * childConceptsDeletionTimeNs / (double)algorithmRuntime;
    long subTime=rs.getSubsumptionReasoningTimeNs();
    double subPercentage=100 * subTime / (double)algorithmRuntime;
    double refinementPercentage=100 * refinementCalcTimeNs / (double)algorithmRuntime;
    double redundancyCheckPercentage=100 * redundancyCheckTimeNs / (double)algorithmRuntime;
    double evaluateSetCreationTimePercentage=100 * evaluateSetCreationTimeNs / (double)algorithmRuntime;
    double improperConceptsRemovalTimePercentage=100 * improperConceptsRemovalTimeNs / (double)algorithmRuntime;
    double mComputationTimePercentage=100 * operator.mComputationTimeNs / (double)algorithmRuntime;
    double topComputationTimePercentage=100 * operator.topComputationTimeNs / (double)algorithmRuntime;
    double cleanTimePercentage=100 * ConceptTransformation.cleaningTimeNs / (double)algorithmRuntime;
    double onnfTimePercentage=100 * ConceptTransformation.onnfTimeNs / (double)algorithmRuntime;
    double shorteningTimePercentage=100 * ConceptTransformation.shorteningTimeNs / (double)algorithmRuntime;
    System.out.println("String_Node_Str" + df.format(reasoningPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(subPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(propPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(deletionPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(refinementPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(mComputationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(topComputationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(redundancyCheckPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(evaluateSetCreationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(improperConceptsRemovalTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(cleanTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(onnfTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(shorteningTimePercentage) + "String_Node_Str");
  }
  System.out.println("String_Node_Str" + propernessTestsReasoner + "String_Node_Str"+ propernessTestsAvoidedByShortConceptConstruction+ "String_Node_Str"+ propernessTestsAvoidedByTooWeakList);
  System.out.println("String_Node_Str" + conceptTestsReasoner + "String_Node_Str"+ conceptTestsTooWeakList+ "String_Node_Str"+ conceptTestsOverlyGeneralList+ "String_Node_Str"+ redundantConcepts);
}

Fixed version (ground truth):
private void printStatistics(boolean finalStats){
  long algorithmRuntime=System.nanoTime() - algorithmStartTime;
  if (!finalStats) {
    ExampleBasedNode bestNode=candidatesStable.last();
    System.out.println("String_Node_Str" + startNode.getShortDescription(nrOfPositiveExamples,nrOfNegativeExamples,baseURI));
    String bestNodeString="String_Node_Str" + bestNode.getShortDescription(nrOfPositiveExamples,nrOfNegativeExamples,baseURI);
    System.out.println(bestNodeString);
    String expandedNodeString="String_Node_Str" + candidates.last().getShortDescription(nrOfPositiveExamples,nrOfNegativeExamples,baseURI);
    System.out.println(expandedNodeString);
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(algorithmRuntime));
    System.out.println("String_Node_Str" + candidates.size());
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(rs.getSubsumptionReasoningTimeNs()));
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(rs.getInstanceCheckReasoningTimeNs()));
    System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(rs.getRetrievalReasoningTimeNs()));
  }
  if (computeBenchmarkInformation) {
    long reasoningTime=rs.getOverallReasoningTimeNs();
    double reasoningPercentage=100 * reasoningTime / (double)algorithmRuntime;
    long propWithoutReasoning=propernessCalcTimeNs - propernessCalcReasoningTimeNs;
    double propPercentage=100 * propWithoutReasoning / (double)algorithmRuntime;
    double deletionPercentage=100 * childConceptsDeletionTimeNs / (double)algorithmRuntime;
    long subTime=rs.getSubsumptionReasoningTimeNs();
    double subPercentage=100 * subTime / (double)algorithmRuntime;
    double refinementPercentage=100 * refinementCalcTimeNs / (double)algorithmRuntime;
    double redundancyCheckPercentage=100 * redundancyCheckTimeNs / (double)algorithmRuntime;
    double evaluateSetCreationTimePercentage=100 * evaluateSetCreationTimeNs / (double)algorithmRuntime;
    double improperConceptsRemovalTimePercentage=100 * improperConceptsRemovalTimeNs / (double)algorithmRuntime;
    double mComputationTimePercentage=100 * operator.mComputationTimeNs / (double)algorithmRuntime;
    double topComputationTimePercentage=100 * operator.topComputationTimeNs / (double)algorithmRuntime;
    double cleanTimePercentage=100 * ConceptTransformation.cleaningTimeNs / (double)algorithmRuntime;
    double onnfTimePercentage=100 * ConceptTransformation.onnfTimeNs / (double)algorithmRuntime;
    double shorteningTimePercentage=100 * ConceptTransformation.shorteningTimeNs / (double)algorithmRuntime;
    System.out.println("String_Node_Str" + df.format(reasoningPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(subPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(propPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(deletionPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(refinementPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(mComputationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(topComputationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(redundancyCheckPercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(evaluateSetCreationTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(improperConceptsRemovalTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(cleanTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(onnfTimePercentage) + "String_Node_Str");
    System.out.println("String_Node_Str" + df.format(shorteningTimePercentage) + "String_Node_Str");
  }
  System.out.println("String_Node_Str" + propernessTestsReasoner + "String_Node_Str"+ propernessTestsAvoidedByShortConceptConstruction+ "String_Node_Str"+ propernessTestsAvoidedByTooWeakList);
  System.out.println("String_Node_Str" + conceptTestsReasoner + "String_Node_Str"+ conceptTestsTooWeakList+ "String_Node_Str"+ conceptTestsOverlyGeneralList+ "String_Node_Str"+ redundantConcepts);
}