Automates à états fnis Damien Nouvel



Documents pareils
Notes de révision : Automates et langages

LANGAGES - GRAMMAIRES - AUTOMATES

STI2D Logique binaire SIN. L' Algèbre de BOOLE

L'algèbre de BOOLE ou algèbre logique est l'algèbre définie pour des variables ne pouvant prendre que deux états.

Algorithmes sur les mots (séquences)

Chapitre 2 Le problème de l unicité des solutions

Synthèse de cours (Terminale S) Calcul intégral

/HVV\VWqPHVFRPELQDWRLUHV

Statuts ASF Association Suisse Feldenkrais

Introduction à la modélisation et à la vérication p. 1/8

Séquence 8. Probabilité : lois à densité. Sommaire

Correction de l épreuve CCP 2001 PSI Maths 2 PREMIÈRE PARTIE ) (

Guide d'utilisation Easy Interactive Tools Ver. 2

SYSTEME DE TELEPHONIE

COURS D ANALYSE. Licence d Informatique, première. Laurent Michel

semestre 3 des Licences MISM annnée universitaire

LOGICIEL FONCTIONNEL EMC VNX

Avant d utiliser l appareil, lisez ce Guide de référence rapide pour connaître la procédure de configuration et d installation.

Techniques d analyse de circuits

LITE-FLOOR. Dalles de sol et marches d escalier. Information technique

Commencer DCP-7055W / DCP-7057W /

Réalisation de sites Internet PME & Grandes entreprises Offre Premium. Etude du projet. Webdesign. Intégration HTML. Développement.

Chapitre 11 : L inductance

Toyota Assurances Toujours la meilleure solution

Pour développer votre entreprise LES LOGICIELS EN LIGNE, VOUS ALLEZ DIRE OUI!

INFORMATIONS TECHNIQUES

ManSafe. pour les Utilitiés. La Protection antichute pour les Industries de l'energie. Français. TowerLatch LadderLatch

Chapitre VI Contraintes holonomiques

Module 2 : Déterminant d une matrice

Guide des bonnes pratiques

Université Paris-Dauphine DUMI2E. UFR Mathématiques de la décision. Notes de cours. Analyse 2. Filippo SANTAMBROGIO

Influence du milieu d étude sur l activité (suite) Inhibition et activation

Conseils et astuces pour les structures de base de la Ligne D30

Tout ce qu il faut savoir en math

3- Les taux d'intérêt

Sommaire. 6. Tableau récapitulatif Sophos NAC intégré Vs. NAC Advanced - 17 Février

Classeur courtier d assurance. Comment organiser son activité et se préparer à un contrôle

Théorème de Poincaré - Formule de Green-Riemann

Bloc notes. a À faire tout de suite. Gardez secret votre code confidentiel. À conserver précieusement. Protégez votre carte

Solutions IHM. Gammes Graphite et G3 Outils pour l'usine connectée

Pour développer votre entreprise. Compta LES LOGICIELS EN LIGNE, VOUS ALLEZ DIRE OUI!

Cours d Analyse IV Suites et Séries de fonctions

ANALYSE NUMERIQUE NON-LINEAIRE

Thèse Présentée Pour obtenir le diplôme de doctorat en sciences En génie civil Option : structure

LICENCE DE MATHÉMATIQUES DEUXIÈME ANNÉE. Unité d enseignement LCMA 4U11 ANALYSE 3. Françoise GEANDIER

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

CH.6 Propriétés des langages non contextuels

Turbine hydraulique Girard simplifiée pour faibles et très faibles puissances

Le canal étroit du crédit : une analyse critique des fondements théoriques

Intégrale et primitives

Portiers audio et vidéo ABB-Welcome et ABB-Welcome M

NEWS PRO ACTIV. [Juillet 2015] Ce mois-ci on vous parle de. L arrêté est applicable à compter du 1er Juillet 2015.

La plateforme Next Generation Mini guide

INSTALLATION DE DETECTION INCENDIE

McAfee Firewall Enterprise Control Center

La paye. La comptabilité. Comparez et choisissez votre logiciel. Comparez et choisissez votre logiciel. Paye Bâtiment Paye Agricole 2013

FONDATION CLEMENTINE ET MAURICE ANTILLE

ANALYSE : FONCTIONS D UNE VARIABLE RÉELLE

AUTOUR D UN MÉMOIRE INÉDIT : LA CONTRIBUTION D HERMITE AU DÉVELOPPEMENT DE LA THÉORIE DES FONCTIONS ELLIPTIQUES. Bruno BELHOSTE (*)

Sciences Industrielles Précision des systèmes asservis Papanicola Robert Lycée Jacques Amyot

McAfee Firewall Enterprise, Multi Firewall Edition

- Phénoméne aérospatial non identifié ( 0.V.N.I )

Probabilités sur un univers fini

Grammaires d unification

Partie 4 : La monnaie et l'inflation

Clients légers IGEL et bureaux virtuels : synergie idéale et coût minimal

Transfert. Logistique. Stockage. Archivage

Exprimez-vous lors du choix de vos pneus:

Guide de l'utilisateur

EnsEignEmEnt supérieur PRÉPAS / BTS 2015

TUBES ET PROFILS CREUX

Calculabilité Cours 3 : Problèmes non-calculables.

Santé et sécurité psychologiques en milieu de travail

INTENTION LES PROCESSUS MATHÉMATIQUES

Chapitre 7. Récurrences

Chapitre 1 : Fonctions analytiques - introduction

1 Recherche en table par balayage

Résolution de systèmes linéaires par des méthodes directes

l'appareil et vérifiez les composants Cartouches d'encre incluses [x4] CD-ROM d'installation CD-ROM de documentation

Réalisabilité et extraction de programmes

3 -Les traumatismes du membre inféri e u r

l appareil et vérifier les composants Module tambour-cartouche de toner (pré-installé)

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test


Solutions électriques VELUX

Directives COV et alternative lipochimique : peintures, encres, nettoyage, dégraissage...

Les structures de données. Rajae El Ouazzani

Bilan pédagogique / Projet ipad Contexte

16.1 Convergence simple et convergence uniforme. une suite de fonctions de I dans R ou C.

Marketing et Communication qui Améliorent significativement la Rentabilité de votre activité. la vision créative.

Théorie des graphes et optimisation dans les graphes

Définitions. Numéro à préciser. (Durée : )

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Fondements de l informatique Logique, modèles, et calculs

Algorithmes récursifs

La pratique institutionnelle «à plusieurs»

MINIMUM DE DONNÉES STANDARDISÉES (MDS) POUR L ÉVALUATION DU RÉSIDANT EN INSTITUTION EN VUE D UN PLAN DE SOINS

INSTRUCTIONS POUR L INSTALLATION ET LE FONCTIONNEMENT DES SERRURES À POIGNÉE BÉQUILLE

Algorithmes d'apprentissage

Transcription:

Automtes Automtes à étts fnis

Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 2 / 30

Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 3 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Automte à étts fnis Finite Stte Automton (FSA) Mchine strite, issue des trvux de A. Turing Éléments de l'utomte Une ensemle fni d'étts possiles Un ensemle fni de symoles en entrées Une fonction de trnsition entre étts Représenttions Digrmmes de trnsition Tles de trnsition Nottions formelles Licence Informtique L1 Automtes 4 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Digrmmes de trnsition Représenttion «grphique» Grphe orienté étiqueté : Nœuds : étts de l'utomte Étiqueté pr les noms des étts (générlement q x : q 1, q 2, q 3,...) Étt fnl : doule cercle Arcs orientés : trnsitions de l'utomte Étiqueté pr les symoles (,, c, d,...) Étt initil : mrqué pr un rc sns nœud d'origine q 1 q 2 q 3 c d q 4 Licence Informtique L1 Automtes 5 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Digrmmes de trnsition (suite) Pour l lisiilité, lorsque deux rcs de même orienttion sont possiles entre deux nœuds, ils sont fusionnés (disjonction) :, Un rc peut «oucler» un étt sur lui-même : Des trnsitions peuvent prtir de l'étt fnl : Licence Informtique L1 Automtes 6 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Digrmmes de trnsition (suite) Les trnsitions correspondent à l concténtion On «suit» les rcs pour voir quel lngge est ccepté : q 1 q 2 c,e d q 4 L = {c, e, d, d q 3 Le lngge n'est ps forcément fni : q 1 q 2 q 3 d c,e q 4 L = {c, e, d, c, e, d, c, e, d... Licence Informtique L1 Automtes 7 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Digrmmes de trnsition (suite) Peuvent être mis intuitivement (formellement ussi) en correspondnce vec des expressions régulières R =, R = + c d R = +cd c R = * c Licence Informtique L1 Automtes 8 / 30

Automtes à étts fnis Représenttion des utomtes (FSA) Tle de trnsitions Équivlente à l représenttion pr digrmme de trnsitions Étts en lignes, symoles en colonnes Ligne de l'étt initil mrqué pr une fèche Ligne de l'étt fnl mrqué pr une étoile * Contenu décrit les trnsitions depuis un étt / symole c d q 2 c q 1 q 2 Ø Ø Ø q 2 q 3 q 2 q 4 Ø q 1 q 4 d q 3 q 3 Ø q 1 Ø q 4 * q 4 Ø Ø Ø Ø Licence Informtique L1 Automtes 9 / 30

Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 10 / 30

Automtes à étts fnis Défnition formelle (DFA) Nottions pour un utomte «déterministe» (DFA) Un ensemle fni d'étts Nottion : Q = {q 1, q 2, q 3... Un ensemle fni de symoles (lphet) Nottion : Σ = {,, c, d... Une fonction de trnsition qui prend en prmètre un étt et un symole et qui renvoie un étt Nottion : δ(q i, ) = q j («signture» δ : Q Σ Q) Un étt initil Nottion : q 0 Q Un ensemle d'étts fnux Nottion : F Q Licence Informtique L1 Automtes 11 / 30

Automtes à étts fnis Défnition formelle (DFA) Automte à étts fnis Défni comme le quintuplet : A = (Q, Σ, δ, q 0, F) Défnition équivlente ux digrmmes et tles de trnsition Repose sur l défnition de l fonction de trnsition δ, souvent défnie pr extension (en listnt les cs possiles) L fonction peut renvoyer Ø (pr ex. δ(q 1, d) = Ø) Défnition de l fonction de trnsition «étendue» Fonction qui prend un mot en entrée et utilise δ de l'utomte Nottion (α Σ * ) : δ(q i, α) = q j («signture» δ : Q Σ * Q) Défnie récursivement pr décomposition du mot w : Si w = ε lors δ(q i, ε) = { q i Si w = x. tels que et x Σ * et Σ lors δ(q i, w) = δ( δ(q i, x), ) Licence Informtique L1 Automtes 12 / 30

Automtes à étts fnis Défnition formelle (DFA) Lngge reconnu pr un utomte déterministe Ensemle des mots tels que l fonction de trnsition étendue ppliquée à l 'étt initil et u mot conduit à un étt fnl : L(A) = { w Σ * δ(q 0, w) F Théorème de Kleene : pr défnition, le lngge reconnu pr un utomte à étts fnis (NFA) est régulier (ou rtionnel) Avntges et limites des utomtes à étts fnis (FSA) Algorithmes rpides pour implémenter les FSA Impossile de «compter» dns le cs générl Ps d'utomte qui décrive un mot ynt utnt de que de Ps d'utomte pour reconnître une expression rithmétique ien formée (nécessité de recourir à des grmmires) Licence Informtique L1 Automtes 13 / 30

Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 14 / 30

Automtes à étts fnis Types d'utomtes Automtes à étts fnis FSA : Finite Stte Automt Automtes à étts fnis déterministes DFA : Determinist Finite stte Automt Automtes à étts fnis non-déterministes NFA : Non-determinist Finite stte Automt Automtes à étts fnis non-déterministes vec possilité de trnsitions ε (mot vide) ε-nfa : Non-determinist Finite stte Automt with ε trnsitions Tous peuvent être représentés à l'ide des digrmmes de trnsition, tles de trnsition, nottions formelles Licence Informtique L1 Automtes 15 / 30

Automtes à étts fnis Déterminisme : requiert que l'utomte soit dns un étt unique («déterminé») près voir lu n symoles Automtes non-déterministes (NFA) Non-déterminisme : l'utomte peut-être dns plusieurs étts, «simultnément» près voir lu n symoles Attention : un utomte non-déterministe n'implique ps que l'on ne «sche» ps dns quels étts il est (u contrire) Prticulièrement utile lorsque l'on ne sit ps «à l'vnce» quel étt fnl l'utomte tteindr (hypothèses) Fcilité de représenttion / progrmmtion GPS : une voiture se dirige vers Pris, mis on ne connît ps l destintion fnle (Orléns, Strsourg) Prédiction SMS : un utilisteur tpe le déut d'un mot, mis plusieurs hypothèses sont possiles pour le mot qu'il veut écrire Licence Informtique L1 Automtes 16 / 30

Automtes à étts fnis Fonction de trnsition d'un NFA A prtir d'un étt et d'un symole : plusieurs étts possiles Nottion : δ(q i, ) = R Q («signture» δ : Q Σ Q * ) Pr ex. δ(q i, ) = { q j, q k, q l Peut ussi être l'ensemle vide : δ(q i, ) = Ø Diférence de représenttions DFA / NFA Digrmme de trnsitions Tle de trnsitions Nottion formelle DFA Pour chque pire (étt, symole), u mximum un rc sortnt Les cses de l tle contiennent un étt ou Ø L fonction de trnsition renvoie u mximum un étt NFA Possiilité de plusieurs rcs sortnt pr pire (étt, symoles) Les cses de l tle contiennent un ensemle d'étts L fonction de trnsition peut renvoyer plusieurs étts Licence Informtique L1 Automtes 17 / 30

Automtes à étts fnis Diférence de représenttions DFA / NFA (suite) Soit Σ = {,, comment représenter un utomte qui reconnît tous les mots se terminnt pr? DFA q 1 q 0 q 1 q 0 q 1 q 1 q 2 q 0 q 2 * q 2 q 1 q 0, NFA q 0 q 1 q 2 q 0 { q 0, q 1 { q 0 q 1 { { q 2 * q 2 Ø Ø Licence Informtique L1 Automtes 18 / 30

Automtes à étts fnis Fonction de trnsition étendue d'un NFA A prtir d'un étt et d'un mot, plusieurs étts possiles Fonction qui prend un mot en entrée et utilise δ du NFA Nottion (α Σ * ) : δ(q i, α) = R Q («signture» δ : Q Σ * Q * ) De même, défnition récursive pr décomposition du mot w : Si w = ε lors δ(q i, ε) = { q i Si w = x. tels que x Σ *, Σ et R = δ(q i, x) lors δ(q i, w) = r R δ(r, ) ou (équivlent) : δ(q i, w) = qj δ(qi, x) δ(q j, ) Lngge reconnu pr un NFA Mots w tels que δ(q 0, w) contienne u moins un étt fnl L(A) = { w Σ * δ(q 0, w) F Ø Licence Informtique L1 Automtes 19 / 30

Automtes à étts fnis Pr ex. soit l'utomte ci-dessous et w =, q 0 q 1 q 2 q 0 { q 0, q 1 { q 0 q 1 Ø { q 2 δ(q 0, ) = {q 0 * q 2 Ø Ø δ(q 0, ) = p {q0 δ(p, ) = δ(q 0, ) = {q 0, q 1 δ(q 0, ) = p {q0, q1 δ(p, ) = δ(q 0, ) δ(q 1, ) = {q 0, q 1 δ(q 0, ) = p {q0, q1 δ(p, ) = δ(q 0, ) δ(q 1, ) = {q 0, q 2 δ(q 0, ) = p {q0, q2 δ(p, ) = δ(q 0, ) δ(q 2, ) = {q 0, q 1... δ(q 0, ) = {q 0, q 2 donc δ(q 0, ) F = {q 2 Ø et w L(A) Licence Informtique L1 Automtes 20 / 30

Automtes à étts fnis Automtes vec trnsitions ε (ε-nfa) Trnsition ε : trnsitions sur le mot vide ucun symole L trnsition se rélise systémtiquement Fcilité supplémentire de représenttion / progrmmtion Lorsque des prties sont «optionnelles» Tout utomte qui comporte une trnsition ε est nondéterministe (peut-être dns plusieurs étts simultnément) Pr ex., les mots c ou c : q 1 q 2 q 1 c q 0 c q 3 q 0 ε q 2 c q 3 NFA ε-nfa Licence Informtique L1 Automtes 21 / 30

Automtes à étts fnis Fonction de trnsition d'un ε-nfa Identique à celle du NFA, mis en tennt compte des trnsitions ε comme élément pour réliser une trnsition Le mot-vide ε n'est ps nécessirement un élément de l'lphet Σ Nottion : δ(q i, ) = R Q («signture» δ : Q Σ {ε Q * ) Fermeture (trnsitive) pr trnsition ε Fermeture trnsitive (clôture, lgère) éléments que l'on peut tteindre en utilisnt un opérteur donné récursivement Défnition d'une fonction récursive «epsclos» : Pour tout q i Q, q i epsclos(q i ) Pour tout q i Q, si δ(q i, ε) = R Q lors R epsclos(q i ) On «suit» toutes les trnsitions ε possiles, récursivement Licence Informtique L1 Automtes 22 / 30

Automtes à étts fnis Pr ex. : q 2 ε q 4 ε q 0 q ε q 1 3 q 5 epsilonclosure(q 0 ) = {q 0 epsilonclosure(q 1 ) = {q 1, q 3 epsilonclosure(q 2 ) = {q 2, q 1, q 3 epsilonclosure(q 3 ) = {q 3 epsilonclosure(q 4 ) = {q 4, q 2, q 1, q 3 epsilonclosure(q 5 ) = {q 5 Licence Informtique L1 Automtes 23 / 30

Automtes à étts fnis Fonction de trnsition étendue d'un ε-nfa Même pproche que pour un NFA Fonction qui prend un mot en entrée et utilise δ du ε-nfa Nottion (α Σ * ) : δ(q i, α) = R Q («signture» δ : Q Σ * Q * ) Trnsitions tiennent compte des trnsitions ε vec epsclos De même, défnition récursive pr décomposition du mot w : Si w = ε lors δ(q i, w) = epsclos(q i ) Si w = x. tels que x Σ *, Σ et R = δ(q i, x) lors δ(q i, w) = r R s δ(r, ) epsclos(s) ou (équivlent) : δ(q i, w) = qj δ(qi, x) qk δ(qj, ) epsclos(q k ) Lngge reconnu pr un ε-nfa (comme pour NFA) L(A) = { w Σ * δ(q 0, w) F Ø Licence Informtique L1 Automtes 24 / 30

Automtes à étts fnis Pr ex. : q 2 ε q 4 ε q 0 q ε q 1 3 q 5 δ(q 0, ) = {q 2, q 1, q 3 δ(q 0, ) = {q 1, q 3 δ(q 0, ) = {q 5, q 4, q 2, q 1, q 3 = δ(q 0, ) = δ(q 0, ) δ(q 0, ) = Ø δ(q 0, ) = {q 5 = δ(q 0, ) = δ(q 0, ) = δ(q 0, ) Licence Informtique L1 Automtes 25 / 30

Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 26 / 30

Automtes à étts fnis Équivlence DFA / NFA / ε-nfa Les utomtes reconnissent des lngges Représenttion de l'utomte plus ou moins «dense» Distinction entre DFA, NFA et NFA Fonctions de trnsitions Nomre d'étts tteints depuis un étt en consommnt un symole Le lngge reconnu pr un utomte ne dépend ps des étts de l'utomte Plusieurs utomtes possiles pour un même lngge Équivlence des utomtes (lngges reconnus) Automtes DFA et NFA Automtes NFA et ε-nfa Licence Informtique L1 Automtes 27 / 30

Automtes à étts fnis Équivlence DFA / NFA / ε-nfa Équivlence DFA / NFA Tout DFA peut-être considéré comme un NFA Soit un NFA, N = (Q N, Σ N, δ N, q N0, F N ) Il existe un DFA, D = (Q D, Σ D, δ D, q D0, F D ) tel que L(D) = L(N) Même lphet (Σ D = Σ N ), même étt initil (q D0 = q N0 ) On construit Q D comme l'ensemle des sous-ensemle de Q N Pr ex. si Q N = {q 0, q 1 lors Q D = {{q 0, {q 1, {q 0 q 1 Étts fnux F D : ceux qui sont construits vec un étt fnl de F N F D = {q Di Q D {q Ni q Di F N Ø Fonction de trnsition δ D de D qui, à prtir d'un étt de Q D comme construction de Q N renvoie vers une utre construction de Q N : δ D (q Di, ) = { qnj qdi δ N (q Nj, ) Licence Informtique L1 Automtes 28 / 30

Automtes à étts fnis Équivlence DFA / NFA / ε-nfa Équivlence DFA / NFA (suite) Preuve sur l longueur du mot w = x. Supposons que : δ D (q D0, x) = δ N (q N0, x) = Q Pr défnition du NFA : Licence Informtique L1 δ N (q N0, x.) = qnj δ(qn0, x) δ(q Nj, ) = qnj Q δ N (q Nj, ) Et pr construction du DFA : δ D (q Di, ) = { qnj qdi δ N (q Nj, ) δ D (q D0, x.) = δ D (δ D (q D0, x), ) = δ D (Q, ) = { qnj Q δ N (q Nj, ) Alors δ N (q N0, x.) = qnj Q δ N (q Nj, ) = δ D (q D0, x.) Récursivité : le DFA et le NFA outissent ux mêmes étts, mis dns le cs du DFA c'est «pr construction» Pour tout NFA, il est possile de construire un DFA qui reconnîtr le même lngge. Automtes 29 / 30

Automtes à étts fnis Équivlence DFA / NFA / ε-nfa Équivlence NFA / ε-nfa Tout NFA peut-être considéré comme un ε-nfa Soit un ε-nfa, E = (Q E, Σ E, δ E, q E0, F E ) Il existe un NFA, N = (Q N, Σ N, δ N, q N0, F N ) tel que L(N) = L(E) Même lphet (Σ N = Σ E ) On construit Q N comme l'ensemle des sous-ensemle de Q E Étt initil construit q N0 = {epsclos(q E0 ) Étts fnux F N : construits vec un étt fnl de F E F N = {q Ni Q N {q Ei q Ni F E Ø Fonction de trnsition δ N de N qui, à prtir d'un étt de Q N comme construction de Q E renvoie vers une utre construction de Q E : δ N (q Ni, ) = { qej qni qnk δe(qni, ) epsclos(q Nk ) Licence Informtique L1 Automtes 30 / 30