ebook img

un langage de programmation (ada, c, java, etc.) PDF

99 Pages·2009·0.74 MB·French
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview un langage de programmation (ada, c, java, etc.)

Théorie des langages PierreBerlioux,MnachoEchenimetMichelLévy 30novembre2009 2 Table des matières I Langages,relations 9 1 Chaînesetlangages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.1 Vocabulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2 Chaîne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.2 Longueurd’unechaîne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.3 Ensembledeschaînessurunvocabulaire . . . . . . . . . . . . . . . . . . . . . . . 10 1.3 Sous-chaîne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.4 Concaténation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.5 Monoïde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.6 Monoïdelibre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.6.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.6.2 Homomorphismedemonoïdes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.6.3 Unicitédumonoïdelibre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.7 Élévationàlapuissance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.8 Langage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.9 Opérationssurleslangages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.9.1 Opérationsensemblistes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.9.2 Concaténationetconcaténationitérée . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.9.3 Expressionsrégulières . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2 Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2 Opérationssurlesrelations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2.1 Opérationsensemblistes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2.2 Compositiondesrelations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.2.3 Fermeturetransitived’unerelation . . . . . . . . . . . . . . . . . . . . . . . . . . 15 II Systèmesderéécriture,Grammaires 17 1 Définitionsdeslangages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2 Systèmesderéécriture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 Relationsdedérivationdansunsystèmederéécriture . . . . . . . . . . . . . . . . . . . . . . 18 2.3 Exemplesdesystèmesderéécriture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4 Propriété(compositiondesdérivations) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3 Grammaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.2 Langageengendréparunegrammaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3 Classificationdesgrammaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3.1 Grammairesgénérales(detype0) . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3.2 Grammairessous-contexte(detype1) . . . . . . . . . . . . . . . . . . . . . . . . 20 3 3.3.3 Grammaireshors-contexte(detype2) . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3.4 Grammaireslinéairesàdroite,grammaireslinéairesàgauche(detype3) . . . . . . 20 3.3.5 Définitionsetpropriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3.6 Problèmesdécidables-problèmesindécidables . . . . . . . . . . . . . . . . . . . 21 3.3.7 Choixd’unformalisme(classededéfinitions)pourdéfinirunlangagedeprogram- mation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.4 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.4.1 Définition des nombres réels sans signe d’un langage de programmation avec une grammairehors-contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.4.2 Langage{anbn|n≥1} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.4.3 Langagedesparenthèsesdesexpressions . . . . . . . . . . . . . . . . . . . . . . . 22 3.4.4 Grammaireengendrantlesexpressionsrégulièressur{a,b} . . . . . . . . . . . . . 22 3.4.5 Langage{anbncn|n≥1}. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.5 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 III Grammaireshors-contexte 27 1 Propriétéfondamentale(décompositiondesdérivationshors-contexte) . . . . . . . . . . . . . . . . . 27 2 Dérivationsindicéesdansunegrammairehors-contexte . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.1 Dérivationsindicéesgauches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2 Dérivationsgauches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3 Décompositiondesdérivationsindicéesgauches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4 Arbrededérivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5 Ambiguïté . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 IV Automatesfinis 35 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2 Automatesfinisetlangages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3 Décompositiondestraces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4 Automatesfinissansε-transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5 Automatesfinisdéterministes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 6 Constructiondesautomatesdéterministes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 7 MachinesdeMealyetdeMoore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 V Equivalencedesautomatesfinisetdesexpressionsrégulières 45 1 Toutlangagerégulierestreconnuparunautomatefini . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2 Toutlangagereconnuparunautomatefiniestunlangagerégulier . . . . . . . . . . . . . . . . . . . 48 3 Systèmed’équationsassociéàunautomatefini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 VI Automatesfinisdéterministesminimaux 53 1 Constructiondel’automateminimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2 Calculdelarelationd’équivalenceentrelesétatsd’unautomate . . . . . . . . . . . . . . . . . . . . 55 3 Unicitédel’automateminimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.1 Propriétésdelacatégoriedesautomates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4 AutomateminimaletthéorèmedeMyhill-Nérode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 VIIDéfinitiondelangagesparinduction 65 1 Exemplesdedéfinitionsinductivesdelangages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 2 Théorèmesdupointfixe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.1 Ordrefaiblementcomplet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.2 Ordrecomplet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 2.3 Treillisfinis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3 Langagesalgébriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4 Équivalenceentrelangagesalgébriquesethors-contextes . . . . . . . . . . . . . . . . . . . . . . . . 71 4 5 Transformationdesystèmesd’équations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.1 Substitutionsimple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.2 Substitutiongénérale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 VIIITransformationsdesgrammaireshors-contexte 77 1 Rappelsduchapitreprécédent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 1.1 Grammairesetéquations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 1.2 Dessubstitutions,quipréserventleslangages . . . . . . . . . . . . . . . . . . . . . . . . . . 78 1.3 Treillisfinietcalculdepointsfixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 2 Réductiond’unegrammairehors-contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 2.1 Calculdel’ensembledessymbolesproductifs . . . . . . . . . . . . . . . . . . . . . . . . . . 78 2.2 Calculdel’ensembledel’ensembledessymbolesaccessibles . . . . . . . . . . . . . . . . . 79 2.3 Constructiond’unegrammaireréduite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 3 Éliminationdesε-règles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4 Éliminationdes1-règles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 5 FormenormaledeChomsky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 6 Grammaireshors-contexterécursives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 7 Éliminationdesrèglesdirectementrécursiveàgauche . . . . . . . . . . . . . . . . . . . . . . . . . . 86 8 Éliminationdelarécursivitéàgauche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 9 FormenormaledeGreibach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 IX Conditionsd’unicitédessystèmesd’équation 93 1 Systèmestrict . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 2 Conditionsnécessairesetsuffisantesd’unicité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 3 Problèmesdedécision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.1 Leproblème«unsystèmeest-ilriche?»estindécidable . . . . . . . . . . . . . . . . . . . . . 97 3.1.1 Systèmeriche:rappel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 3.2 Indécidabilitéduproblème«unsystèmeest-ilriche?» . . . . . . . . . . . . . . . . . . . . . 97 3.2.1 Leproblème«unsystèmea-t-iluneseulesolution?»estrelativementdécidable . . 98 References 99 5 6 Introduction Le terme «langage» désigne d’une part les langues naturelles - sous leur forme parlée et écrite, d’autre part les systèmes de notations - les formalismes - utilisés dans diverses sciences comme les mathématiques, la logique, la chimie,etc.etenparticuliereninformatique(leslangagesdeprogrammationparexemple).Toutlangagecomprend unensembled’objetsélémentaires,quel’onpeutcomposerpourconstituerdesunitésquiontunsens.Lacomposition desobjetsélémentairesestleplussouventunsimpleenchaînementlinéaire(uneconcaténation);lesunitésquiontun senssontalorsdessuitesfiniesd’objetsélémentaires.Cettepropriétépourunmêmelangagepeutserépéteràplusieurs niveaux. Ainsi dans une langue naturelle écrite, un mot est une suite de lettres (niveau lexical); une phrase est une suitedemots(niveausyntaxique);untexteestunesuitedephrases(niveaududiscours). Ladéfinitiond’unlangageàunniveaudonnéestladéfinition 1. del’ensembledesobjetsélémentaires(le«vocabulaire»oul’«alphabet»dulangageduniveauconsidéré) 2. del’ensembledessuitesd’objetsélémentairesayantunsens(la«syntaxe») 3. des sens de ces suites (la «sémantique»). La définition d’un langage utilise elle-même un langage (souvent appelé«métalangage»),quipeutêtreunelanguenaturelleouunformalisme.Lelangagedéfiniestparfoisutilisé commemétalangage. Exemple1 :lefrançaisécrit. Niveau lexical (ou lexicographique) : les objets élémentaires sont les lettres de l’alphabet, les unités ayant un sens desmots.UndictionnairecommeleRobertdonneunedéfinitionlexicographiquedefrançais:énumérationdesmots, définition - en français - des sens de chaque mot. Un dictionnaire français-anglais donne aussi une définition lex- icographique du français, les sens des mots français étant définis par leurs traductions en anglais. Au niveau mor- phologique,lesmotssontconsidéréscommedessuitesd’objetsélémentairesquisonteux-mêmesdessuitesdelettres appartenantàdescatégoriesgrammaticalescommepréfixe,suffixe,racine,désinence,etc. Niveau syntaxique : les objets élémentaires sont les mots et les signes de ponctuation, les unités ayant un sens les phrases.Unegrammairecommele«bonusage»deGrevissedonneunedéfinitiondufrançaisauniveausyntaxique: elle définit les phrases correctes et leur sens au moyen de règles exprimées en français, avec des termes techniques comme«adjectif»,«substantif»,«masculin»,«subordonnée»,«relative»,etc.Ladéfinitiondesphrasescorrectessans référenceàleurssensconstituel’aspectformel(ousyntaxiqueproprementdit)delagrammaire. Ladéfinitiondusensdesphrasesconstituelasémantique.Notonsqu’auniveausyntaxiquelesobjetsélémentaires (lesmots)ontunsens,etquelesensd’unephraseestfonctiondusensdesmotsquilacomposent.Ilenestdemême auniveaumorphologique,oùlesensd’unmotestfonctiondessensdesobjetsélémentaires(préfixes,racines,etc)qui lecomposent.Parcontreauniveaulexical,leslettresn’ontpasdesens,etlesensd’unmotestarbitraire. Exemple2 :lefrançaisparlé. Unmot(ouunephrase)prononcéestunesuitecontinuedesons.L’alphabetphonétiquedéfinitunensembledenota- tionsdesonsélémentairestelquel’onpuisseconsidérertoutmot(outoutephrase)prononcécommeunesuitediscrète detelsobjetsélémentaires. Exemple3 :unlangagedeprogrammation(Ada,C,Java,etc.) Les objets élémentaires sont les symboles de base (lettres de l’alphabet, chiffres, caractères spéciaux) dont la liste 7 est donnée explicitement. Les unités ayant un sens sont les programmes. Ceux-ci sont définis par des diagrammes syntaxiques (ou des formes normales de Backus) complétées par des conditions supplémentaires (par exemple sur les déclarations des identificateurs) qui sont souvent exprimées en langue naturelle. Le sens des programme est lui aussisouventdéfinienlanguenaturelle.Unetelledéfinitionestunmélangededéfinitionsformelles(lesdiagrammes syntaxiques)etdedéfinitionsinformelles(lesparagraphesenlanguenaturelle).Onpeutaussidonnerdesdéfinitions formelles (c’est-à-dire n’utilisant pas la langue naturelle) des langages de programmation. Par exemple le sens d’un programme peut-être défini en lui associant une formule mathématique définisssant la fonction qu’il calcule, ou un programmeéquivalentdansunautrelangagedeprogrammation-ainsiuncompilateurdéfinitlesensd’unprogramme partraductiondansunlangagemachine.Onpeutencoredéfinirformellementlasémantiqued’unlangageaumoyen d’uninterpréteurdecelangage,lesensd’unprogrammeestalorsl’ensembledesesexécutionspourtouteslesdonnées possibles. L’interpréteur est un programme qui peut être écrit dans un autre langage de programmation ou dans le langagedéfini. Notonsquelemot«formel»signifiecouramment«expriméenlangagemathématique»,ouplusgénéralement«ex- primédansunformalisme»(c’est-à-diredansunlangageartificielrigoureusementdéfini),«informel»signifiant«ex- priméenlanguenaturelle»(c’estainsiqu’ilfautcomprendrelestermes«définitionformelle»,«définitioninformelle»); cependantonentendparlangageformelunlangageconsidérécommeunensembledesuitesd’objetsélémentaires,ab- stractionfaitedusensdecessuites.Cetaspectformeldeladéfinitiond’unlangageestaussiappeléaspectsyntaxique etdoitêtrecomplétéparladéfinitiondusensdesunitésdulangage,cequiconstituel’aspectsémantique. L’objetdececoursestl’étudedeformalismesutiliséspourladéfinitionsyntaxiquesdelangagesartificielscomme leslangagesdeprogrammationoulessystèmesdenotationsmathématiquesetlogiques.Cesformalismessontaussi utiliséspourétudierleslanguesnaturelles,maiscesapplicationsneserontpasdéveloppées. Lapremièrepartiedecepolycopiéestuneintroductionàlathéoriedeslangagesformels.Unlangageformelest unensembledesuitesd’objetsélémentaires,quiselonlelangagedéfini,etleniveauauquelonseplace,peuventêtre deslettres,desmots,dessymboles,descaractères,etc.Touscesensemblesd’objetélémentairesontencommunlefait d’êtrefinis,etsontappelésvocabulaire(oualphabet).Unlangageformelestunensembledesuitesfinies(dechaînes) d’éléments de son vocabulaire. Les opérations de base sur les chaînes et les langages sont définies au chapitre I, où sont aussi données des propriétés élémentaires de la notion de relation, qui joue un rôle important dans la suite. La notion de langage comme ensemble de chaînes est trop générale : un langage doit de plus satisfaire des conditions d’effectivité pour pouvoir être traité par des machines physiques (cas des langages de programmation), ou abstraite (casdessystèmesdenotationslogiques),ouêtrecompriseténoncéparunepersonne(casdeslanguesnaturelles,des systèmesdenotationsmathématiques,deslangagesdeprogrammationévolués,etc).Lanotiondesystèmederéécriture estlanotiondebasepourladéfinitiondesmachinesabstraitescommelesmachinesdeTuring,etdesautomatesetdes grammairesutiliséspourlareconnaissanceetlagénérationdeslangagesformels(chapitreII).Lesgrammaireslesplus utiliséessontlesgrammaireshors-contexte,quisontétudiéesauchapitreIII.Onétudieensuite(chapitresIV,V,VI)les automatesfinisetleslangagesréguliers. La deuxième partie (chapitre VII : définition d’ensembles par récurrence) comprend une étude des théorèmes du point fixe qui sont à la base de telles définitions et une étude des systèmes d’équations définissant les langages hors-contexte. La troisième partie (compléments sur les langages hors-contexte), comprend une étude des grammaires hors- contexteetdeleursformesnormales(chapitreVIII),uneétudedepropriétésimportantesdeslangageshors-contextes (chapitre IX), et une étude des automates à pile, qui sont les automates associés aux grammaires hors-contextes (chapitreX). Laquatrièmepartie(Introductionàlathéoriedelacalculabilité)comprendunchapitreoùsontdéfinieslesma- chines de Turing et démontrées leurs propriétés de base (chapitre XI), et un chapitre consacré aux problèmes de décisionpourleslangageshors-contextesetleslangagesrécursivementénumérables(chapitreXII). 8 Chapitre I Langages, relations 1 Chaînes et langages 1.1 Vocabulaire On appelle vocabulaire (ou alphabet) un ensemble fini quelconque. Les éléments d’un vocabulaire sont appelés lettres,caractèresousymboles.Onnote#Vlenombred’élémentsd’unvocabulaireV. 1.2 Chaîne 1.2.1 Définition Onappellechaîne(oumot,ouphrase)surunvocabulaireV toutesuitefiniea ,a ,...,a d’élémentsdeV.Onnote 1 2 n usuellementunechaîneenécrivantenséquence,sansséparateur,leslettresquilacomposent. Exemple1.1 abaestunechaînesurlevocabulaire{a,b}. débutx:=1finestunechaînesurlevocabulaire{début,fin,:=,1,x},qu’ilestpréférabled’écrireenutilisantl’espace commeséparateur:débutx:=1fin. Remarque1.1 Un vocabulaireV peut être un ensemble fini de chaînes, comme dans le second exemple ci-dessus. L’écrituredeschaînessurV sansséparateursentrelesélémentsdeV peutalorsproduiredesambiguïtés.Parexemple, siV={a,aa},ilfautunséparateurpourdistinguerlesdeuxchaînesa,aaetaa,a. 1.2.2 Longueurd’unechaîne Onappellelongueurd’unechaînelenombred’élémentsdelasuiteladéfinissant.Lalongueurd’unechaînexsera notée|x|. Aveclesexemplesci-dessus,ona:|aba|=3et|débutx:=1fin|=5. Parconvention,ilexisteunechaînedelongueur0,lachaînevide,notéeε. Etant donné un vocabulaire V, on note Vn, où n est un entier positif ou nul, l’ensemble des chaînes sur V de longueurn.Onalespropriétéssuivantes: – V0={ε}:lachaînevideestunechaînesurtoutvocabulaire. – V1=V :leschaînesdelongueur1sontidentifiéesauxlettres. Exercice1.1 MontrerquesiV (cid:54)=0/,Vncomprend(#V)néléments. 9 1.2.3 Ensembledeschaînessurunvocabulaire EtantdonnéunvocabulaireV,onnoteV∗ l’ensembledeschaînessurV,etV+ l’ensembledeschaînesnonvides surV.Autrementdit,V∗=S VietV+=S Vi. i≥0 i>0 Propriété1.1 – SiV (cid:54)=0/ alorsV∗estinfini. – 0/∗={ε}. 1.3 Sous-chaîne EtantdonnéunechaînewsurunvocabulaireV,unechaîneuestunesous-chaînedews’ilexistex,y∈V∗telsque w=xuy.Lasous-chaîneuestunpréfixedewsix=ε;unsuffixedewsiy=ε. Exemple1.2 Lachaîneabbaadmetlessous-chaînesε,a,b,ab,bb,ba,abb,bba,abba.Ilexistedeuxoccurrencesde chacunedessous-chaînesaetb.Lespréfixesdeabbasontε,a,ab,abbetabba;sessuffixessontε,a,ba,bbaetabba. Exercice1.2 1. Déterminerlesnombresmaximaletminimaldesous-chaînes,depréfixesetdesuffixesd’unechaînedelongueur donnée. 2. Montrerquetoutechaînesur{a,b},delongueursupérieureouégaleà4,admetdeuxoccurrencesconsécutives d’unemêmesous-chaînenonvide. 1.4 Concaténation Laconcaténationestl’opérationquiassocieàdeuxchaînesxetylachaînenotéex.youxydéfiniepar: six=a ,a ,...,a ety=b ,b ,...,b alorsx.y=c ,c ,...,c , 1 2 n 1 2 p 1 2 n+p avecc =a pouri=1,...netc =b pouri=1,...p. i i n+i i Parexemple,laconcaténationdeschaînesabaetcabdonnelachaîneabacab. On vérifie facilement que la concaténation est une opération associative admettant la chaîne vide comme élément neutre.Soit: – ∀x,y,z∈V∗x.(y.z)=(x.y).z – ∀x∈V∗x.ε=ε.x=x. 1.5 Monoïde Onappellemonoïdeunensemblemunid’uneopérationassociativeadmettantunélémentneutre.Unmonoïdeest représenté par un triplet <E,.,i>, où E est l’ensemble considéré, (cid:48)(cid:48).(cid:48)(cid:48) est l’opération associative sur E et i∈E est l’élémentneutredecetteopération. PourtoutvocabulaireV,<V∗,.,ε>estdoncunmonoïde. Commeexempled’autresmonoïdes,citons<N,+,0>et<N,.,1>,où+et.dénotentrespectivementl’additionet lamultiplicationdesentiers. 1.6 Monoïdelibre 1.6.1 Définition SoitV unvocabulairequelconque.LemonoïdeV∗possèdelesdeuxpropriétéssuivantes: 1. toutélémentdeV*estunesuited’élémentsdeV 2. deuxsuitesdistinctesd’élémentsdeVdéfinissentdeuxélémentsdistinctsdeV*. 10

Description:
Équivalence entre langages algébriques et hors-contextes première partie de ce polycopié est une introduction à la théorie des langages formels.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.