public static void equateCollections(Proposition prop, Collection col1, Collection col2) {
    if (col1.orderedP() &&
        col2.orderedP()) {
      { Stella_Object i1 = null;
        Iterator iter000 = ((Iterator)(col1.allocateIterator()));
        Stella_Object i2 = null;
        Iterator iter001 = ((Iterator)(col2.allocateIterator()));

        while (iter000.nextP() &&
            iter001.nextP()) {
          i1 = iter000.value;
          i2 = iter001.value;
          Proposition.equateValues(prop, i1, i2);
        }
      }
      return;
    }
    if (col1.noDuplicatesP() &&
        col2.noDuplicatesP()) {
      Proposition.constrainAsSubset(prop, col1, col2);
      Proposition.constrainAsSubset(prop, col2, col1);
    }
  }