code: public boolean isUnifiableWith(SyntacticCategory other) {
      Map<Integer, String> myAssignedVariables = Maps.newHashMap();
      Map<Integer, String> otherAssignedVariables = Maps.newHashMap();
      Map<Integer, Integer> variableRelabeling = Maps.newHashMap();
  
      // System.err.println("unifying: " + this + " " + other);
      return isUnifiableWith(other, myAssignedVariables, otherAssignedVariables, variableRelabeling); 
    }
docs: Returns {@code true} if this category is unifiable with
  {@code other}. Two categories are unifiable if there exist
  assignments to the feature variables of each category which make
  both categories equal.
  
  @param other
  @return