This doesn't really apply to any specific language, platform, or API, so I decided to place this question here in GD. This was a question posed to us by my CS professor from my CS computational theory class.
This is a theory question concerning Finite-State Automata or Finite-State Machines.
Image a machine that looks like such:
FSA System: Marble-Rolling Toy
A marble is dropped from either slot A or B. x1, x2, and x3 are levers that cause the marble to fall either to the left or to the right. Whenever the marble encounters a lever, it causes the lever to reverse after the marble passes, so the next marble will take the opposite branch.
My professor told us to construct a state transition diagram of FSA. This is what I constructed:
FSA state transition diagram
The part I was wondering about, did I make a mistake by putting the extra "left" and "right" labels onto the x1, x2, and x3 levers in the diagram? It is the only way I could think of doing this. Is there a way to draw a deterministic FSA transition diagram without doing that?
I could very easily do a non-deterministic FSA diagram without putting the "left" and "right" labels onto the x1, x2, and x3 levers, but he specifically asked for a deterministic diagram.
This was the only way I could think of doing it. Anyone familiar enough with FSA to confirm that?
[edit]
q1 is the beginning state.
q5 is the accepting state, and q6 is a non-accepting state.
[/edit]