Projeto desenvolvido em Python, utilizando a biblioteca Tkinter, com o objetivo de aplicar conceitos de Teoria da Computação por meio da implementação de operações entre autômatos finitos.
O sistema permite o upload de arquivos contendo autômatos e realiza diferentes operações formais sobre eles, conforme a escolha do usuário.
Criar uma aplicação com interface gráfica capaz de:
- Receber um ou dois autômatos por upload de arquivo
- Aplicar operações da Teoria da Computação
- Exibir o resultado do autômato gerado após a operação escolhida
O projeto foi desenvolvido em grupo, com participação de 6 grupos no total, cada um responsável por operações específicas.
- Python
- Tkinter (interface gráfica)
- Manipulação de arquivos
- Teoria da Computação
- Autômatos Finitos (AFD e AFN)
A aplicação permite selecionar a operação desejada e, conforme o caso, realizar o upload de um ou dois autômatos.
- Intersecção
- União
- Diferença
- Concatenação
- Reverso
- Homomorfismo
- Complemento
- AFD Minimizado
- Conversão de AFN para AFD Equivalente
A interface foi desenvolvida com Tkinter e permite:
- Selecionar arquivos de entrada por meio de janela de upload
- Escolher a operação desejada
- Executar a operação e visualizar o resultado gerado
- Python 3.x instalado
- Biblioteca Tkinter (já inclusa na instalação padrão do Python)
Em algumas distribuições Linux, pode ser necessário instalar o Tkinter manualmente:
sudo apt install python3-tk
python main.py