diff --git a/1-ComputationAndData/6ComputationAndData.md b/1-ComputationAndData/6ComputationAndData.md index 6e4aa3e..0403281 100644 --- a/1-ComputationAndData/6ComputationAndData.md +++ b/1-ComputationAndData/6ComputationAndData.md @@ -66,4 +66,21 @@ Correction. ## Équivalence. +Méthode pour tester si deux automates sont équivalents (acceptent et rejettent exactement les mêmes mots). + + +Provisio : il faut que la machine soit déterministe (hypothèse nécessaire pour la preuve) et complète (hypothèse simplificatrice pour la preuve). + +* On regarde tous les mots jusqu'à une taille qui est le produit du nombre d'état des automates. +* Il faut que les deux automates disent la même chose (accepter ou rejeter) sinon on a trouvé un contre-exemple et on répond non, ils ne sont pas équivalents. +* Si c'est le cas on répond oui, ils sont équivalents. + +La méthode de la machine bi-coeur (similarité avec la construction précédente de déterminisation) permet de démontrer que cette méthode fonctionne et donner soit un contre-exemple, soit une preuve que les deux machines sont équivalentes. + +L'idée consiste à simuler de manière synchrone les deux automates en parallèle. +La machine bi-coeur a une paire d'état au début correspondant à la paire des états initiaux. +Il faut que à chaque étape de construction de son programme, les deux coeurs disent la même chose. + +Détails dans transparents. +