public static Automaton union(Automaton a1,Automaton a2){
  return union(Arrays.asList(a1,a2));
}

public static Automaton union ( Automaton a1 , Automaton a2 ) { return union ( Arrays . asList ( a1 , a2 ) ) ; }
returns an automaton that accepts the union of the languages of the given automata . < p > complexity : linear in number of states .
