code: public static <I> CompactDFA<I> minimize(DFA<?, I> dfa, Alphabet<I> alphabet) {
          return HopcroftMinimization.minimizeDFA(dfa, alphabet);
      }
docs: Minimizes the given DFA over the given alphabet. This method does not modify the given DFA, but returns the
  minimized version as a new instance.
  <p>
  <b>Note:</b> the DFA must be completely specified.
  
  @param dfa
  the DFA to be minimized
  @param alphabet
  the input alphabet to consider for minimization (this will also be the input alphabet of the resulting
  automaton)
  
  @return a minimized version of the specified DFA