Automate asynchrone.

Slides:



Advertisements
Présentations similaires
La recherche de chemin optimal
Advertisements

Cours Relatio Module 1 : De quoi sagit-il ? Objectifs, sources et méthodes de lAR Définitions dune relation et terminologie de lAR.
Algorithmes et structures de données avancés
Références à une cellule dans EXCEL
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée Listes chaînées II §15.1 – 15.2.
24 septembre 2007Cours de compilation 4 - Intranet1 Cours de compilation Techniques danalyse descendantes.
Modélisation par le concept de graphe
LES GRAPHES.
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
Tableur.
Cliques & Bicliques Maximales
Chap 1 Grammaires et dérivations.
Nicolas Bourbaki.
Expressions rationnelles
Chapitre 1 Automates finis
ALGORTHME DE COMPOSITION INTRODUCTION PRINCIPES DE BASE LES ETAPES CONCLUSION.
Activité sur l’inégalité triangulaire.
Apprendre à se servir d’un tableur
Formation PAF L’AUTOMATISME EN COLLEGE E.FONTENIAUD.
Construction du graphe de Spehner.. Différentes étapes 1) Alphabet. 2) Langage. 3) Création des sommets du graphe de Spehner. 4) Ajout des différents.
Automates et systèmes de transitions
(graphe fonctionnel de commande des étapes et transitions)
Passer à la première page Le logiciel : 1er dossier n Création de dossier u Taper le nom du patient ici.
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Analyse lexicale Généralités Expressions rationnelles Automates finis
Transformations Montage préparé par : S André Ross
IFT451 Introduction aux langages formels Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift313.
Programmation linéaire
Démonstration : Les médiatrices d’un triangle sont concourantes.
Nature, numération, code
Programmation logique Démonstrateur automatique
Décrire une isométrie par Jacqueline Larouche, 2007 modifié par JiPi.
FICHE METHODOLOGIQUE DE LA DISSERTATION
1.3 COORDONNÉES DES POINTS
Le Guide d ’Etude des Modes de Marche et Arrêts.
IFT313 Introduction aux langages formels
IFT313Froduald Kabanza1 IFT 313 Lab 1 1Écrivez une expression régulière pour chacun des langues suivants: a)Des mots sur lalphabet {a,b,c} telle que toute.
IFT Complexité et NP-complétude
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
Chapitre 7: Le théorème de Kleene
Hiver 2003SEG2501 analyse lexicale1 Notes supplémentaires au sujet de lanalyse lexicale Exemples Dérivation dun NFA qui accepte le même langage (algorithme:
1.1 LES VECTEURS GÉOMÉTRIQUES
Algorithmes d ’approximation
Optimisation linéaire
Applications des langages hors-contextes Les analyseurs syntactiques ascendants GNU Yacc et Bison.
Partie II Sémantique.
Excel (Partie 2).
Why You Ought To Use Formal Methods: a 3-Pages 11-Slides Illustration Eric Jaeger, UPMC / LIP6 Réunion SSURF du 5 avril 2007.
Rappel Modèle analyse-synthèse de la compilation
Références à une cellule dans EXCEL
8INF8061 Conception et analyse des algorithmes Comment comparer deux problèmes?
Le GRAFCET GRAphe Fonctionnel de Commande par Etapes et Transitions
Programmation linéaire en nombres entiers : les méthodes de troncature
Carrière A - Classification Résultats 9 ème vague de maintenance SPF P&O Politique de Carrière et de Rémunération 5 septembre 2012.
Démonstration : Les médiatrices d’un triangle sont concourantes.
La Logique du premier ordre LPO
Pour trois points non alignés A, B et C, on a les inégalités
Université Lyon 2 - TICE 3 séance 071 TICE 3 – Séance 7 Roland Veillard, Ny Haingo Andrianarisoa Traitement des.
Programmation linéaire en nombres entiers
Modèles d’entrelacement
Recherche par automates finis
Les transducteurs En anglais transducers.
Abdelkader Heni FUNDP Syntaxe et sémantique Abdelkader Heni FUNDP
Chap 1 Grammaires et dérivations.
Algorithme de DIJKSTRA
Chap. 3 Récursion et induction. Les définitions par récurrence consistent à construire des objets finis, à partir d'autres, selon certaines règles. Les.
A. Lebrun. Théorème de Shannon Soit F une fonction logique de n variables xn F(x1,..,xi, xn)=xi.f(x1,…,1, xn)+xi.g (x1,…,0,,xn) F(x1,..,xi, xn)=(xi+g(x1,…,0,
CHANGEMENT DE VARIABLE
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
Transcription de la présentation:

Automate asynchrone

Souvenons-nous que jusqu’à ce point nous avons évité le mot vide. Un automate fini dans lequel certaines flèches sont étiquetées par le mot vide (« -transitions ») s’appelle automate asynchrone. Ensemble des flèches vérifie donc E  Q × (A) × Q. Proposition : Pour tout automate asynchrone, il existe un automate fini ordinaire (c.à.d. sans -transitions) qui reconnaît le même langage. Comme tout automate non déterministe est équivalent à un automate déterministe, il en suit que tout automate asynchrone est équivalent à un automate déterministe. Il existe un algorithme de suppressions de -transitions.

par définition on a (p.a.q) F s’il existe un chemin    a    Pour un automate asynchrone C = (Q, I, T, E) avec E Q × (A) × Q nous allons construire un automate B=(Q, I, T, F) qui ne diffère de C que par l’ensemble de ses flèches et ce, suivant une règle bien déterminée : par définition on a (p.a.q) F s’il existe un chemin    a    c : p0  p1  …  pn  q0  q1 … qm et p0 = p, qm = q   a   p0 p1 pn q0 q1 qm

1 2 3 1 2 3 Ex. a) Prenons un automate asynchrone : A1 a b  c Ici , suivant le raisonnement précédent, il existent les chemins : 1a1, 1a2, 1b2, 1c3, 2b2 et 2c3. b) Donc cet automate est équivalent à l’automate non déterministe suivant : a a b c b 1 2 3 1 2 3

c) Maintenant on peut le déterminiser : a b c (A3) 1 1,2 2 3 1,2 1,2 2 3 2 - 2 3 3 - - - 1 2 3 1,2 a b c

ou bien, en ajoutant l‘état poubelle : a b c 1 1,2 2 3 1,2 1,2 2 3 1 1,2 2 3 1,2 1,2 2 3 2 P 2 3 3 P P P P P P P (A4) 1 2 3 1,2 a b c P a,b,c

d) Mais en réalité, il est plus simple se passer de l’étape (b) et construire un automate déterministe directement à partir d’un automate asynchrone. Redessinons l’automate (*) : A1 L’état initial de l’automate déterministe correspondant à (*) est (1,2), car en lisant le mot vide on arrive et en 1, et en 2. Continuons à déterminiser en marquant dans les colonnes correspondant à la lecture de chaque caractère, tous les états où on arrive après la lecture du caractère en question, c.à.d. non seulement l’état où mène la flèche étiquetée par ce caractère (disons, a), mais aussi tous les états où on peut arriver en lisant a, a etc. Dans notre cas particulier, il n’y a pas de telles transitions, mais il faut systématiquement en tenir compte. 1 2 3 a b c 

état a b c (1,2) (1,2) 2 3 (A5) 2 -- 2 3 3 -- -- -- 1,2 2 3 a b c

1,2 1,2 2 3 Ici , on voit immédiatement que les états 1 et 1,2 ne se Minimisons (A4) : a b c 1 1,2 2 3 1,2 1,2 2 3 Ici , on voit immédiatement que les états 1 et 1,2 ne se 2 P 2 3 sépareront jamais ! 3 P P P P P P P

 0={(1,(1,2),2,P), (3)}={I, (3)} (Utilisons une notation un peu plus intelligente pour ne pas modifier le sens des chiffres romains sans cesse) a b c 1 I I 3 1,2 I I 3 2 I I 3 P I I I P se sépare en formant un groupe à part (c’est toujours le cas) 1={(1,(1,2),2), (P), (3)}={I, (P),(3)} a b c 1 I I 3 1,2 I I 3 2 P I 3 2 se sépare  2={(1,(1,2)), (2), (P), (3)}={I, (2),(P),(3)}

a b c 1 I 2 3 1,2 I 2 3 Le groupe (1,(1,2)) n’a aucun chance à se scinder en deux, car dès le début 1 et (1,2) ont les mêmes transitions. Donc on a terminé, et on obtient I 2 3 a b c II a,b,c

ce qui est le même automate que le résultat de compléter l’automate (A5) ! (en minimisant l’automate (A5), la seule chose qu’il reste à faire c’est de le compléter, autrement il est déjà minimal).