Problème du consensusLe problème du consensus est un problème fondamental en théorie du calcul distribué. Il consiste pour un ensemble de machines à se mettre d'accord sur une valeur ou, par extension, sur une séquence de valeurs. La résolution du consensus est primordiale pour la coordination des systèmes distribués. Elle permet notamment la consistance des systèmes répliqués malgré la défaillance d'une partie de leurs composants.
Problème des généraux byzantinsEn informatique, le problème des généraux byzantins est une métaphore qui traite de la remise en cause de la fiabilité des transmissions et de l'intégrité des interlocuteurs. La question est donc de savoir comment, et dans quelle mesure, il est possible de prendre en compte une information dont la source ou le canal de transmission est suspect. La solution implique l'établissement d'un algorithme (d'une stratégie) adapté. Ce problème a été traité en profondeur pour la première fois dans l'article The Byzantine Generals Problem publié en 1982.
Empire byzantinL’'Empire byzantin' ou Empire romain d'Orient désigne l'État apparu vers le dans la partie orientale de l'Empire romain, au moment où celui-ci se divise progressivement en deux. Il se caractérise par sa longévité : il puise ses origines dans la fondation même de Rome, et la datation de ses débuts change selon les critères choisis par chaque historien. La fondation de Constantinople, sa capitale, par en 330, autant que la division d’un Empire romain de plus en plus difficile à gouverner et qui devient définitive en 395, sont parfois citées.
Algorithmethumb|Algorithme de découpe d'un polygone quelconque en triangles (triangulation). Un algorithme est une suite finie et non ambiguë d'instructions et d’opérations permettant de résoudre une classe de problèmes. Le domaine qui étudie les algorithmes est appelé l'algorithmique. On retrouve aujourd'hui des algorithmes dans de nombreuses applications telles que le fonctionnement des ordinateurs, la cryptographie, le routage d'informations, la planification et l'utilisation optimale des ressources, le , le traitement de textes, la bio-informatique L' algorithme peut être mis en forme de façon graphique dans un algorigramme ou organigramme de programmation.
Armée byzantinethumb|Fresque provenant du monastère de Saint-Lucas en Grèce L'armée byzantine était le corps militaire terrestre des forces armées byzantines, servant côte à côte avec la marine byzantine. Descendante directe des légions et de la marine romaine de l'ancien Empire romain, l'armée byzantine maintint un niveau similaire de discipline, de prouesse stratégique et d'organisation. Pour une grande part de son histoire, l'armée byzantine fut la plus puissante et la plus performante force militaire de toute l'Europe.
Soie byzantinethumb|right|David, entre les personnifications de la Sagesse et de la Prophétie, sur une chlamyde de soie byzantine. Paris, Psautier du . La soie byzantine (μέταξα, σηρικόν) fut tissée dans l’Empire byzantin du environ jusqu’à la chute de Constantinople en 1453, bien que l’industrie ait été en fort déclin après la chute de Constantinople aux mains des croisés en 1204. Capitale de l’Empire byzantin, Constantinople fut le premier centre important du tissage de la soie en Europe.
Expression régulièrevignette|Stephen Cole Kleene, dont les travaux ont fondé le concept d'expression régulière. En informatique, une expression régulière ou expression rationnelle ou expression normale ou motif est une chaîne de caractères qui décrit, selon une syntaxe précise, un ensemble de chaînes de caractères possibles. Les expressions régulières sont également appelées regex (un mot-valise formé depuis l'anglais regular expression). Les expressions rationnelles sont issues des théories mathématiques des langages formels des années 1940.
Type systemIn computer programming, a type system is a logical system comprising a set of rules that assigns a property called a type (for example, integer, floating point, string) to every "term" (a word, phrase, or other set of symbols). Usually the terms are various constructs of a computer program, such as variables, expressions, functions, or modules. A type system dictates the operations that can be performed on a term. For variables, the type system determines the allowed values of that term.
Blockchainvignette|redresse|Représentation d’une chaîne de blocs. La chaîne principale (en noir) est composée de la plus longue suite de blocs après le bloc initial (vert). Les blocs orphelins sont représentés en violet. Une blockchain, ou chaîne de blocs, est une technologie de stockage et de transmission d'informations sans autorité centrale. Techniquement, il s'agit d'une base de données distribuée dont les informations envoyées par les utilisateurs et les liens internes à la base sont vérifiés et groupés à intervalles de temps réguliers en blocs, formant ainsi une chaîne.
Papauté byzantine250px|vignette|Les campagnes de Justinien (en orange pâle) permettent à l'Empire romain (d'Orient, dit « byzantin » depuis le ) de revenir pour deux siècles en Méditerranée occidentale et d'inclure ainsi en Hispanie, en Italie et en Afrique, des régions de tradition, de langue et de liturgie latine. La papauté byzantine est une période de l'histoire de la papauté, qui s'étend de l'an 537 à l'an 752, marquée par l'appartenance territoriale à l'Empire romain d'Orient (dit « byzantin » depuis 1557).
Algorithme de rechercheEn informatique, un algorithme de recherche est un type d'algorithme qui, pour un domaine, un problème de ce domaine et des critères donnés, retourne en résultat un ensemble de solutions répondant au problème. Supposons que l'ensemble de ses entrées soit divisible en sous-ensemble, par rapport à un critère donné, qui peut être, par exemple, une relation d'ordre. De façon générale, un tel algorithme vérifie un certain nombre de ces entrées et retourne en sortie une ou plusieurs des entrées visées.
Processus (informatique)Un processus (en anglais, process), en informatique, est un programme en cours d'exécution par un ordinateur. De façon plus précise, il peut être défini comme : un ensemble d'instructions à exécuter, pouvant être dans la mémoire morte, mais le plus souvent chargé depuis la mémoire de masse vers la mémoire vive ; un espace d'adressage en mémoire vive pour stocker la pile, les données de travail ; des ressources permettant des entrées-sorties de données, comme des ports réseau.
Cryptomonnaie stablevignette|Logo du Tether (USDT). Une cryptomonnaie stable (en anglais : stablecoin) est une cryptomonnaie dont le prix est arrimé à une autre cryptomonnaie, à une monnaie fiduciaire ou à un produit négocié en bourse (comme les métaux précieux ou les métaux industriels). Si les cryptomonnaies traditionnelles garantissent une décentralisation effective et une indépendance complète vis-à-vis d'une quelconque autorité monétaire, ces actifs connaissent une volatilité élevée. Les cryptomonnaies stables se présentent comme une réponse à cette volatilité.
Algorithme probabilisteEn algorithmique, un algorithme probabiliste, ou algorithme randomisé, est un algorithme qui utilise une source de hasard. Plus précisément le déroulement de l’algorithme fait appel à des données tirées au hasard. Par exemple à un certain point de l’exécution, on tire un bit 0 ou 1, selon la loi uniforme et si le résultat est 0, on fait une certaine action A et si c'est 1, on fait une autre action. On peut aussi tirer un nombre réel dans l'intervalle [0,1] ou un entier dans un intervalle [i..j].
Algorithme de triUn algorithme de tri est, en informatique ou en mathématiques, un algorithme qui permet d'organiser une collection d'objets selon une relation d'ordre déterminée. Les objets à trier sont des éléments d'un ensemble muni d'un ordre total. Il est par exemple fréquent de trier des entiers selon la relation d'ordre usuelle « est inférieur ou égal à ». Les algorithmes de tri sont utilisés dans de très nombreuses situations. Ils sont en particulier utiles à de nombreux algorithmes plus complexes dont certains algorithmes de recherche, comme la recherche dichotomique.
Calcul distribuéUn calcul distribué, ou réparti ou encore partagé, est un calcul ou un traitement réparti sur plusieurs microprocesseurs et plus généralement sur plusieurs unités centrales informatiques, et on parle alors d'architecture distribuée ou de système distribué. Le calcul distribué est souvent réalisé sur des clusters de calcul spécialisés, mais peut aussi être réalisé sur des stations informatiques individuelles à plusieurs cœurs. La distribution d'un calcul est un domaine de recherche des sciences mathématiques et informatiques.
PHP, plus connu sous son sigle (sigle auto-référentiel), est un langage de programmation libre, principalement utilisé pour produire des pages Web dynamiques via un serveur web, mais pouvant également fonctionner comme n'importe quel langage interprété de façon locale. PHP est un langage impératif orienté objet. PHP a permis de créer un grand nombre de sites web célèbres, comme Facebook et Wikipédia. Il est considéré comme une des bases de la création de sites web dits dynamiques mais également des applications web.
Signature numériqueLa signature numérique est un mécanisme permettant d'authentifier l'auteur d'un document électronique et d'en garantir la non-répudiation, par analogie avec la signature manuscrite d'un document papier. Elle se différencie de la signature écrite par le fait qu'elle n'est pas visuelle, mais correspond à une suite de caractères. Elle ne doit pas être confondue avec la signature électronique manuscrite. Un mécanisme de signature numérique doit présenter les propriétés suivantes : Il doit permettre au lecteur d'un document d'identifier la personne ou l'organisme qui a apposé sa signature (propriété d'identification).
Algorithme génétiqueLes algorithmes génétiques appartiennent à la famille des algorithmes évolutionnistes. Leur but est d'obtenir une solution approchée à un problème d'optimisation, lorsqu'il n'existe pas de méthode exacte (ou que la solution est inconnue) pour le résoudre en un temps raisonnable. Les algorithmes génétiques utilisent la notion de sélection naturelle et l'appliquent à une population de solutions potentielles au problème donné.
C (langage)C est un langage de programmation impératif, généraliste et de bas niveau. Inventé au début des années 1970 pour réécrire Unix, C est devenu un des langages les plus utilisés, encore de nos jours. De nombreux langages plus modernes comme C++, C#, Java et PHP ou JavaScript ont repris une syntaxe similaire au C et reprennent en partie sa logique. C offre au développeur une marge de contrôle importante sur la machine (notamment sur la gestion de la mémoire) et est de ce fait utilisé pour réaliser les « fondations » (compilateurs, interpréteurs.