Finite State Machine
A finite state machine describes system behavior with finite states and transitions, moving between states driven by events; used for protocol parsing and UI state.
Purpose
Model discrete-state systems and simplify complex state logic.
Mechanism
Five-tuple (Q, Σ, δ, q0, F): state set, input alphabet, transition function, initial state, accepting states. A DFA makes one deterministic transition per input; an NFA may make several. Mealy/Moore differ in when output is produced. The XState library implements FSMs.
Use cases
- State management
- Protocol implementation
- Regex engines