code: public void intersectWith(T e) {
  		
  		if (elements == null) // we have top, the intersection is sub
  			elements = new HashSet<>(dag.getSubRepresentatives(e)); // copy the set
  		else
  			elements.retainAll(dag.getSubRepresentatives(e));			
  	}
docs: modifies the intersection by further intersecting it with a class / property
  
  IMPORTANT: the class / property is given by the DOWNWRD-SATURATED SET
  (in other words, by the result of EquivalencesDAG.getSubRepresentatives
  
  @param e a non-empty downward saturated set for class / property