finite-automaton
Afinite-state machine (FSM),finite-state automaton (FSA), or simplystate machine is a mathematicalmodel of computation and anabstract machine that can be in exactly one of a finite number of states at any given time.
The FSM can change from one state to another in response to some inputs; the change from one state to another is called atransition.
An FSM is defined by a list of its states, its initial state, and the inputs that trigger each transition.
In computer science, FSM are widely used in modeling of application behavior (control theory), design ofhardware digital systems,software engineering,compilers,network protocols, andcomputational linguistics.
Here are 19 public repositories matching this topic...
Language:All
Sort:Most stars
Finite-State Machine (FSM) for Arduino
- Updated
Sep 30, 2023 - C++
A C++ library for simulating automata and Turing machines
- Updated
Jun 14, 2023 - C++
Python implementation of a Deterministic Finite Automaton (DFA) with interactive testing. Verify input string acceptance and explore language processing concepts
- Updated
Jan 2, 2024 - Python
Formal Languages and Compiler Design 1. RE to FA 2. NFA to DFA 3. CFG to CNF
- Updated
Nov 5, 2021 - TypeScript
Pure-Python library for building and working with nondeterministic finite automata (NFAs).
- Updated
Aug 4, 2022 - Python
A teaching aid for concepts and algorithms in logic
- Updated
Jun 8, 2024 - Java
State machines for Laravel with Enums
- Updated
Apr 25, 2025 - PHP
A library and web app for simulating finite automatas (DFA, NFA, and ε-NFA) and regular expressions.
- Updated
Sep 20, 2025 - TypeScript
A regular grammar and finite automaton evaluator
- Updated
Jul 2, 2020 - Kotlin
This project includes classes and methods that are built to perform various operations on FAs.(Final project for Fundamentals of Computational Theory)
- Updated
Feb 13, 2023 - Python
Implementation of a Finite Automaton Comparator in C++. The input finite automaton can be deterministic or non-deterministic.
- Updated
Dec 30, 2017 - C++
Finite Automaton
- Updated
May 12, 2022 - JavaScript
A Non-deterministic Finite Automaton (NFA) based Regular Expression Engine implemented in Scala. Supports basic regex operations, dot operator, and visualization using GraphViz.
- Updated
Feb 3, 2025 - Scala
Finite automaton algorithms and turing machine
- Updated
Oct 25, 2021 - Python
Samples of algorithms to verify strings / words using finite machines.
- Updated
Jan 12, 2022 - Java
Interactive website for simulating variants of finite automata, Turing machines with 2D tapes, and k-queue automata
- Updated
Jan 26, 2023 - JavaScript
- Followers
- 27 followers
- Website
- github.com/topics/finite-state-machine
- Wikipedia
- Wikipedia