In automata theory books, I always studied examples where a state transition from A to B occurs due to a single event $e$ (say, receiving a particular character). Is it theoretically possible that a transition could be triggered by a set of events, such as receiving any one of some set of characters?
-
1You can define such automata, sure. Have a look at tree automata, for instance. Btw, if you want to talk about "events" you may want to phrase your queries in terms of "transition systems". – Raphael May 28 '15 at 18:48
2 Answers
Technically, a transition has to be an atomic event (in the context of formal languages, the reading of a symbol). That said, there are two situations in which you could imagine something different:
1) You could use a set of symbols as an abbreviation of multiple alternative transitions from one state to the other, or a string of symbols as an abbreviation of a sequence of transitions that happen one after the other. In fact, a number of different abbreviations are commonly used when dealing with finite automata on practical situations.
2) You could have a language whose symbols have an internal structure (for instance, they are encodings of sets). Of course, this internal structure should be transparent to the formal treatment of the language.
As with any alternative representation of a formal expression, these variations should be used when their understanding is clear, from definition, or context.

- 3,276
- 1
- 14
- 30
Yes, it's perfectly possible to have a transition triggered by a set of events. There's no real difference between saying that the automaton moves from state $A$ to state $B$ when it receives one of the characters $\{x,y,z\}$ and saying that it moves from $A$ to $B$ when it receives $x$, and it moves from $A$ to $B$ when it receives $y$ and it moves from $A$ to $B$ when it receives $z$.
Indeed, the state removal method converting a DFA to a regular expression involves as intermediate stages, objects that are essentially DFAs but where the transitions are triggered by any string that matches a particular regular expression. (Could somebody remind me what such automata are called?)

- 81,689
- 26
- 141
- 235