This is my homework for the theory of computation class @fmi-unibuc.
This library implements and tests the following:
- an input validator that checks if a given configuration file is valid or not
- a program that loads and then generates a DFA based on an input file and checks if it accepts a given string
- a program that creates a NFA and converts it to a DFA
- a program that loads and validates a CFG configuration file
-
a program that creates a PDA and converts it to a CFG
Ensure you have the following installed:
- Python 3.9, 3.10, 3.11 or 3.12
pip
, the Python package installer
-
Clone the Repository
https://github.com/sirbuig/theory-of-computation.git cd theory-of-computation
-
Create and activate a virtual environment
python3 -m venv .venv source .venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
From the root of the folder run pytest
.