Arbre enracinéEn théorie des graphes, un arbre enraciné ou une arborescence est un graphe acyclique orienté possédant une unique racine, et tel que tous les nœuds sauf la racine ont un unique parent. En informatique, c'est également une structure de données récursive utilisée pour représenter ce type de graphes. Dans un arbre, on distingue deux catégories d'éléments : les feuilles (ou nœuds externes), éléments ne possédant pas de fils dans l'arbre ; les nœuds internes, éléments possédant des fils (sous-branches).
Arborescencethumb|Exemple de représentation arborescente En mathématiques, plus précisément dans la théorie des graphes : une arborescence est un arbre comportant un sommet particulier , nommé racine de l'arborescence, à partir duquel il existe un chemin unique vers tous les autres sommets. En informatique, cette notion désigne souvent celle d'arbre de la théorie des graphes. Une arborescence désigne alors généralement une organisation des données en mémoire, de manière logique et hiérarchisée, utilisant une structure algorithmique d'arbre.
Concurrency controlIn information technology and computer science, especially in the fields of computer programming, operating systems, multiprocessors, and databases, concurrency control ensures that correct results for concurrent operations are generated, while getting those results as quickly as possible. Computer systems, both software and hardware, consist of modules, or components. Each component is designed to operate correctly, i.e., to obey or to meet certain consistency rules.
Concurrency (computer science)In computer science, concurrency is the ability of different parts or units of a program, algorithm, or problem to be executed out-of-order or in partial order, without affecting the outcome. This allows for parallel execution of the concurrent units, which can significantly improve overall speed of the execution in multi-processor and multi-core systems. In more technical terms, concurrency refers to the decomposability of a program, algorithm, or problem into order-independent or partially-ordered components or units of computation.
Node (computer science)A node is a basic unit of a data structure, such as a linked list or tree data structure. Nodes contain data and also may link to other nodes. Links between nodes are often implemented by pointers. Nodes are often arranged into tree structures. A node represents the information contained in a single data structure. These nodes may contain a value or condition, or possibly serve as another independent data structure. Nodes are represented by a single parent node.
Ensemble videvignette|Notation de l'ensemble vide. En mathématiques, l'ensemble vide est l'ensemble ne contenant aucun élément. L'ensemble vide peut être noté d'un O barré, à savoir ∅ ou simplement { }, qui est une paire d'accolades ne contenant qu'une espace, pour représenter un ensemble qui ne contient rien. La notation ∅ a été introduite par André Weil, dans le cadre de l'institution de notations par le groupe Bourbaki. Von Neumann dans son article de 1923, qui est l'une des premières références qui l'aborde, le note O.
Programmation concurrenteLa programmation concurrente est un paradigme de programmation tenant compte, dans un programme, de l'existence de plusieurs piles sémantiques qui peuvent être appelées threads, processus ou tâches. Elles sont matérialisées en machine par une pile d'exécution et un ensemble de données privées. La concurrence est indispensable lorsque l'on souhaite écrire des programmes interagissant avec le monde réel (qui est concurrent) ou tirant parti de multiples unités centrales (couplées, comme dans un système multiprocesseurs, ou distribuées, éventuellement en grille ou en grappe).
Intersection (mathématiques)Dans la théorie des ensembles, l'intersection est une opération ensembliste qui porte le même nom que son résultat, à savoir l'ensemble des éléments appartenant à la fois aux deux opérandes : l'intersection de deux ensembles A et B est l'ensemble, noté , dit « A inter B », qui contient tous les éléments appartenant à la fois à A et à B, et seulement ceux-là. A et B sont disjoints si et seulement si est l'ensemble vide ∅. A est inclus dans B si et seulement si .
Théorie naïve des ensemblesLes ensembles sont d'une importance fondamentale en mathématiques ; en fait, de manière formelle, la mécanique interne des mathématiques (nombres, relations, fonctions, etc.) peut se définir en termes d'ensembles. Il y a plusieurs façons de développer la théorie des ensembles et plusieurs théories des ensembles existent. Par théorie naïve des ensembles, on entend le plus souvent un développement informel d'une théorie des ensembles dans le langage usuel des mathématiques, mais fondée sur les axiomes de la théorie des ensembles de Zermelo ou de Zermelo-Fraenkel avec axiome du choix dans le style du livre Naive Set Theory de Paul Halmos.
Timestamp-based concurrency controlIn computer science, a timestamp-based concurrency control algorithm is a non-lock concurrency control method. It is used in some databases to safely handle transactions, using timestamps. Every timestamp value is unique and accurately represents an instant in time. A higher-valued timestamp occurs later in time than a lower-valued timestamp. A number of different ways have been used to generate timestamp Use the value of the system's clock at the start of a transaction as the timestamp.
Modèle d'acteurEn informatique, le modèle d'acteur est un modèle mathématique qui considère des acteurs comme les seules fonctions primitives nécessaires pour la programmation concurrente. Les acteurs communiquent par échange de messages. En réponse à un message, un acteur peut effectuer un traitement local, créer d'autres acteurs, ou envoyer d'autres messages. L'article de référence date de 1973. Ce modèle est utilisé aussi bien en informatique théorique pour formaliser les interactions concurrentes, qu’en pratique comme base de réalisation de langages de programmation ou d’architectures concurrentes.