26 int test_delta_delta_star(){
73 Ensemble * etat_courant = creer_ensemble( NULL, NULL, NULL );
74 ajouter_element( etat_courant, 3 );
76 deplacer_ensemble( etat_courant,
delta( automate, etat_courant,
'a' ) );
81 && est_dans_l_ensemble( etat_courant, 5 )
82 && taille_ensemble( etat_courant ) ==1
87 etat_courant,
delta_star( automate, etat_courant,
"ab" )
93 && est_dans_l_ensemble( etat_courant, 3 )
94 && taille_ensemble( etat_courant ) ==1
99 etat_courant,
delta_star( automate, etat_courant,
"ac" )
105 && est_dans_l_ensemble( etat_courant, 6 )
106 && taille_ensemble( etat_courant ) ==1
111 etat_courant,
delta_star( automate, etat_courant,
"" )
117 && est_dans_l_ensemble( etat_courant, 6 )
118 && taille_ensemble( etat_courant ) ==1
123 etat_courant,
delta_star( automate, etat_courant,
"c" )
129 && taille_ensemble( etat_courant ) == 0
133 liberer_ensemble( etat_courant );
142 if( ! test_delta_delta_star() ){
return 1; }
void liberer_automate(Automate *automate)
Détruit un automate.
int est_une_transition_de_l_automate(const Automate *automate, int origine, char lettre, int fin)
Renvoie 1 si ('origine', 'lettre', 'fin') est une transition de l'automate et 0 sinon.
Ensemble * delta_star(const Automate *automate, const Ensemble *etats_courants, const char *mot)
Renvoie l'ensemble des états accessibles à partir d'un ensemble d'états donné en paramètre et en lisa...
Ensemble * delta(const Automate *automate, const Ensemble *etats_courants, char lettre)
Renvoie l'ensemble des états accéssibles à partir d'un ensemble d'états donné en paramètre et en lisa...
int est_un_etat_initial_de_l_automate(const Automate *automate, int etat)
Renvoie 1 si ('etat') est un état initial de l'automate et 0 sinon.
int est_une_lettre_de_l_automate(const Automate *automate, char lettre)
Renvoie 1 si ('etat') est une lettre de l'automate et 0 sinon.
int est_un_etat_de_l_automate(const Automate *automate, int etat)
Renvoie 1 si ('etat') est un état de l'automate et 0 sinon.
void ajouter_etat(Automate *automate, int etat)
Ajoute un état à un automate passé en paramètre.
void ajouter_transition(Automate *automate, int origine, char lettre, int fin)
Ajoute une transition à l'automate passé en paramètre.
int est_un_etat_final_de_l_automate(const Automate *automate, int etat)
Renvoie 1 si ('etat') est un état final initial de l'automate et 0 sinon.
Automate * creer_automate()
Crée un automate vide, sans états, sans lettres et sans transitions.
void ajouter_etat_final(Automate *automate, int etat_final)
Ajoute un état final à un automate passé en paramètre.
void ajouter_etat_initial(Automate *automate, int etat_initial)
Ajoute un état initial à un automate passé en paramètre.