Program: 108102
Project: 108102
Buggy source:
/** 
 * Constructor.
 * @param lattice
 * @param solutions
 * @param transformation
 * @param headermap
 */
private ARXNode(final ARXLattice lattice,final SolutionSpace solutions,final Transformation transformation,final Map<String,Integer> headermap){
  this.lattice=lattice;
  this.headermap=headermap;
  this.transformation=transformation.getGeneralization();
  this.minInformationLoss=transformation.getInformationLoss();
  this.maxInformationLoss=transformation.getInformationLoss();
  this.lowerBound=transformation.getLowerBound();
  this.checked=transformation.hasProperty(solutions.getPropertyChecked());
  if (transformation.hasProperty(solutions.getPropertyChecked())) {
    if (transformation.hasProperty(solutions.getPropertyAnonymous())) {
      this.anonymity=Anonymity.ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotAnonymous())) {
      this.anonymity=Anonymity.NOT_ANONYMOUS;
    }
 else {
      if (!complete) {
        this.anonymity=Anonymity.UNKNOWN;
        this.maxInformationLoss=metric.createMaxInformationLoss();
        this.minInformationLoss=metric.createMinInformationLoss();
      }
 else {
        throw new IllegalStateException("String_Node_Str");
      }
    }
  }
 else {
    if (transformation.hasProperty(solutions.getPropertyAnonymous())) {
      this.anonymity=uncertainty ? Anonymity.PROBABLY_ANONYMOUS : Anonymity.ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotAnonymous())) {
      this.anonymity=uncertainty ? Anonymity.PROBABLY_NOT_ANONYMOUS : Anonymity.NOT_ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotKAnonymous())) {
      this.anonymity=Anonymity.NOT_ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyInsufficientUtility())) {
      this.anonymity=Anonymity.UNKNOWN;
    }
 else {
      if (!complete) {
        this.anonymity=Anonymity.UNKNOWN;
        this.maxInformationLoss=metric.createMaxInformationLoss();
        this.minInformationLoss=metric.createMinInformationLoss();
      }
 else {
        throw new IllegalStateException("String_Node_Str");
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Constructor.
 * @param lattice
 * @param solutions
 * @param transformation
 * @param headermap
 */
private ARXNode(final ARXLattice lattice,final SolutionSpace solutions,final Transformation transformation,final Map<String,Integer> headermap){
  this.lattice=lattice;
  this.headermap=headermap;
  this.transformation=transformation.getGeneralization();
  this.minInformationLoss=transformation.getInformationLoss();
  this.maxInformationLoss=transformation.getInformationLoss();
  this.lowerBound=transformation.getLowerBound();
  this.checked=transformation.hasProperty(solutions.getPropertyChecked());
  if (transformation.hasProperty(solutions.getPropertyChecked())) {
    if (transformation.hasProperty(solutions.getPropertyAnonymous())) {
      this.anonymity=Anonymity.ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotAnonymous())) {
      this.anonymity=Anonymity.NOT_ANONYMOUS;
    }
 else {
      if (!complete) {
        this.anonymity=Anonymity.UNKNOWN;
      }
 else {
        throw new IllegalStateException("String_Node_Str");
      }
    }
  }
 else {
    if (transformation.hasProperty(solutions.getPropertyAnonymous())) {
      this.anonymity=uncertainty ? Anonymity.PROBABLY_ANONYMOUS : Anonymity.ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotAnonymous())) {
      this.anonymity=uncertainty ? Anonymity.PROBABLY_NOT_ANONYMOUS : Anonymity.NOT_ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyNotKAnonymous())) {
      this.anonymity=Anonymity.NOT_ANONYMOUS;
    }
 else     if (transformation.hasProperty(solutions.getPropertyInsufficientUtility())) {
      this.anonymity=Anonymity.UNKNOWN;
    }
 else {
      if (!complete) {
        this.anonymity=Anonymity.UNKNOWN;
      }
 else {
        throw new IllegalStateException("String_Node_Str");
      }
    }
  }
  if (!complete) {
    if (this.maxInformationLoss == null) {
      this.maxInformationLoss=metric.createMaxInformationLoss();
    }
    if (this.minInformationLoss == null) {
      this.minInformationLoss=metric.createMinInformationLoss();
    }
  }
}