Program: 9423
Project: 9423
Buggy source:
private void computeApp(OWLClassExpression domain){
  SortedSet<OWLIndividual> individuals1=reasoner.getIndividuals(domain);
  Set<OWLObjectProperty> mostGeneral=reasoner.getObjectProperties();
  Set<OWLObjectProperty> applicableRoles=new TreeSet<OWLObjectProperty>();
  for (  OWLObjectProperty role : mostGeneral) {
    OWLClassExpression d=opDomains.get(role);
    Set<OWLIndividual> individuals2=new HashSet<OWLIndividual>();
    for (    Entry<OWLIndividual,SortedSet<OWLIndividual>> entry : reasoner.getPropertyMembers(role).entrySet()) {
      OWLIndividual ind=entry.getKey();
      if (!entry.getValue().isEmpty()) {
        individuals2.add(ind);
      }
    }
    boolean disjoint=Sets.intersection(individuals1,individuals2).isEmpty();
    if (!disjoint) {
      applicableRoles.add(role);
    }
  }
  appOP.put(domain,applicableRoles);
  Set<OWLDataProperty> mostGeneralBDPs=reasoner.getBooleanDatatypeProperties();
  Set<OWLDataProperty> applicableBDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralBDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableBDPs.add(role);
  }
  appBD.put(domain,applicableBDPs);
  Set<OWLDataProperty> mostGeneralNumericDPs=reasoner.getNumericDataProperties();
  Set<OWLDataProperty> applicableNumericDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralNumericDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableNumericDPs.add(role);
  }
  Set<OWLDataProperty> mostGeneralSDPs=reasoner.getStringDatatypeProperties();
  Set<OWLDataProperty> applicableSDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralSDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableSDPs.add(role);
  }
  appSD.put(domain,applicableSDPs);
}

Fixed version (ground truth):
private void computeApp(OWLClassExpression domain){
  SortedSet<OWLIndividual> individuals1=reasoner.getIndividuals(domain);
  Set<OWLObjectProperty> mostGeneral=reasoner.getObjectProperties();
  Set<OWLObjectProperty> applicableRoles=new TreeSet<OWLObjectProperty>();
  for (  OWLObjectProperty role : mostGeneral) {
    OWLClassExpression d=opDomains.get(role);
    Set<OWLIndividual> individuals2=new HashSet<OWLIndividual>();
    for (    Entry<OWLIndividual,SortedSet<OWLIndividual>> entry : reasoner.getPropertyMembers(role).entrySet()) {
      OWLIndividual ind=entry.getKey();
      if (!entry.getValue().isEmpty()) {
        individuals2.add(ind);
      }
    }
    boolean disjoint=Sets.intersection(individuals1,individuals2).isEmpty();
    if (!disjoint) {
      applicableRoles.add(role);
    }
  }
  appOP.put(domain,applicableRoles);
  Set<OWLDataProperty> mostGeneralBDPs=reasoner.getBooleanDatatypeProperties();
  Set<OWLDataProperty> applicableBDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralBDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableBDPs.add(role);
  }
  appBD.put(domain,applicableBDPs);
  Set<OWLDataProperty> mostGeneralNumericDPs=reasoner.getNumericDataProperties();
  Set<OWLDataProperty> applicableNumericDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralNumericDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableNumericDPs.add(role);
  }
  appNumeric.put(domain,applicableNumericDPs);
  Set<OWLDataProperty> mostGeneralSDPs=reasoner.getStringDatatypeProperties();
  Set<OWLDataProperty> applicableSDPs=new TreeSet<OWLDataProperty>();
  for (  OWLDataProperty role : mostGeneralSDPs) {
    OWLClassExpression d=dpDomains.get(role);
    if (!isDisjoint(domain,d))     applicableSDPs.add(role);
  }
  appSD.put(domain,applicableSDPs);
}