Théorie des Langages Épisode 2 Automates finis



Documents pareils
Notes de révision : Automates et langages

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

LANGAGES - GRAMMAIRES - AUTOMATES

Algorithmes sur les mots (séquences)

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

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

Techniques d analyse de circuits

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

Chapitre 11 : L inductance

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

Module 2 : Déterminant d une matrice

SYSTEME DE TELEPHONIE

ANALYSE NUMERIQUE NON-LINEAIRE

Chapitre VI Contraintes holonomiques

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

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

Guide d'utilisation Easy Interactive Tools Ver. 2

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

Tout ce qu il faut savoir en math

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

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

semestre 3 des Licences MISM annnée universitaire

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

Intégrale et primitives

Toyota Assurances Toujours la meilleure solution

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

Statuts ASF Association Suisse Feldenkrais

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

3- Les taux d'intérêt

/HVV\VWqPHVFRPELQDWRLUHV

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

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

Chapitre 1 : Fonctions analytiques - introduction

INFORMATIONS TECHNIQUES

Commencer DCP-7055W / DCP-7057W /

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

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

Partie 4 : La monnaie et l'inflation

Baccalauréat S Asie 19 juin 2014 Corrigé

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

Probabilités sur un univers fini

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

La pratique institutionnelle «à plusieurs»

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

Licence M.A.S.S. Cours d Analyse S4

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 : FONCTIONS D UNE VARIABLE RÉELLE

Compte rendu de la validation d'un observateur cascade pour la MAS sans capteurs mécaniques sur la plate-forme d'essai de l'irccyn

La plateforme Next Generation Mini guide

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

INTENTION LES PROCESSUS MATHÉMATIQUES

LOGICIEL FONCTIONNEL EMC VNX

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

Modification simultanée de plusieurs caractéristiques d un bien hédonique : une nouvelle méthode de calcul de la variation de bien-être des ménages

McAfee Firewall Enterprise Control Center

Suites numériques 3. 1 Convergence et limite d une suite

Guide de l'utilisateur

Guide des bonnes pratiques

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

FONDATION CLEMENTINE ET MAURICE ANTILLE

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

Annexe II. Les trois lois de Kepler

Magister en : Génie Mécanique

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

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

III- Raisonnement par récurrence

TOUT CE QU IL FAUT SAVOIR POUR LE BREVET

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

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

RadioCommunications CDMA

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

Electrovanne double Dimension nominale Rp 3/8 - Rp 2 DMV-D/11 DMV-DLE/11

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

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

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

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

ARBRES BINAIRES DE RECHERCHE

V- Manipulations de nombres en binaire

INSTALLATION DE DETECTION INCENDIE

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

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

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

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

Commencer MFC-J4410DW

La spirale de Théodore bis, et la suite «somme=produit».

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

Compression Compression par dictionnaires

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Régression multiple : principes et exemples d application. Dominique Laffly UMR CNRS Université de Pau et des Pays de l Adour Octobre 2006

L import massif introduit plusieurs nouvelles fonctionnalités, selon que l on importe un thésaurus, un ensemble de valeurs contrôlées ou un corpus.

Groupe symétrique. Chapitre II. 1 Définitions et généralités

A11 : La représentation chaînée (1ère partie)

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

Exprimez-vous lors du choix de vos pneus:

DAns un système multi-utilisateurs à temps partagé, plusieurs processus

Bases de programmation. Cours 5. Structurer les données

Transcription:

AFD AFN Opértions Lemme de pompge 1/ 36 Théorie des Lngges Épisode 2 Automtes finis Thoms Pietrzk Université Pul Verline Metz

AFD AFN Opértions Lemme de pompge Reconnisseur Définition Configurtion Accepttion 2/ 36 Reconnisseur Une tâche principle dns l nlyse lexicle et syntxique est de décider soit pour une unité lexicle soit pour un progrmme si cette entrée est «un mot du lngge» décrit pr soit une expression régulière r soit une grmmire hors contexte G. Il fut lors un reconnisseur pour un lngge L. C est un progrmme qui prend en entrée un mot m et répond «oui» si m L et «non» utrement. Automte fini On compile une expression régulière en un reconnîsseur en construisnt un digrmme de trnsition générlisé. Le modèle de mchine correspondnt est ppelé utomte fini. Les utomtes finis, ussi ien déterministes que non déterministes sont cples de reconnître précisément les lngges réguliers.

AFD AFN Opértions Lemme de pompge Reconnisseur Définition Configurtion Accepttion 3/ 36 Automte fini Déterministe Un utomte fini déterministe (AFD) est défini pr A = (E, Σ, δ, e 0, F ) où E est un ensemle fini d étts Σ est un ensemle fini de symoles d entrée δ : E Σ E est une fonction de trnsition e 0 est un étt de déprt F E est l ensemle des étts d ccepttion

AFD AFN Opértions Lemme de pompge Reconnisseur Définition Configurtion Accepttion 4/ 36 Voici un utomte pour l expression régulière ( ) A = ({e 0, e 1, e 2, e 3 }, {, }, δ, e 0, {e 3 }) où δ est défini pr : Symole d entrée Étt 0 1 0 1 1 2 2 1 3 3 1 0 Représenttion schémtique : déut 0 1 2 3 s de chînes reconnues :,,,

AFD AFN Opértions Lemme de pompge Reconnisseur Définition Configurtion Accepttion 5/ 36 Configurtion Une configurtion d un utomte est une description complète de l sitution de l utomte. On note (m, e) vec m le mot qui reste sur l nde et e l étt cournt. (m, e 0 ) est une configurtion de déprt, vec m l entrée. (ɛ, e), vec e F est une configurtion finle. (u, e) A (u, e ) δ(e, ) = e où Σ, u Σ et e, e E. Configurtion suivnt Une configurtion K d un utomte A est une configurtion suivnt de K, noté K A K, s il y une suite K = K 0, K 1,..., K r = K telle que K i A K i+1 pou chque i {0, 1,..., r 2}.

AFD AFN Opértions Lemme de pompge Reconnisseur Définition Configurtion Accepttion 6/ 36 Accepttion Un utomte fini lit l entrée une seule fois en pssnt l tête de lecture de guche à droite sns se retourner. L utomte ccepte un mot s il rrive dns un étt d ccepttion près voir lu le mot u totl. Définition Le lngge L est ccepté pr un AFD A si L est défini pr L = L(A) = {m Σ (m, e 0 ) A (ɛ, e), e F } A = ({e 0, e 1 }, {, }, δ, e 0, {e 0 }) L(A) = { n n N} δ e 0 e 0 e 1 e 1 e 1 e 1

AFD AFN Opértions Lemme de pompge Définition Accepttion Grphe 7/ 36 Automte fini Non Déterministe Un utomte fini non déterministe (AFN) est défini pr A = (E, Σ, δ, e 0, F ) où E est un ensemle fini d étts Σ est un ensemle fini de symoles d entrée δ (E Σ) E est une reltion de trnsition e 0 est un étt de déprt F E est l ensemle des étts d ccepttion Au contrire d un AFD, une trnsition d un AFN δ(e, ) peut voir plusieurs vleurs : δ(e, ) Z. En conséquence, pour un AFN A une configurtion suivnt n est plus uniquement déterminée : (u, e) A (u, e ) e δ(e, ) où Σ, u Σ et e, e E.

AFD AFN Opértions Lemme de pompge Définition Accepttion Grphe 8/ 36 En reprennt l expression régulière ( ) A = ({e 0, e 1, e 2, e 3 }, {, }, δ, e 0, {e 3 }) où δ est défini pr : Symole d entrée Étt 0 {0, 1} {0} 1 {2} 2 {3} Représenttion schémtique : déut 0 1 2 3 s de chînes reconnues :,,,

AFD AFN Opértions Lemme de pompge Définition Accepttion Grphe 9/ 36 Accepttion Le lngge L est ccepté pr un AFN A si L est défini pr L = L(A) = {m Σ (m, e 0 ) A (ɛ, e), e F } On voit fcilement que pr définition chque AFD est ussi un AFN. D utre prt, générlement un AFN n est ps toujours un AFD.

AFD AFN Opértions Lemme de pompge Définition Accepttion Grphe 10/ 36 Grphe de trnsition L fonction de trnsition d un AFD ou l reltion de trnsition d un AFN peuvent être représentées pr un grphe orienté ppelé grphe de trnsition. Les noeuds du grphe sont les étts de l utomte et les rcs sont étiquetés comme suit il y un rc (e, e ) étiqueté Σ si et seulement si δ(e, ) = e dns un AFD ou e δ(e, ) dns un AFN. il y des rcs multiples (e, e ) dns le grphe de trnsition si e δ(e, ) pour plusieurs crctères Σ. δ(e 0, ) = e 1 δ(e 0, ) = e 1 δ(e 1, ) = e 2 δ(e 1, ) = e 2 F = {e 1 } δ(e 2, ) = e 1 δ(e 2, ) = e 1 0, 1,, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 11/ 36 Construire un AFN à prtir d une expression régulière Pour toute expression régulière r on peut construire un AFN qui reconnît le même lngge. On construit l utomte pr induction sur l syntxe : ɛ ɛ R 1 R 2 R 1 R 2 R 1 ɛ R 2 R 1 ɛ ɛ ɛ ɛ R 2 R 1 ɛ ɛ R 1 ɛ ɛ

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 12/ 36 L expression régulière ( ) peut s écrire sous l forme d un AFN : ɛ ɛ ɛ ɛ ɛ ɛ ɛ ɛ

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 13/ 36 Théorème de Rin et Scott Pour tout AFN A il existe un AFD A tel que L(A) = L(A ). Démonstrtion Soit A = (E, Σ, δ, e 0, F ) un AFN. On construit un AFD A = (E, Σ, δ, e 0, F ) comme suit : E := P(E) e 0 := {e 0} F := {X E X F } Pour tout X E et tout Σ : δ (X, ) := x X δ(x, ) Pour démontrer que l construction est correcte il fut montrer que L(A) = L(A ).

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 14/ 36 Algorithme Initilistion : E := {{e 0 }}, T := {{e 0 }} Tnt que T Choisir un élément S T Pour tout symole Σ Clculer l étt S = S e S δ(e, ) Si S c est ps déjà dns E, l jouter dns T et dns E Ajouter un rc sur l utomte entre S et S et le vluer pr T := T \ S 0 1 2 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }} T = {{e 0 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 }

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }} T = {{e 0 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 }

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }} T = {{e 0 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 }

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }} T = {{e 0 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 } {e 0 }

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }} T = {{e 0 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 } {e 0 }

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }, {e 0, e 1 }} T = {{e 0 }, {e 0, e 1 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } 0, 1

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }, {e 0, e 1 }} T = {{e 0 }, {e 0, e 1 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } 0, 1

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 15/ 36 E = {{e 0 }, {e 0, e 1 }} T = {{e 0, e 1 }} S := {e 0 } S := δ(e 0, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0 }, ) = {e 0 } S := δ(e 0, ) = {e 0, e 1 } S n est ps encore dns E donc on l joute δ ({e 0 }, ) = {e 0, e 1 } On supprime {e 0 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } 0, 1

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }} T = {{e 0, e 1 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } 0, 1

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }} T = {{e 0, e 1 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } 0, 1

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 1 }, {e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 1 }, {e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 2 } 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 1 }, {e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 2 } 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 1 }, {e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T 0 e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 2 } 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 1 }, {e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 16/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 1 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 2 } S n est ps encore dns E donc on l joute δ ({e 0, e 1 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1 }, ) = {e 0, e 1 } On supprime {e 0, e 1 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }} T = {{e 0, e 2 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } 0 0, 1 0, 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 2 }, {e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 2 }, {e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 17/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 2 } S := δ(e 0, ) δ(e 2, ) = {e 0 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0 } S := δ(e 0, ) δ(e 2, ) = {e 0, e 1, e 3 } S n est ps encore dns E donc on l joute δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } {e 0, e 2 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } {e 0, e 2 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } {e 0, e 2 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {{e 0, e 1, e 3 }} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } {e 0, e 2 } {e 0, e 1 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 18/ 36 E = {{e 0 }, {e 0, e 1 }, {e 0, e 2 }, {e 0, e 1, e 3 }} S := {e 0, e 1, e 3 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 2 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 1, e 3 }, ) = {e 0, e 2 } S := δ(e 0, ) δ(e 1, ) δ(e 3, ) = {e 0, e 1 } S est déjà dns E donc on ne l joute ps δ ({e 0, e 2 }, ) = {e 0, e 1, e 3 } On supprime {e 0, e 2 } de T T = {} e {e 0 } {e 0 } {e 0, e 1 } {e 0, e 1 } {e 0, e 2 } {e 0, e 1 } {e 0, e 2 } {e 0 } {e 0, e 1, e 3 } {e 0, e 1, e 3 } {e 0, e 2 } {e 0, e 1 } 0 0, 1 0, 2 0, 1, 3

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 19/ 36 Suppression des ɛ-trnsitions Si on génère l AFN vec l lgorithme de l section précédente, il fut enlever les ɛ-trnsitions lors de l crétion d un AFD. Pour cel on définit quelques fonctions. Définitions ɛ fermeture(e) : ensemle des étts de l AFN ccessiles depuis l étt e de l AFN pr des ɛ-trnsitions uniquement. ɛ fermeture(t ) : ensemle des étts de l AFN ccessiles depuis un étt e pprtennt à T pr des ɛ-trnsitions uniquement. Trnsiter(T, ) : Ensemle des étts de l AFN vers lesquels il existe une trnsition sur le symole d entrée à prtir d un étt e pprtennt à T. Algorithme Il suffit de remplcer dns l lgorithme précédent les e S δ(e, ) pr ɛ fermeture(trnsiter(s, )) et initiliser E et T pr ɛ fermeture(e 0 ).

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 20/ 36 Prenons l exemple précédent : ( ) et l AFN qu on en déduit : ɛ 0 2 3 ɛ ɛ 1 6 ɛ 4 ɛ 5 ɛ 7 8 9 ɛ 10

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 21/ 36 ɛ 2 3 ɛ ɛ 0 ɛ 1 6 ɛ 7 8 9 10 ɛ 4 ɛ 5 ɛ A C B D A = ɛ fermeture(e 0) = {0, 1, 2, 4, 7} ɛ f (Trnsiter(A, )) = ɛ f ({3, 8}) = {1, 2, 3, 4, 6, 7, 8} = B ɛ f (Trnsiter(A, )) = ɛ f ({5}) = {1, 2, 4, 5, 6, 7} = C ɛ f (Trnsiter(B, )) = ɛ f ({3, 8}) = B ɛ f (Trnsiter(B, )) = ɛ f ({5, 9}) = {1, 2, 4, 5, 6, 7, 9} = D ɛ f (Trnsiter(C, )) = ɛ f ({3, 8}) = B ɛ f (Trnsiter(C, )) = ɛ f ({5}) = C ɛ f (Trnsiter(D, )) = ɛ f ({3, 8}) = B ɛ f (Trnsiter(D, )) = ɛ f ({5, 10}) = {1, 2, 4, 5, 6, 7, 10} = E ɛ f (Trnsiter(E, )) = ɛ f ({3, 8}) = B ɛ f (Trnsiter(E, )) = ɛ f ({5}) = C E

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 22/ 36 Description des lngges réguliers Théorème : Soit Σ un lphet et L un lngge sur Σ. Alors les propriétés suivntes sont équivlentes : L est un lngge régulier, c est à dire qu il y une grmmire régulière G telle que L = L(G). Il existe une expression régulière r dénotnt L. Il existe un AFN A tel que L = L(A). Il existe un AFD A tel que L = L(A ). Les démonstrtions d équivlence sont sées sur des trnsformtions constructives.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 23/ 36 Théorème de Myhill-Nerode Le théorème de Myhill-Nerode donne une condition nécessire et suffisnte pour qu un lngge soit régulier. Typiquement on utilise ce théorème pour vérifier si un lngge est régulier ou non. Définition Soit L Σ un lngge. L reltion R L sur Σ est définie pr xr L y si pour tout w Σ, soit xw L et yw L, soit xw / L et yw / L. On peut montrer que R L est une reltion d équivlence sur Σ. Le nomre de clsses d équivlences d une reltion R est ppelée indice de R. Théorème Un lngge L Σ est régulier si et seulement si l indice de R L est fini.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 24/ 36 Théorème Un résultt théorique importnt est une conséquence du théorème Myhill-Nerode. Corollire : chque lngge régulier est reconnu pr un AFD à un nomre d étts miniml, qui est unique à un renommge près des étts. On ppelle cet AFD l utomte miniml de L. Le nomre d étts de l utomte miniml est égl à l indice de R L. En effet, si les clsses d équivlence de L sont connues, on peut construire l utomte miniml de L en utilisnt les clsses de R L comme ensemle des étts. Le meilleur lgorithme connu s exécute en temps O(n log n) où n est le nomre d étts de l utomte A.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 25/ 36 Pour éviter des prolèmes techniques nous supposons que dns un AFD A = (E, Σ, δ, e 0, F ) quelconque, chque étt e une trnsition pour symole de Σ. Si δ n est ps défini pour chque couple (e, ) E Σ, lors nous pourrions introduire un nouvel «étt mort» E mort / F vec δ(e mort, ) = e mort pour chque Σ et δ(e, ) n est ps défini initilement. L fonction générlisée de trnsition d un AFD A = (E, Σ, δ, e 0, F ), notée ˆδ, est définie pr ˆδ(m, e) = e (m, e) A (ɛ, e ), où e, e E et m Σ. C est à dire ˆδ(m, e) = e si et seulement si prtnt de l AFD A dns l étt e et le fisnt fonctionner vec le mot d entrée m on termine dns l étt e. L étt e est ccessile depuis l étt de déprt e 0. On dit qu un mot m Σ distingue l étt e et l étt e de l AFD A si ˆδ(m, e) F ˆδ(m, e ) / F

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 26/ 36 Étpe 1 Construire une prtition initile π de l ensemle des étts vec deux groupes : les étts d ccepttion F et les étts de non-ccepttion E \ F. 0 π = {2, 5}, {0, 1, 3, 4} 2 3 1 4 5

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 27/ 36 Étpe 2 Appliquer l procédure ci-dessous fin de construire une nouvelle prtition π n. Pour chque groupe G de π fire : Prtitionner G en sous-groupes de mnière que deux étts e et f de G soient dns le même sous-groupe si et seulement si pour tout symole Σ, les étts e et f ont des trnsitions sur vers des étts du même groupe de π. Au pire un étt former un groupe à lui seul. remplcer G dns π n pr tous les sous-groupes insi formés. Étpe 3 Si π n = π, lors soit π f = π et continuer à l étpe 4, sinon répéter l étpe 2 vec π = π n.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 28/ 36 Notre prtition étit : π = {2, 5}, {0, 1, 3, 4}. Soit G 1 = {2, 5} et G 2 = {0, 1, 3, 4}. symole 2 5 0 1 3 4 G 2 G 2 G 2 G 1 G 2 G 1 G 2 G 2 G 2 G 2 G 2 G 2 Les trnsitions de tous les étts de G 1 vont vers les mêmes groupes, donc G 1 n est ps divisé en sous groupes. Pr contre dns G 2 il y des différences entre {0, 3} et {1, 4}. On otient donc une nouvelle prtition : π n = {2, 5}, {0, 3}, {1, 4}. On recommence l étpe 2 sur cette prtition.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 29/ 36 Notre nouvelle prtition est : π n = {2, 5}, {0, 3}, {1, 4}. Soit G 1 = {2, 5}, G 2 = {0, 3} et G 3 = {1, 4}. symole 2 5 0 3 1 4 G 2 G 2 G 2 G 2 G 1 G 1 G 3 G 3 G 3 G 3 G 3 G 3 Les trnsitions de tous les étts de tous les groupes vont vers les mêmes groupes, donc ils ne sont ps divisés en sous groupes. On peut psser à l étpe 4 vec π f = {2, 5}, {0, 3}, {1, 4}.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 30/ 36 Étpe 4 Choisir un étt dns chque groupe de l prtition π f en tnt que représentnt de ce groupe. Les représentnts seront les étts de l AFD réduit A. Soit e un étt représenttif, et supposons que dns l utomte originl A il y it une trnsition de e vers f sur. Soit r le représentnt du groupe de f (r peut être égl à f ). Alors A une trnsition de e vers r sur. L étt de déprt de A est le représentnt du groupe qui contient l étt de déprt e 0 de A. Les étts d ccepttion de A sont les représentnts des étts de F. Notons que, pour tout groupe G de π f, soit G est entièrement composé d étts de F, soit G n en contient ucun.

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 31/ 36 L prtition finle étit : π f = {2, 5}, {0, 3}, {1, 4}. Prenons 2, 0 et 1 comme représentnts. 2 est un étt finl. 0 est l étt de déprt. On otient l AFD miniml : 0 1 2

AFD AFN Opértions Lemme de pompge ER vers AFN AFN vers AFD Minimistion d un AFD 32/ 36 Étpe 5 Si A un étt mort, c est à dire un étt e qui n est ps un étt d ccepttion et qui des trnsitions vers lui même sur tous les symoles de Σ, lors supprimer e de A. Supprimer ussi tous les étts non ccessiles depuis l étt de déprt. Toutes les trnsitions vers e depuisd utres étts deviennent indéfinis. Vlidité de l lgorithme L vlidité de l lgorithme n est ps évidente. L démonstrtion se fit pr récurrence sur le nomre d étpes.

AFD AFN Opértions Lemme de pompge 33/ 36 Lemme de pompge Le lemme de pompge est un outil pour montrer qu un lngge n est ps régulier. Un lngge non régulier ne peut être ni spécifié pr une expression régulière, ni ps un AFN ou un AFD. Lemme Soit L Σ un lngge régulier. Alors il existe une constnte n N telle que pour tout m L de longueur u moins n, il existe u, v, w Σ stisfisnt : m = uvw uv n v 1 uv i w L pour chque entier i 0 Utilistion Utilisé pour montrer qu un lngge n est ps régulier.

AFD AFN Opértions Lemme de pompge 34/ 36 Démonstrtion Soit L un lngge régulier, A un AFD tel que L = L(A), et n le nomre d étts de A. Prenons un mot m L tel que m n. Il existe donc u moins un étt de A pr lequel on psse plusieurs fois lors de l reconnissnce de m. Soit q le premier étt pr lequel on psse pour l deuxième fois. Soit u le sous-mot tel que (uγ, e 0 ) A (γ, q) Soit v et w les deux sous-mots tels que (vw, q) A (w, q) vec v 1 (possile cr on psse plusieurs fois pr q). Comme q est le seul étt visité plus d une fois près l reconnissnce de uv, on en déduit que uv n. On (uγ, e 0 ) A (γ, q) et (vw, q) A (w, q), donc pr trnsitivité on peut voir (v i w, q) A (w, q) et (uv i w, q) A (w, q) i N, donc uv i w L i N.

AFD AFN Opértions Lemme de pompge 35/ 36 Lemme de pompge On v montrer que le lngge L = {0 k 1 k k N} n est ps régulier. Supposons le lngge régulier et outissons à une contrdiction. Pour cel on v construire un mot en utilisnt le Lemme et montrer qu il n est ps dns le lngge. En utilisnt le fmeux entier n du lemme, on utilise le mot 0 n 1 n qui pprtient ien à L. D près l première propriété, uvw = 0 n 1 n. D près l seconde propriété uv n, donc uv = 0 m, vec m n. D près l troisième propriété v 1. Donc v = 0 v et v 1. D près l qutrième propriété uv 2 w L. Or uv 2 w = 0 p 0 n vec p > q cr le second v jouté des 0, mis ps de 1. Et ce mot ne peut ps pprtenir à L pr l définition de L. L n est donc ps régulier.

AFD AFN Opértions Lemme de pompge 36/ 36 Ensemles non réguliers On ne peut ps décrire certins lngges pr des expressions régulières. On ne peut ps utiliser les expressions régulières pour décrire des constructions équilirées ou imriquées. Pr exemple, l ensemle des chînes de prenthèses équilirées ne peut ps être décrit pr des expressions régulières. D un utre côté, ce lngge peut être spécifié pr une grmmire hors contexte. Des chînes répétées ne peuvent ps être décrites pr des expressions régulières. L ensemle {wcw w ( ) } ne peut être dénoté ni pr une expression régulière, ni pr une grmmire hors contexte. On peut utiliser des expressions régulières pour dénoter seulement un nomre fixe ou infini de répétitions d une construction donnée. Deux nomres ritrires ne peuvent ps être comprés pour voir si ce sont les mêmes.