{"id":26341051,"url":"https://github.com/nrobledosagredo/turing-machine-simulator","last_synced_at":"2025-03-16T04:28:37.551Z","repository":{"id":263213790,"uuid":"889676664","full_name":"nrobledosagredo/turing-machine-simulator","owner":"nrobledosagredo","description":"A Turing machine simulator based on automata theory, allowing users to define transitions, states, and evaluate words to determine their membership in a language.","archived":false,"fork":false,"pushed_at":"2025-03-05T20:17:59.000Z","size":16973,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T04:28:33.183Z","etag":null,"topics":["automata-theory","turing-machine"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nrobledosagredo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-16T23:35:07.000Z","updated_at":"2025-03-05T20:52:13.000Z","dependencies_parsed_at":"2024-11-17T02:40:17.321Z","dependency_job_id":"0338aa19-d1f4-4a2e-a096-4f515cd877b1","html_url":"https://github.com/nrobledosagredo/turing-machine-simulator","commit_stats":null,"previous_names":["nrobledosagredo/simulador-turing","nrobledosagredo/turing-machine-simulator"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nrobledosagredo%2Fturing-machine-simulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nrobledosagredo%2Fturing-machine-simulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nrobledosagredo%2Fturing-machine-simulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nrobledosagredo%2Fturing-machine-simulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nrobledosagredo","download_url":"https://codeload.github.com/nrobledosagredo/turing-machine-simulator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243826809,"owners_count":20354220,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automata-theory","turing-machine"],"created_at":"2025-03-16T04:28:35.997Z","updated_at":"2025-03-16T04:28:37.538Z","avatar_url":"https://github.com/nrobledosagredo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Turing machine simulator\r\n\r\n![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge\u0026logo=python\u0026logoColor=ffdd54)\r\n![Jupyter Notebook](https://img.shields.io/badge/jupyter-%23FA0F00.svg?style=for-the-badge\u0026logo=jupyter\u0026logoColor=white)\r\n\r\n## Overview\r\n\r\nAn interactive Turing machine simulator based on automata theory, created as part of a learning course. \r\n\r\nIt evaluates words based on a set of transitions defined by the user to determine their membership in a language.\r\n\r\n## Features\r\n\r\n* Allows configuring initial and final states.\r\n* Supports transitions in the format `d(q,x) = (p,Y,L)`:\r\n    * `q`: current state\r\n    * `x`: current symbol on the tape\r\n    * `p`: new state\r\n    * `Y`: symbol to be written\r\n    * `L`: head movement (`I` for left, `D` for right)\r\n* Verifies if words belong to the defined language.\r\n\r\n## Prerequisites\r\n\r\n* **Operating System:** Windows (for executable versions).\r\n* **Python:** Version 3.x (for script execution).\r\n* **Jupyter Notebook:** To open and run the notebook file.\r\n\r\n## Setup\r\n\r\n* **GUI:** Run `turing-machine-gui.exe`. Source code is in `turing-machine-gui.py`.\r\n* **CLI:** Run `turing-machine-cli.exe`. Source code is in `turing-machine-cli.py`.\r\n* **Notebook:** Open `turing-machine-simulator.ipynb` and execute the code blocks.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnrobledosagredo%2Fturing-machine-simulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnrobledosagredo%2Fturing-machine-simulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnrobledosagredo%2Fturing-machine-simulator/lists"}