> [!abstract] A model with a predefined set of possible states, which will be aware of current state when processing inputs
A state machine is **a behavior model**. It consists of a finite number of states and is therefore also called finite-state machine (FSM). Based on the current state and a given input the machine performs state transitions and produces outputs.
## Notes
- The machine can reject/ignore input if the current state does not allow the input
- The power of the state machine is the ability to [[Encapsulation|encapsulate]] logic
- A state machine is a decision machine, its primary propose is to make choices
- The state machine applies [Sequential logic](https://en.wikipedia.org/wiki/Sequential_logic) (the output depends on the present value of its input signals and on the sequence of past inputs)
## Sources
https://www.itemis.com/en/products/itemis-create/documentation/user-guide/overview_what_are_state_machines
https://en.wikipedia.org/wiki/Finite-state_machine