improved Automaton.intersect(Automaton) method