Theory of Computing Toolkit
Project description
Tock
Tock stands for Theory Of Computing toolKit. It can simulate the automata taught in standard theory of computation courses (deterministic and nondeterministic finite automata, pushdown automata, and Turing machines). It also allows multiple cells, stacks, or tapes.
Installation
Tock depends on the following:
- Python 2.7 or 3.x (required)
- six (required)
- GraphViz (to draw graphs)
- Jupyter (to view notebooks)
- openpyxl (to open Excel files)
Steps:
-
Run
pip install tock
. -
Install Jupyter by running
pip install jupyter
(orconda install jupyter
if you use Anaconda). -
Install GraphViz. But if you don't have it, Tock will attempt to download and use Viz.js, which is slower but otherwise identical.
Documentation
The documentation is contained in a series of Jupyter notebooks:
- Introduction
- Deterministic finite automata
- Nondeterministic finite automata
- Regular expressions
- Pushdown automata
- Context free grammars
- Turing machines
To open them, run jupyter notebook
in the Tock directory. A web
browser should open, showing you the contents of the directory. Click on
doc
and then one of the .ipynb
files to view it.
Copying
This is open-source software under the MIT License. See LICENSE.txt
for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.