I'm attepting to model a process flow where the transition to the next state is occasionally based on not only the input to the current state, but a prior state as well.
Below is an example graph descibring the process. The essence is: If both State Q1 and State Q3 recieve an input of one, after State 3, transition to State Q4, otherwise transition to State Q5.
I understand that it would be possible to model this using a finite-state machine where we duplicate any states between those that we are interested in. The example below demonstrates this with States Q2a and Q2b corresponding to the differences in input at state Q1
However, as the number of conditions and the gaps between them grows (both of which are possible in the process I'm looking at), the number of states grows exponentially.
The question is, what other computational models could be used to describe a process where an arbitrary number of inputs could be used to control transition between states?