Théorie des automates

En informatique théorique, l'objectif de la théorie des automates est de proposer des modèles de mécanismes mathématiques qui formalisent les méthodes de calcul[1]. Cette théorie est le fondement de plusieurs branches importantes de l'informatique théorique, comme :

Les automates n'ont pas d'existence physique, mais sont un modèle abstrait.

Une façon de voir une machine de Turing.

Concepts fondamentaux de la théorie des automates

Alphabet

Un alphabet est un ensemble quelconque. Ses éléments sont appelés lettres ou symboles. Les lettres n’ont pas de propriétés particulières. On demande seulement de savoir tester si deux lettres sont égales ou différentes.

Parmi les exemples d'alphabets, il y a bien sûr l’alphabet latin, et tous les alphabets des langues naturelles. Il y a aussi l’alphabet binaire, composé des symboles 0 et 1, l’alphabet hexadécimal, l’alphabet des acides aminés, etc. En informatique, on rencontre l’alphabet des lexèmes, c’est-à-dire des unités syntaxiques résultant de l’analyse lexicale d’un programme.

Mots ou chaînes

Un mot ou une chaîne sur un alphabet est une suite finie

d'éléments de . On écrit plutôt

L'entier est la longueur du mot. Il existe un seul mot de longueur 0, appelé le mot vide, et noté souvent . Le produit de concaténation de deux mots

et

est le mot

obtenu par juxtaposition des deux mots. Le produit de concaténation est associatif, le mot vide est l'élément neutre pour cette opération, ce qui fait de l'ensemble des mots sur l'alphabet un monoïde. Ce monoïde est libre, et est noté .

Langage formel

Un langage formel sur un alphabet est un ensemble de mots sur , donc un sous-ensemble de . Les opérations ensemblistes (union, intersection, complément) s'étendent bien entendu aux langages. Le produit de concaténation des mots s'étend aux langages de la manière suivante. Si et sont deux langages sur , leur produit est le langage

Une autre opération est l'étoile de Kleene. Pour une partie de , elle est notée et est définie par

Objectif

La théorie des automates est l'étude des machines abstraites qui permettent de formaliser les méthodes de calcul. L'objet traité par un automate est un mot d'un langage. Pour arriver à la généralité souhaitée, on convertit un « problème » en un langage, et la résolution du problème, en l'analyse d'un élément de ce langage.

On représente chaque instance d'un « problème » par un mot. Savoir si l'instance du problème a une solution se ramène à tester si ce mot appartient au langage des mots représentant les instances de ce problème et qui ont une solution. Un automate qui résout le problème prend en entrée un mot et décide s'il est accepté ou non.

Par exemple, le problème de savoir si un entier N est premier (test de primalité) peut se traduire comme suit : on représente tous les entiers naturels par des chaînes binaires (écriture en base 2). Dans ce langage, les mots représentant des nombres premiers forment un sous-ensemble. Le problème du test de primalité consiste alors à savoir si la chaîne binaire représentant un nombre N appartient à ce sous-ensemble ou non. Un automate approprié prend en entrée une chaîne binaire et l'accepte précisément lorsqu'elle représente un nombre premier.

La formulation des problèmes et de leur résolution (ou même de leur calculabilité) en termes de langage formels est à la base des hiérarchies de complexité, et des hiérarchies des langages formels.

Un autre domaine concerne la transformation de mots. Dans ce domaine, on utilise plutôt le terme de « machine » ou de transducteur. La linguistique, mais aussi la compilation, font usage de tels transducteurs pour l'analyse et la transformation de textes ou de programmes.

Caractéristiques communes des automates

Il existe de très nombreux modèles d'automates. Les caractéristiques communes aux automates sont les suivantes (avec des variantes possibles) :

  • Un automate prend en entrée des données discrètes (même si certains automates, appelés automates temporisés, ont des paramètres qui peuvent être des nombres réels). Ces entrées sont généralement des mots finis sur un alphabet fini, mais ce sont aussi des mots infinis, des arbres, des graphes, ou des structures encore plus compliquées.
  • Un automate possède un nombre fini de configurations internes, appelées états. Là aussi, on peut considérer des automates ayant un nombre infini d'états : par exemple, dans la théorie générale des automates, tout langage formel possède un automate minimal unique, qui n'est fini que si le langage est rationnel. Les systèmes de transitions utilisés en model checking n'ont pas de contrainte sur le nombre d'états.
  • Un automate peut disposer, par ailleurs, d'une mémoire auxiliaire externe, structurée d'une certaine façon selon le type d'automate. Un automate fini n'a pas de mémoire auxiliaire, un automate à pile a une mémoire en pile ; il existe des automates à mémoire en structure de file, des automates à plusieurs piles, des automates à piles de pile, etc. Les machines de Turing ont une mémoire auxiliaire en forme de bande infinie sur laquelle elles peuvent se déplacer, lire et écrire.
  • Un automate évolue selon des règles. Ces règles sont en nombre fini. Chaque règle décrit, en fonction des symboles d'entrée, de l'état, et d'une information sur la mémoire auxiliaire, l'évolution de l'automate. Cette évolution peut être déterministe ou non. Elle est déterministe si une seule règle est applicable dans une configuration donnée, elle est non déterministe sinon.
  • Un automate possède un certain nombre de configurations d'acceptation. Si l'automate se trouve dans une telle configuration, la donnée lue est acceptée. Dans un automate fini, ces configurations sont des états distingués, dans un automate à pile, on peut accepter si la pile est vide, dans une machine de Turing, on accepte si l'état est acceptant.

Automates

Fig. 1 : Une hiérarchie d'automates.

Voici quelques familles d'automates.

Automates finis

Les automates finis constituent la classe la plus simple d'automates. Ils reconnaissent exactement les langages rationnels (ou réguliers). Ils sont appliqués dans de nombreux domaines, et possèdent plusieurs caractérisations, combinatoires et algébriques.

Automates sur les mots infinis

Les automates finis ont été étendus aux mots infinis. Plusieurs modèles d'automate ont été introduits et comparés. Les plus connus sont les automates de Büchi et de Muller. On connaît des caractérisations des ensembles de mots infinis reconnus par ces automates. La plus grande difficulté réside dans le fait que les notions d'automate déterministe et non déterministe ne sont plus équivalentes.

Automates temporisés

Les automates temporisés (en anglais timed automata) ont des contraintes sur les transitions qui s'expriment par des conditions sur la durée[2].

Automates probabilistes, automates quantiques

Les automates probabilistes ont été introduits très tôt (en 1963) par Michael O. Rabin. Chaque transition porte une probabilité ; les probabilités se multiplient sur les chemins, et pour qu'un mot soit accepté, il faut que la somme des probabilités sur les chemins atteigne un certain seuil. Ces automates ont été repris et étendus, dans une optique différente, par les automates quantiques.

Automates pondérés

Ces automates sont plus généraux que les automates probabilistes. Leurs transitions portent un élément d'un demi-anneau quelconque. Les automates pondérés servent par exemple dans l'énumération de structures combinatoires, ou pour modéliser la multiplicité de reconnaissance ou l’ambiguïté de génération de mots dans un automate fini.

Automates bidirectionnels

Un tel automate peut lire le mot d'entrée de la gauche vers la droite ou revenir, de la droite vers la gauche. Aussi appelé « boustrophédon » par référence au système d'écriture, un automate fini bidirectionnel ne reconnaît pas plus de langages qu'un automate fini usuel. Pour les transducteurs finis, la situation est plus complexe.

Automate alternant

Cette variation des automates finis non déterministe définit une classe qui est d'un emploi plus souple pour la spécification de programmes, dans le cadre du model checking. Un automate fini alternant peut varier son mode d'acceptation en sélectionnant les chemins à parcourir, et en combinant les résultats par des formules booléennes.

Automate séquentiel

Un automate séquentiel est un automate fini avec sortie qui est déterministe en entrée. Les fonctions calculées par les automates séquentiels sont appelées fonctions séquentielles. Même si elles n'ont pas la puissance des transductions fonctionnelles, elles permettent de réaliser des opérations comme l’addition de deux entiers, la division euclidienne d'un polynôme à coefficients dans un corps fini par un polynôme donné, et trouvent aussi des emplois en linguistique formelle.

Automate de Parikh

Un automate de Parikh est un automate fini non déterministe dont les transitions comportent des vecteurs d’entiers naturels qui permettent de tester si la somme des vecteurs d'un calcul satisfait une contrainte semi-linéaire. L'intérêt de cette famille d'automates est qu'elle possède d'autres caractérisations équivalentes, sous forme de machine de Turing particulière et sous une forme plus algébrique, dite RCM.

Modèles de Markov caché

Un modèle de Markov caché (MMC) — en anglais « Hidden Markov Models » (HMM) — (ou plus correctement automate de Markov à états cachés mais ce terme n'est pas employé) est un modèle statistique dans lequel le système modélisé est supposé être un processus markovien de paramètres inconnus. Les modèles de Markov cachés sont massivement utilisés notamment en reconnaissance de formes, en intelligence artificielle ou encore en traitement automatique du langage naturel.

Systèmes de transitions, structure de Kripke

Les systèmes de transition d'états sont une extension des automates finis à des ensembles éventuellement infinis, et sans tenir compte des conditions d'acceptation. Dans leur version la plus rudimentaire, ce sont simplement des relations binaires. Dans une version plus élaboré, ce sont des automates sans état initial et sans états terminaux. Les versions les plus complexes sont les structures de Kripke qui portent, associées aux états, des formules logiques.

Automates à pile

Les automates à pile reconnaissent exactement les langages algébriques. Le concept de pile, formalisé dans ces automates, a une portée dans de nombreux domaines, comme dans la programmation (avec la récursivité), l'analyse syntaxique, comme structure de données fondamentale. Là aussi, les automates à pile déterministe sont plus restreints que les automates généraux.

Automates à file

Les automates à file opèrent comme les automates à pile, mais utilisent comme mémoire auxiliaire une file (first in, first out) à la place d’une pile. Leurs puissance de reconnaissance est toute différente puisqu’ils sont équivalents aux machines de Turing.

Automates à pile emboîtée, à pile visible, à pile de piles

De nombreuses variantes étendant les automates à pile sont étudiés, en liaison avec les graphes infinis, et la théorie des jeux.

Automates d'arbres

Les automates finis ont été très tôt étendus aux arbres ; on distingue essentiellement les automates ascendants, qui reconnaissent les arbres en partant des feuilles et en remontant vers la racine (un peu comme dans l'évaluation des expressions arithmétiques), et les automates descendants qui opèrent dans le sens inverse. Les deux concepts sont équivalents dans le cas non déterministe. D'autres types d'automates d'arbres ont été définis, parmi lesquels les automates cheminant.

Automates cheminant dans un arbre, à jetons

Les automates cheminant ont été introduits en 1971. Ce sont des automates finis qui cheminent dans un arbre de manière séquentielle. Les automates à jetons sont une extension des automates cheminant. Ils sont moins puissant que les automates d'arbres.

Systèmes de réécriture

Un langage congruentiel est un langage formel qui est réunion d'un nombre fini de classes d'une congruence sur l'alphabet donné. Un cas important est celui où la congruence engendrée par un système de réécriture de mots fini. Selon le type du système de réécriture, la complexité algorithmique du problème du mot peut être linéaire en temps, PSPACE-complet ou indécidable. Les classes de langages congruentiels forment une autre hiérarchie de langages, incomparable à la hiérarchie de Chomsky.

Réseaux de Petri

Ces automates prennent bien en compte la possibilité d'exécuter des opérations dans un ordre indifférent. Ils sont utilisés dans la modélisation de processus.

Automates linéairement bornés

Ces automates reconnaissent exactement les langages contextuels. Ils permettent de rendre compte de certaines contraintes portant sur le contexte dans les langues naturelles, mais en linguistique, des langages et des automates plus contraints, comme les grammaires d'arbres adjoints se sont avérés plus maniables.

Machines de Turing

Tout en haut de la hiérarchie des automates se situent les machines de Turing. Introduites par Turing en 1937, elles reconnaissent exactement les langages récursivement énumérables. Ces langages, et les machines de Turing, sont utilisés comme définition mathématique de ce qui est calculable. Plusieurs autres caractérisations équivalentes sont connues. La thèse de Church (qui n'est pas un énoncé mathématique, mais une simple affirmation) dit que cette définition mathématique reflète correctement ce que le « bon sens » peut considérer comme calculable par un esprit humain. La hiérarchie de Chomsky connaît quatre types de grammaires et de langages : récursivement énumérable (type 0), contextuel (type 1), algébrique (type 2), rationnel (type 3).

Les machines de Turing et leurs variantes ont donné naissance à une hiérarchie de classes de complexité foisonnante et riche, qui cherche à classer les problèmes d'algorithmique selon leur difficulté.

Références et bibliographie

Références

  1. Hopcroft & Ullman (1979), page 1
  2. Pour une introduction, voir par exemple l'article Timed automata.

Bibliographie

  • J. C. Martin, Introduction to Languages and the Theory of Computation,, McGraw-Hill, 1997, second edition
  • Jacques Sakarovitch, Éléments de théorie des automates, Vuibert, , 816 p. (ISBN 978-2-7117-4807-5)
    Traduction anglaise avec corrections : Elements of Automata Theory, Cambridge University Press 2009, (ISBN 9780521844253)
  • Olivier Carton, Langages formels, calculabilité et complexité : licence et master de mathématiques ou d'informatique, option informatique de l'agrégation de mathématiques, Paris, Vuibert, , 237 p. (ISBN 978-2-7117-2077-4)
  • Pierre Simonnet, Automates et théorie descriptive, Université Paris-Diderot, 1992
  • Yliès Falcone et Jean-Claude Fernandez, Automates à états finis et langages réguliers : Rappels des notions essentielles et plus de 170 exercices corrigés, Grenoble, Dunod, , 320 p. (ISBN 978-2100808465)

Annexes

Articles connexes

Read other articles:

Lilies of the Fieldposter film asliSutradara Ralph Nelson Produser Ralph Nelson Ditulis oleh William Edmund Barrett James Poe PemeranSidney PoitierLilia SkalaPenata musikJerry GoldsmithSinematograferErnest Haller, ASCPenyuntingJohn McCaffertyDistributorUnited ArtistsTanggal rilis 1 Oktober 1963 (1963-10-01) Durasi94 menitNegara Amerika Serikat Bahasa Inggris Anggaran$240,000[1]Pendapatankotor$3 juta (rental)[1] Lilies of the Field adalah sebuah film tahun 1963 yang ...

 

American politician (1928–2018) Jim Spainhower39th State Treasurer of MissouriIn officeJanuary 8, 1973 – January 12, 1981GovernorKit Bond (1973-1977) Joseph P. Teasdale (1977-1981)Preceded byWilliam E. RobinsonSucceeded byMel CarnahanMember of the Missouri House of RepresentativesIn office1963–1970 Personal detailsBornAugust 3, 1928Stanberry, Missouri, United StatesDiedDecember 12, 2018(2018-12-12) (aged 90)Raymore, MissouriSpouseJoanne (Steanson) SpainhowerChildren2Alma m...

 

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (أبريل 2020) تشير متطلبات المهنيين الصحيين إلى اللوائح التي تستخدمها البلدان للتحكم في جودة العاملين الصحيين الممارسين في ولاياتها وللتحكم في حجم سوق العمل الصحي. تشمل ...

Battle of Najaf (2004)Part of the Iraq WarU.S. Army soldier looks towards the An Najaf cemetery during the battleDate5–27 August 2004(3 weeks and 1 day)LocationNajaf, IraqResult Ceasefire; Coalition Victory[1]Territorialchanges Mahdi Army withdraw from the city Coalition Forces take control of the cityBelligerents  United States United Kingdom Australia Poland Iraq Spain retired later Lt. Colonel. Fadhil al-Barwari(ISOF commander) Mahdi Army 1...

 

Drinking fountain in Victoria Park, London The Baroness Burdett Coutts Drinking Fountain The Baroness Burdett Coutts Drinking Fountain (also known as the Victoria Fountain) is a Grade II* listed drinking fountain situated in Victoria Park, London. History The fountain was designed in 1862 by Henry Astley Darbsihire and erected by Baroness Burdett Coutts at a cost of £5,000.[1] The fountain is made out of granite, and is a 28 feet (8.5 m) diameter octagon with 60 feet (18 m)...

 

Type of antihero often characterized by isolation and contemplation Byron c. 1816, by Henry Harlow The Byronic hero is a variant of the Romantic hero as a type of character, named after the English Romantic poet Lord Byron.[1] Both Byron's own persona as well as characters from his writings are considered to provide defining features to the character type. The Byronic hero first reached a very wide public in Byron's semi-autobiographical epic narrative poem Childe Harold's Pilgrimage ...

Asturian Institution Current headquarters at Oviedo Victor speaking Asturian. The Academia de la Llingua Asturiana or Academy of the Asturian Language (ALLA) is an Official Institution[1] of the Government of the Principality of Asturias that promotes and regulates the Asturian language, a language of the Spanish autonomous community of Asturias. Among its principal objectives are investigating and normalising the Asturian Language, developing a dictionary, promoting its use and educa...

 

Part of a series onHindu scriptures and texts Shruti Smriti List Vedas Rigveda Samaveda Yajurveda Atharvaveda Divisions Samhita Brahmana Aranyaka Upanishads UpanishadsRig vedic Aitareya Kaushitaki Sama vedic Chandogya Kena Yajur vedic Brihadaranyaka Isha Taittiriya Katha Shvetashvatara Maitri Atharva vedic Mundaka Mandukya Prashna Other scriptures Bhagavad Gita Agamas Related Hindu texts Vedangas Shiksha Chandas Vyakarana Nirukta Kalpa Jyotisha PuranasBrahma puranas Brahma Brahmānda Brahmava...

 

الزعاكة تقسيم إداري البلد المغرب  الجهة الرباط سلا القنيطرة الإقليم القنيطرة الدائرة سوق ثلاثاء الغرب الجماعة القروية سيدي محمد لحمر المشيخة سيدي محمد لحمر السكان التعداد السكاني 449 نسمة (إحصاء 2004)   • عدد الأسر 48 معلومات أخرى التوقيت ت ع م±00:00 (توقيت قياسي)[1]،  ...

For information on the volcano, see Kīlauea. Census-designated place in Hawaii, United StatesKīlauea, HawaiiCensus-designated placeLocation in Kauai County and the state of HawaiiCoordinates: 22°13′N 159°25′W / 22.21°N 159.41°W / 22.21; -159.41CountryUnited StatesStateHawaiiCountyKauaiArea[1] • Total5.27 sq mi (13.65 km2) • Land4.97 sq mi (12.87 km2) • Water0.30 sq mi (0.78...

 

Peta Lokasi Kota Padang Panjang di Sumatera Barat Berikut adalah daftar kecamatan dan kelurahan/desa di Kota Padang Panjang, Sumatera Barat, Indonesia. Kota Padang Panjang memiliki 2 kecamatan dan 16 kelurahan. Luas wilayahnya mencapai 23,00 km² dan penduduk 53.094 jiwa (2017) dengan sebaran 2.308 jiwa/km².[1][2] Daftar kecamatan dan kelurahan di Kota Padang Panjang, adalah sebagai berikut: Kode Kemendagri Kecamatan Jumlah Kelurahan Daftar Kelurahan 13.74.02 Padang Panjang B...

 

Rumah toko gaya arsitektur pecinan di Pasar Baru, Jakarta. Toko atau kedai adalah sebuah tempat tertutup yang di dalamnya terjadi kegiatan perdagangan dengan jenis benda atau barang yang khusus, misalnya toko buku, toko buah, dan sebagainya. Secara fungsi ekonomi, istilah toko sesungguhnya hampir sama dengan kedai atau warung. Akan tetapi pada perkembangan istilah, kedai dan warung cenderung bersifat tradisional dan sederhana, dan warung umumnya dikaitkan dengan tempat penjualan makanan dan m...

Luigi Armando di Borbone-ContiRitratto del principe Luigi Armando di Borbone-ContiPrincipe di ContiStemma In carica12 febbraio 1666 –9 novembre 1685 PredecessoreArmando SuccessoreFrancesco Luigi Nome completoLouis Armand de Bourbon NascitaHôtel de Conti, Parigi, 4 aprile 1661 MorteFontainebleau, 9 novembre 1685 (24 anni) DinastiaBorbone-Conti PadreArmando di Borbone, principe di Conti MadreAnna Maria Martinozzi ConsorteMaria Anna di Borbone, Légitimée de France ReligioneC...

 

Kwartir Daerah Riau Lambang Kwartir daerah Riau Negara Indonesia Kantor Jl. P. Diponegoro 15 Sukaramai Pekanbaru Website Resmi Kwartir Daerah Riau Kwartir Daerah Riau adalah nama struktur organisasi pendidikan kepanduan yang dilaksanakan di Indonesia. Kata Kwartir Daerah Riau atau disingkat dengan Kwartir Daerah Riau, merupakan Strukur Organisasi Pramuka di bawah Presiden Kwartir Nasional Kwartir Daerah merupakan organisasi gerakan pramuka di provinsi dan mempunyai tugas memimpin dan mengenda...

 

Regency of Indonesia Regency in Central JavaCilacap Regency Kabupaten CilacapRegencyOther transcription(s) • Javaneseꦏꦨꦸꦥꦠꦺꦤ꧀ꦕꦶꦭꦕꦥ꧀ • Sundaneseᮊᮘᮥᮕᮒᮦᮔ᮪ ᮎᮤᮜᮎᮕ᮪ Coat of armsLocation within Central JavaCilacap RegencyLocation in Java and IndonesiaShow map of JavaCilacap RegencyCilacap Regency (Indonesia)Show map of IndonesiaCoordinates: 7°44′S 109°0′E / 7.733°S 109.000°E / -7.733;...

Genus of cacti Micranthocereus Micranthocereus estevesii Scientific classification Kingdom: Plantae Clade: Tracheophytes Clade: Angiosperms Clade: Eudicots Order: Caryophyllales Family: Cactaceae Subfamily: Cactoideae Tribe: Cereeae Subtribe: Cereinae Genus: MicranthocereusBackeb.[1] Type species Micranthocereus polyanthus Species See text. Synonyms[1] Austrocephalocereus Backeb. Siccobaccatus P.J.Braun & Esteves [es] Micranthocereus is genus of cactus. It ori...

 

Candi SumurBangunan candi tampak samping.Location within JawaInformasi umumGaya arsitekturCandi Jawa TimuranKotaSidoarjo, Jawa Timur.NegaraIndonesiaData teknisUkuran8 x 8 x 10 m Candi Sumur adalah sebuah peninggalan masa Klasik yang terletak di Kabupaten Sidoarjo. Sejarah Menurut laporan J. Knebel dalam “Repporten Van De Comissie In Nederlandsch Indie voor Oudheidkundig Onderzoek Op Java en Madoera” 1905-1906[1] Candi Sumur, juga Candi Pari, dibangun untuk mengenang tempat hilangn...

 

Questa voce o sezione sull'argomento compositori statunitensi non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Cole Porter Cole Albert Porter (Peru, 9 giugno 1891 – Santa Monica, 15 ottobre 1964) è stato un compositore statunitense, uno dei 5 grandi del musical americano insieme a George Gershwin, Irving Berlin, Jerome Kern e la coppia Richard Rodgers &...

Law of the oceans and their use Admiralty law History Code of Hammurabi Corpus Juris Civilis Digesta Ordinamenta et consuetudo maris Amalfian Laws Hanseatic League Features Maritime transport Shipping/Ferry Cargo Freight Passenger Merchant marine Cargo ship Passenger ship Owner Mortgage Registration Marine insurance Act of God Cargo Collision Construction General average Seaworthiness Total loss Contract of carriage/Charterparty Affreightment Agency Bill of lading Brokerage Chartering Consign...

 

Australian rules footballer Australian rules footballer Jesse Hogan Hogan with Melbourne in April 2018Personal informationFull name Jesse HoganDate of birth (1995-02-12) 12 February 1995 (age 28)Place of birth Perth, Western AustraliaOriginal team(s) Claremont Football Club (WAFL)Draft No. 2, 2012 mini-draftDebut Round 1, 2015, Melbourne vs. Gold Coast, at MCGHeight 196 cm (6 ft 5 in)Weight 100 kg (220 lb)Position(s) Key forwardClub informationCurrent&#...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!