Automate Avancé. Olivier Carton. Étudiant : Colin González

Documents pareils
Informatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur

Théorie des Langages

Algèbre binaire et Circuits logiques ( )

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

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Continuité et dérivabilité d une fonction

chapitre 4 Nombres de Catalan

Algorithmes récursifs

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

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Note de cours. Introduction à Excel 2007

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

Dérivation : Résumé de cours et méthodes

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Mathématiques I Section Architecture, EPFL

1 radian. De même, la longueur d un arc de cercle de rayon R et dont l angle au centre a pour mesure α radians est α R. R AB =R.

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Initiation à la programmation en Python

DOCM Solutions officielles = n 2 10.

Développements limités, équivalents et calculs de limites

6. Les différents types de démonstrations

La circulation méconnue de l épargne règlementée en France!

Introduction à la théorie des graphes. Solutions des exercices

Licence Sciences, Technologies, Santé Mention Informatique Codage de l'information

Chapitre 6. Fonction réelle d une variable réelle

Glossaire des nombres

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Initiation à LabView : Les exemples d applications :

Pour l épreuve d algèbre, les calculatrices sont interdites.

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

Qu est-ce qu une probabilité?

Dérivation CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation

1 Introduction au codage

Structures algébriques

Exo7. Limites de fonctions. 1 Théorie. 2 Calculs

Institut pour le Développement des Capacités / AFRITAC de l Ouest / COFEB. Cours régional sur la Gestion macroéconomique et les

RE SOLUTIONS CHAPITRE 1

Exercices - Nombres complexes : corrigé. Formes algébriques et trigonométriques, module et argument

Analyse Combinatoire

Représentation géométrique d un nombre complexe

TRACER LE GRAPHE D'UNE FONCTION

Cours d algorithmique pour la classe de 2nde

5 ème Chapitre 4 Triangles

Vecteurs. I Translation. 1. Définition :

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

MIS 102 Initiation à l Informatique

Développements limités. Notion de développement limité

Cours d Analyse. Fonctions de plusieurs variables

1.1 Rappels sur le produit cartésien Relations Graphes dirigés Arbres Exercices Motivation...

le guide w w w. g u i d e - p u b. c o m

Algorithmique et Programmation, IMA

Coefficients binomiaux

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

Représentation d un entier en base b

16H Cours / 18H TD / 20H TP

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Ecole Technique «Transformation de données documentaires» Poitiers, mars Atelier 1: Sphinx. import, conversion, export de données

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

par Denis-Charles Cisinski & Georges Maltsiniotis

Chapitre 11. Séries de Fourier. Nous supposons connues les formules donnant les coefficients de Fourier d une fonction 2 - périodique :

ANALYSE GÉNÉRALE - PROPOSITION DE CORRIGÉ. Exercice 1

Logique. Plan du chapitre

!" #$#% #"& ' ( &)(*"% * $*' )#""*(+#%(' $#),")- '(*+.%#"'#/* "'") $'

Introduction à MATLAB R

Corrigé du baccalauréat S Pondichéry 12 avril 2007

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

CHRISTOPHE REUTENAUER* Dédié à mon ami Xavier Viennot

Dérivation : cours. Dérivation dans R

Quelques Algorithmes simples

Cabri et le programme de géométrie au secondaire au Québec

Premiers exercices d Algèbre. Anne-Marie Simon

données en connaissance et en actions?

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

L AIDE AUX ATELIERS D ARTISTES :

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Faculté des sciences Département de mathématiques. Théorie des graphes

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

CCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?

3 ème 2 DÉVELOPPEMENT FACTORISATIONS ET IDENTITÉS REMARQUABLES 1/5 1 - Développements

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Séminaire des chefs de centre

TP 1. Prise en main du langage Python

Chapitre 2. Matrices

Géométrie dans l espace Produit scalaire et équations

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Le théorème de Thalès et sa réciproque

Chapitre VI - Méthodes de factorisation

ÉPREUVE COMMUNE DE TIPE Partie D

SESSION 2014 ÉPREUVE À OPTION. (durée : 4 heures coefficient : 6 note éliminatoire 4 sur 20)

Plus courts chemins, programmation dynamique

Équations non linéaires

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Systèmes d information et bases de données (niveau 1)

Nombre dérivé et tangente

CCP PSI Mathématiques 1 : un corrigé

Correction TD algorithmique

Transcription:

Automate Avancé Olivier Carton Étudiant : Colin González

Table des matières 1 Introduction 2 1.1 Définitions............................... 2 1.2 Opérations sur les langages..................... 3 1.3 Langages rationnels.......................... 3 2 Automates 4 2.1 Représentation des automates.................... 4 2.2 Passage d une expression rationnelle à un automate........ 5 2.3 Automate deterministe........................ 5 2.4 Minimisation d automate...................... 6 2.5 Lemme de l étoile........................... 6 2.6 Grammaire.............................. 6 2.6.1 Arbre de dérivation..................... 6 2.6.2 Grammaire réduites..................... 7 2.7 Automate à pile............................ 7 2.8 Mots infinis.............................. 7 2.8.1 Examples........................... 8 2.8.2 Opérations.......................... 8 1

Chapitre 1 Introduction 19 janvier 2016 Plan Automate sur les mots finis Grammaires Automates sur les mots infinis Bibliographie Livre du prof. Evaluation Partiel 1/2 + Examen 1/2 1.1 Définitions Aplhabet : ensemble fini de symboles. Exemple : {0, 1}, lettres de l alphabet, {a, b} Mots : suite finie de symboles. Exemple : A = {a, b, c} ; w = a, b, c abc; aaabb; abbc, ε de taille 0 Longueur : pour un mot w w Notations : ensemble de los mots finis sur A : A Exemple : sur A = {a, b}, A = {ε, a, b, aa, ab, ba, bb} Concaténation : Soient deux mots u, v u.v uv de plus u.v = u + v et (u.v).w = u.(v.w) L élément neutre est ε, c est une fonction associative. Le monoïde libre (A,., ε) Exemple : u = aab, v = ba uv = aabba; ε.u = u.ε = u Ensembles de mots : un langage 2

Exemples :, {a, aba}, A, aa, B = { w = 0 mod 2 w} 1.2 Opérations sur les langages union K L = K + L concaténation K ensemble de mots paires, L ensemble de mots impaires K.L = KL = {uv u K, v L} KL = { mots de longueur impaire} LK = { mots de longueur impaire} KK = { mots de longueur paire} LL = { mots de longueur impaire}\ε étoile itération convention pour n = 0 ε L L n L n = {u 1, u 2,..., u n u i n L} L = {u u L} L 2 = {u 1, u 2 u 1, u 2 L} L 3 = {u 1, u 2, u 3 u 1, u 2, u 3 L} 1.3 Langages rationnels Tous les langages qu on peut obtenir à partir des langages, {ε}, {a} pour a A et pour les opérations +,., Exemple : Pour A = {a, b}, le langes des mots paire = (ab, ba, aa, bb), les mots de longueur impaire (A 2 ).A 3

Chapitre 2 Automates 2.1 Représentation des automates Par un graphe ou une table de transition. Table de transition Etats initiaux I = {2}, états finaux F = {1} Etats Transitions 1 (a,2) 2 (b,1) ;(a,2) Chemin Une suite de transitions consécutives, la longueur d un chemin est le nombre de transitions. 1 a 2 b 1 a 2 un chemin de longueur 3. Convention q Q q est une chemin de longuer 0. Un chemin acceptant est acceptant si le premier état est initiale et le dernier est final. Étiquette d un chemin : mot. 4

2.2 Passage d une expression rationnelle à un automate 26 janvier 2016 automate normalisé méthode de Glushkov def A_normalise : 1 un s e u l e t a t i n i t i a l e i 1 un s e u l e t a t f i n a l e f pas de t r a n s i t i o n revenant sur i pas de t r a n s i t i o n partant de f Remarque : Si A normalisé alors ε L(A) Construction : par induction sur l expression : ε A L L\{ε} 2.3 Automate deterministe 2 février 2016 Définition : un automate (Q, A, E, I, F ) est deterministe si I = 1 et que qu en partant d un état q 0 il n existe qu un seul chemin en lisant x A. ie q n a q n+1 et q 0 a q n+2 n est pas possible. Tout automate déterministe peut être déterminisé par la méthode suivante. Pour obtenir l automate déterministe A d d un automate A représenté par Q d = 2 Q tout les ensembles d états I d = {I} l ensemble des état initiaux F d = {P Q : P F } ensemble contenant au moins un état final E d = p a p ; p = {q : p P p a q} Passage au complément A L = L(A) ensemble des mots acceptés A ensemble des mots non-acceptés 5

2.4 Minimisation d automate Il s agit de fusionner des états équivalents d un automate. Futur d un état : l ensemble des mots acceptés en prenant cet état comme état initiale. 2.5 Lemme de l étoile 9 février 2016 Propriété : soir L A Si L est rationnel, alors il existe un entier n tel que f A on a, Si f L et f n alors f = u.v.w u, v, w A, v ε et uv w L = {u.v k.w k 0} Utilisation : L = {a k b k k 0} = {ε, ab, aabb, aaabbb,...} L n est pas rationnel, on va vérifier que ce langage L ne vérifie pas la propriété du lemme de l étoile. On veut donc vérifier que pour tous les entiers n il existe un mot f tel que f, f L et f ne peut pas pas être factorisé f = u.v.w, v ε et u.v.w L Propriété du lemme de l étoile fort : Si L et rationnel, alors il existe un entier n tel que : f A Si f = u.v 1.v 2 v n.w alors i < τ u.v 1...v i (v i+1...v j ) v j+1...v n w L où v, w A, v i A + et f L. 2.6 Grammaire 16 février 2016 Définition : Une grammaire est une uplet (A, V, B) où A est un alphabet terminal A, V un alphabet de variable et P un ensemble de règles. Chaque règle a la forme X w où X V et w (V +A) 2.6.1 Arbre de dérivation C est une arbre dont les noeuds sont étiquetés : un noeud interne variable (V ) feuille un lettre de l alphabet (A) pour chaque noeud interne tous les fils sont obtenu par l application d un règle. 6

Notation : L G (X) ensemble des mots de feuille des arbres de dérivation de G ayant X à la racine. 2.6.2 Grammaire réduites Définition : G = (A, V, P ) est réduite par rapport à une variable S (un axiome). X V L G (X) X V ne donnent pas X. 2.7 Automate à pile 1er mars 2016 Automates expression rationnelles = langages rationnels. Automates à pile grammaires = langages algébriques. idée générale Q = {q 1,..., q n } avec une pile. Certaines transitions ajoutent des symboles dans la pile d autres dépilent les symboles. Définition Un automate à pile est constitué de : un ensemble fini d états Q avec un état initiale q 0 un alphabet d entrée A un alphabet de pile Z avec un symbole initial z 0 un ensemble de transitions p, z y q, h avec p, q Q, z Z, y A {ε}, h Z Configuration : Une paire (q, w) ou q Q et w Z Étape de calcul : C y C où C, C une configuration. C = (p, zw) et C = (q, hw) et p, z y q, h une transition. Un calcul est donc une suite d étape de calcul. Calcul acceptant (plusieurs conventions) États finaux F Q C n si q n F ou si la pile est vide et C = (q n, w n ) et si w n = ε ou encore état finale + pile vide, z 0 Z C n = (q n, w n ) si w n Z 0 Z 2.8 Mots infinis 15 mars 2016 Soit un alphabet A, un mot infini x est une suite (non finie) de lettres (symboles) de A : a 0, a 1, a 2... On note A ω l ensemble des mots infinis sur A. 7

Mots périodiques x = uuu... où u A = u ω Mots ultimement périodiques : x = uvvv = uv ω 2.8.1 Examples A = {a} x = aaa = a ω A = {a, b} x = aaa = a ω x = bbb = b ω x = ababab = ab ω x = baabaabaa = baa ω x = aaabababa = aaa(ba ω ) x = ababbabbbab 4 a = abab 2 ab 3 ab 4 = a = non-périodiques. 2.8.2 Opérations Concaténations d un mot fini et d un mot infini. u A x A ω on a ux A ω 8