A Python-based simulator to explore Busy Beaver Turing machines. This project enumerates all possible Turing machines with a given number of states and symbols, simulates each one, and identifies machines that produce the maximum number of 1
s on the tape or take the longest to halt.
- Modular Design: Clean separation of concerns for scalability.
- Multiprocessing: Efficiently simulates multiple Turing machines in parallel.
- Comprehensive Reporting: Identifies and reports the most productive and longest-running halting machines.
- Extensible: Easily modify the number of states, symbols, and other configurations.
-
Clone the Repository
git clone https://github.com/yourusername/busy-beaver.git cd busy-beaver
-
Create a Virtual Environment
python3 -m venv venv source venv/bin/activate
-
Install Dependencies
pip install -r requirements.txt
Run the simulation script:
python scripts/run_simulation.py
busy-beaver/
├── README.md
├── .gitignore
├── LICENSE
├── requirements.txt
├── setup.py
├── busy_beaver/
│ ├── __init__.py
│ ├── turing_machine.py
│ ├── simulation.py
│ └── utils.py
├── tests/
│ ├── __init__.py
│ ├── test_turing_machine.py
│ └── test_simulation.py
├── scripts/
│ └── run_simulation.py
└── docs/
└── architecture.md
Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes.
This project is licensed under the MIT License.