code: public static <S, I, A extends DFA<S, I> & InputAlphabetHolder<I>> CompactDFA<I> minimizeDFA(A dfa) {
          return minimizeDFA(dfa, PruningMode.PRUNE_AFTER);
      }
docs: Minimizes the given DFA. The result is returned in the form of a {@link CompactDFA}, using the input alphabet
  obtained via <code>dfa.{@link InputAlphabetHolder#getInputAlphabet() getInputAlphabet()}</code>. Pruning (see
  above) is performed after computing state equivalences.
  
  @param dfa
  the DFA to minimize
  
  @return a minimized version of the specified DFA