Skip to main content

A Python library for simulating finite automata, pushdown automata, and Turing machines

Project description


Copyright 2016-2022 Caleb Evans
Released under the MIT license

tests Coverage Status

Automata is a Python 3 library which implements the structures and algorithms for finite automata, pushdown automata, and Turing machines. The library requires Python 3.7 or newer.

Huge thanks to @YtvwlD, @dengl11, @Tagl, @lewiuberg, @CamiloMartinezM, @abhinavsinha‑adrino, and @eliotwrobson for their invaluable code contributions to this project! 🎉

Migrating to v7

If you wish to migrate to Automata v7 from an older version, please follow the migration guide.


You can install the latest version of Automata via pip:

pip install automata-lib


Please refer to the official API Documentation in the docs/ directory of the GitHub repository.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

automata-lib-7.1.0.tar.gz (38.5 kB view hashes)

Uploaded source

Built Distribution

automata_lib-7.1.0-py3-none-any.whl (49.4 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page