M .task/taskchampion.sqlite3 A "Zettelkasten/Permanent Notes/20251223161108-andre-platzer.md" A "Zettelkasten/Permanent Notes/20251223162450-web-of-science.md" A "Zettelkasten/Permanent Notes/20251223162954-snowballing.md" A "Zettelkasten/Permanent Notes/20251223163648-deterministic-parity-automata.md" A "Zettelkasten/Permanent Notes/20251223165340-mealy-machines.md" A "Zettelkasten/Permanent Notes/20251223170627-finite-state-machines.md" A "Zettelkasten/Permanent Notes/20251223171835-moore-machines.md"
1.6 KiB
| id | title | type | created | modified | tags |
|---|---|---|---|---|---|
| 20251223170627 | Finite State Machines | permanent | 2025-12-23T22:06:27Z | 2025-12-23T22:39:00Z |
Finite State Machines
Finite State Machines are a computer science term for machines that have a finite number of states, with clearly defined transitions between them. Sometimes, FSM are referred to simply as state machines.
FSM are an abstraction of a computational system. FSM are heavily used in systems that have clearly defined discrete states. Examples include traffic lights, elevators, combination locks, or others.
FSM have actions. Actions are the unabstractified version of whatever the execution is. For physical systems, it might be something like turning a motor on.
FSM can be categorized into two main categories:
Acceptors (or 'detectors' or 'recognizers') Acceptors are
a type of FSM that produce binary output, recognizing whether or not a given input is accepted. Examples of systems that are acceptors include things like ready-commit systems, or a password checker. These systems have an input, and reach a state that determines the input is acceptable, or incorrect.
Transducers
Transducers are a set of finite state machines that produce an output based on input or state using actions. Actions in this case represent a transition between state that also has some external change. A finite state machine of an elevator would have actions of the elevator changing between floors, for example.
Transducers with respect to control have two different types: mealy-machines -- these have output depend on state and input moore-machines -- these have output depend on state ONLY