Environnement de travail : Programmation Java sous Eclipse
Description de projet:
L'objectif de ce travail consiste à développer une application pour manipuler les automates. Cette application sert à développer un éditeur graphique ou encore une application au mode console avec les fonctionnalités décrites en-dessous.
Les fonctionnalités:
Les fonctionnalités de base
• Créer/Importer une automate
• Enregistrer sous forme .txt
• Vérifier si un mot saisi par l'utilisateur appartient au langage défini par l'automate ou non.
Les fonctionnalités Avancées
• Verifier est ce que un automate fini est déterministe (AFD)
• Transformer un AFND (AFI) vers un AFD
Mise en œuvre sur un automate:
On propose d’utiliser plusieurs classes pour implémenter les automates à savoir :
• Etat qui décrit un état complètement, c’est-à-dire s’il est initial ou terminal ainsi que la liste des transitions dont il est la source ;
• Transition qui décrit une transition (déterministe) c’est-à-dire sur quelle lettre et vers quel état la transition se fait ;
• Automate qui décrit l’automate proprement dit, c’est-à-dire le tableau de tous les états.
• Graphe qui décrit le graphe corresponde à une automate donnée, c’est-à-dire tous les éléments graphiques (arcs, cercles..).