# Finite State Machine

> Model behavior as a finite set of states with explicit legal transitions, so illegal state combinations are unrepresentable.

Record: `algo:finite-state-machine`
Kind: architecture
Canonical: https://banes-lab.com/ontology/algorithms#algo-finite-state-machine
Closure: https://banes-lab.com/json/records/algo/finite-state-machine/closure

## principle

- [Finite State Machine](https://banes-lab.com/records/arch/finite-state-machine.md)

## composes

- [State Pattern](https://banes-lab.com/records/algo/state-pattern.md)
- [Structural Core](https://banes-lab.com/records/algo/structural-core.md)

## composed-by

- [Statecharts](https://banes-lab.com/records/algo/statecharts.md)
