code: public static <S, I> Word<I> findSeparatingWord(UniversalDeterministicAutomaton<S, I, ?, ?, ?> automaton,
                                                      S state1,
                                                      S state2,
                                                      Collection<? extends I> inputs) {
          return NearLinearEquivalenceTest.findSeparatingWord(automaton, state1, state2, inputs);
      }
docs: Finds a separating word for two states in an automaton. A separating word is a word that exposes a difference
  (differing state or transition properties, or a transition undefined in only one of the paths) between the two
  states.
  
  @param <S>
  state type
  @param <I>
  input symbol type
  @param automaton
  the automaton containing the states
  @param state1
  the one state
  @param state2
  the other state
  @param inputs
  the input symbols to consider
  
  @return a separating word, or {@code null} if no such word could be found