- Notifications
You must be signed in to change notification settings - Fork71
A Python library for simulating finite automata, pushdown automata, and Turing machines
License
caleb531/automata
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Copyright 2016-2025 Caleb Evans
Released under the MIT license
Links:
Automata is a Python 3 library implementing structures and algorithms for manipulating finite automata,pushdown automata, and Turing machines. The algorithms have been optimized and are capable ofprocessing large inputs. Visualization logic has also been implemented. This package is suitable forboth researchers wishing to manipulate automata and for instructors teaching courses on theoreticalcomputer science.
The library requires Python 3.9 or newer.
Huge thanks to@eliotwrobson,@YtvwlD,@dengl11,@Tagl,@lewiuberg,@CamiloMartinezM,@abhinavsinha‑adrino,@EduardoGoulart1,@khoda81, and@christopher-hampson for their invaluable code contributions tothis project! 🎉
You can install the latest version of Automata via pip:
pip install automata-lib
To install the optional visual dependencies, use thevisual extra:
pip install'automata-lib[visual]'If you encounter errors buildingpygraphviz, you may need to installgraphviz.See the instructionshere.
Contributions are always welcome! Take a look at thecontributing guide.
About
A Python library for simulating finite automata, pushdown automata, and Turing machines
Topics
Resources
License
Code of conduct
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.