Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Machine abstraite — Wikipédia
Machine abstraite — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
Page d’aide sur l’homonymie

Ne doit pas être confondu avec machine virtuelle ou machine à états abstraits.

Articles connexes : théorie des automates et automate fini.

En informatique théorique, et notamment en théorie des automates, un automate abstrait ou une machine abstraite est un modèle théorique d'un ordinateur digital et discret. Il importe peu, dans ce cadre, de savoir si cet appareil peut effectivement être construit, mais plutôt d'appréhender, par ce modèle simplifié, le fonctionnement des machines, et de les comparer entre eux.

La notion d'automate ou de machine abstraite, aussi appelé « modèle de machine »[1] joue un rôle central en informatique théorique. Ainsi, en théorie de la calculabilité et en théorie de la complexité les automates modélisent la notion centrale de calcul. Les automates jouent aussi un rôle déterminant en informatique pratique, par exemple dans la définition du langage intermédiaire durant la construction des compilateurs et plus généralement comme modèle pour la description du fonctionnement de programmes informatiques. En électronique numérique les automates servent dans les circuits de commande ou dans les systèmes hybrides. De tels automates de commande ont des applications en architecture matérielle, en réseau informatique et dans les systèmes réactifs.

Description

[modifier | modifier le code]

En général, une machine abstraite consiste en données d'entrée, en données de sortie et en un ensemble d'opérations autorisées pour transformer les entrées en sorties. On peut considérer les possibilités de transitions internes qui régissent le comportement d'une machine comme le programme informatique qui la dirige.

La machine de Turing est historiquement la première machine abstraite imaginée et c'est par conséquent la plus connue. D'autres exemples sont les types abstraits dont le comportement peut être défini par leur sémantique opérationnelle; l'illustration la plus simple est la spécification d'une pile (informatique) à l'aide d'un tableau (informatique).

Une machine abstraite peut aussi être un projet de microprocesseur pas encore réalisé, ou servant seulement de modèle. Une machine abstraite implémentée par un logiciel de simulation ou pour laquelle un interprète existe, est appelée une machine virtuelle.

Des définitions plus complexes consistent en des machines abstraites avec un jeu d'instructions complet, des registres et un modèle de mémoire. Un tel modèle fréquemment mentionné est la random access machine (ou RAM) qui permet un accès direct à la mémoire. L'accès à la mémoire externe, ou à la mémoire en cache, joue un rôle croissant dans la conception d'algorithmes, et conduit au modèle des cache-oblivious algorithm (en).

Dans certaines définitions[2], une machine abstraite est un logiciel qui permet, comme une machine, d'exécuter un programme (d'où le terme « machine »), mais pas à pas, et en omettant certains détails (d'où le qualificatif « abstraite »). Aux deux extrêmes, on trouve un langage intermédiaire de compilation avec une sémantique opérationnelle de bas niveau, ou au contraire la conception d’un ordinateur encore en projet. Pris dans ce sens, tout langage de programmation porte en lui un modèle de calcul qui décrit comment l’exécution d'un programme doit être réalisée, et ce modèle est une machine abstraite.

Le terme « machine virtuelle » peut être utilisé[2] pour l'implémentation de machines abstraites, un peu comme un programme peut être vu comme une implémentation d'un algorithme. Dans les systèmes d'exploitation, plusieurs niveaux d'abstraction sont appelés « virtuels ».

Théorie des machines abstraites

[modifier | modifier le code]

Dans la théorie, on distingue les accepteurs des transducteurs. Les premiers jugent de la pertinence de la donnée, et répondent par « oui » ou par « non » selon que la donnée est correcte ou non. Les deuxièmes transforment les données d'entrée en données de sortie; ils sont plus proches des calculateurs.

En théorie toujours, on distingue des machines déterministes des machines non déterministes ; si les premières ont toujours un comportement déterminé par la donnée et par la configuration dans laquelle elles se trouvent, les deuxièmes peuvent avoir au contraire le choix entre plusieurs actions dans certaines situations. Des variations de ces automates non déterministes sont les automates pondérés, parmi lesquels les automates stochastiques, qui mesurent le degré de non-déterminisme respectivement le considèrent comme probabilité. On distingue aussi les machines séquentielles et les machines parallèles.

La hiérarchie de Chomsky introduit une première classification, en définissant les concepts de :

  • machine de Turing,
  • automate linéairement borné,
  • automate à pile,
  • automate fini.

Cette hiérarchie a été depuis raffinée et ramifiée, par exemple par extension à des structures autres que les mots, par des automates sur les arbres, sur les graphes ou sur des structures de calcul (comme les λ-termes). D'autres variations concernent le support de l’information, comme :

  • machines de Turing à plusieurs bandes, ou opérant en deux dimensions ;
  • automates cellulaires
  • réseaux de neurones artificiels
  • réseaux de Petri
  • automates sur les mots infinis

Les modèles de machine équivalentes aux machines de Turing ont eux-mêmes été comparés quant à leur efficacité. La « thèse d'invariance », dans la formulation de van Emde Boas[1] stipule que deux modèles de machine « raisonnables » peuvent être simulés l'un par l'autre dans un temps polynomialement borné et avec une proportion constante de place additionnelle. Concernant les modèles parallèles, la « thèse du calcul parallèle »[1] stipule que tout ce qui peut être résolu en espace polynomial sur une machine séquentielle raisonnable peut être résolu en temps polynomial sur une machine parallèle raisonnable, et vice-versa.

Autres machines abstraites

[modifier | modifier le code]
  • Machine à états abstraits
  • Machine de Gandy[3]
  • Automate fini
  • Specification and Description Language
  • Warren's Abstract Machine
  • MMIX
  • MikroSim (en)
  • Ten15 (en)
  • TenDRA Distribution Format (en)
  • Parallel random access machine

Machines liées au lambda-calcul

[modifier | modifier le code]
  • Categorical Abstract Machine Language
  • Machine de Krivine
  • Machine SECD

Notes et références

[modifier | modifier le code]
  1. ↑ a b et c van Emde Boas 1990.
  2. ↑ a et b Diehl, Hartel et Sestoft 2000.
  3. ↑ Wilfried Sieg, 2005, Church without dogma: axioms for computability, Carnegie Mellon University
(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Abstract machine » (voir la liste des auteurs).

Bibliographie

[modifier | modifier le code]
  • Peter van Emde Boas, « Machine Models and Simulations », dans Jan van Leeuwen (éditeur), Handbook of Theoretical Computer Science. Volume A: Algorithms and Complexity, The MIT PRESS/Elsevier, 1990, 1003 p. (ISBN 9780444880710), p. 1–66.
  • Stephan Diehl, Pieter Hartel et Peter Sestoft, « Abstract machines for programming language implementation », Future Generation Computer Systems, vol. 16, no 7,‎ mai 2000, p. 739-751 (DOI 10.1016/s0167-739x(99)00088-6, lire en ligne).
  • (en) Abstract Computing Machines : A Lambda Calculus Perspective, Berlin, Heidelberg, Springer, 2006, 384 p. (ISBN 978-3-540-27359-2, lire en ligne)
  • (en) Werner Kluge, Abstract Computing Machines : A Lambda Calculus Perspective, Berlin, Heidelberg, Springer Science & Business Media, 2006, 384 p. (ISBN 978-3-540-27359-2, lire en ligne)
  • David B. Skillicorn, Foundations of Parallel Programming, Cambridge University Press, 2005, 212 p. (ISBN 978-0-521-01856-2, lire en ligne).

Articles liés

[modifier | modifier le code]
  • Abstraction
  • Interprétation abstraite
  • NP
  • Thèse de Church
  • Calculabilité
  • Théorie des automates
  • Automate fini non déterministe
  • Automate fini déterministe
v · m
Automates finis et langages réguliers
Articles généraux
  • Théorie des automates
  • Automate fini
  • Machine abstraite
Automates finis
  • Automate fini déterministe
  • Automate fini inambigu
  • Automate fini non déterministe
  • Construction par sous-ensembles
  • Automate sur les mots infinis
Automates finis particuliers
  • Automate alternant
  • Automate bidirectionnel
  • Automate pondéré
  • Automate probabiliste
  • Automate quantique
  • Automate temporisé
  • Automate de Büchi
  • Automate de Muller
  • Modèle de Markov caché
  • Système de transition d'états
  • Structure de Kripke
  • Machine à états abstraits
  • Machine de Mealy
  • Machine de Moore
  • Transducteur fini
  • Automate séquentiel
Langages réguliers
  • Langage rationnel
  • Langage sans étoile
  • Langage local
  • Langage congruentiel
  • Langage stochastique
  • Lemme de l'étoile
  • Lemme d'Arden
  • ω-langage rationnel
Des automates aux langages
  • Expression régulière
  • Algorithme de Conway
  • Algorithme de McNaughton et Yamada
  • Méthode de Brzozowski et McCluskey
Des langages aux automates
  • Dérivée de Brzozowski
  • Algorithme de Thompson
  • Construction de Glushkov
  • Complexité en états
Minimisation
  • Théorème de Myhill-Nerode
  • Équivalence de Nerode
  • Minimisation d'un automate fini déterministe
  • Algorithme de Moore
  • Algorithme de Brzozowski
  • Algorithme de Hopcroft
Équivalences
  • Théorème de Kleene
  • Étoile de Kleene
  • Monoïde syntaxique
  • Théorème des variétés d'Eilenberg
  • icône décorative Portail de l’informatique
  • icône décorative Portail de l'informatique théorique
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Machine_abstraite&oldid=229473008 ».
Catégories :
  • Théorie des automates
  • Calculabilité
  • Modèle de calcul
Catégories cachées :
  • Article contenant un appel à traduction en anglais
  • Portail:Informatique/Articles liés
  • Portail:Technologies/Articles liés
  • Portail:Informatique théorique/Articles liés
  • Portail:Mathématiques/Articles liés
  • Portail:Sciences/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id