Obsidian/Zettelkasten/Permanent Notes/20251223170627-finite-state-machines.md
Dane Sabo 6f32f89836 Auto sync: 2025-12-23 17:40:07 (8 files changed)
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"
2025-12-23 17:40:07 -05:00

50 lines
1.6 KiB
Markdown

---
id: 20251223170627
title: Finite State Machines
type: permanent
created: 2025-12-23T22:06:27Z
modified: 2025-12-23T22:39:00Z
tags: []
---
# 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