Circuit intégréLe circuit intégré (CI), aussi appelé puce électronique, est un composant électronique, basé sur un semi-conducteur, reproduisant une ou plusieurs fonctions électroniques plus ou moins complexes, intégrant souvent plusieurs types de composants électroniques de base dans un volume réduit (sur une petite plaque), rendant le circuit facile à mettre en œuvre. Il existe une très grande variété de ces composants divisés en deux grandes catégories : analogique et numérique.
Go (langage)Go est un langage de programmation compilé et concurrent inspiré de C et Pascal. Il a été développé par Google à partir d’un concept initial de , Rob Pike et Ken Thompson. vignette|alt=Logo de Google Go|droite|Mascotte de Google Go Go veut faciliter et accélérer la programmation à grande échelle : en raison de sa simplicité, il est donc concevable de l’utiliser aussi bien pour écrire des applications, des scripts ou de grands systèmes. Cette simplicité est nécessaire aussi pour assurer la maintenance et l’évolution des programmes sur plusieurs générations de développeurs.
Semainevignette|redresse=2|Calendrier de l'année 2022 avec numérotation des semaines selon la norme internationale ISO (du lundi au dimanche). Une semaine (du latin septimana : « semaine ») est une période de sept jours consécutifs. L'adjectif français associé est « hebdomadaire ». Substantivé (utilisé comme nom), le mot désigne une publication paraissant chaque semaine. Trois problématiques sont distinctes : le nombre sept, les noms des jours et leur ordre. Ces trois thèmes sont étudiés dans des articles détaillés.
Rust (langage)Rust est un langage de programmation compilé multi-paradigme conçu et développé par Mozilla Research depuis 2010. Il a été conçu pour être « un langage fiable, concurrent, pratique », supportant les styles de programmation purement fonctionnel, modèle d'acteur, procédural, ainsi qu'orienté objet sous certains aspects. En 2020, ses domaines de prédilection sont la programmation système, les applications en ligne de commande, les applications Web via WebAssembly, les services réseaux et les systèmes embarqués.
Algol 68Algol 68 est un langage de programmation universel dérivé du langage Algol 60, principalement conçu par des Européens. Au-delà d'Algol 60, l'objectif des concepteurs d'Algol 68 était d'offrir un langage de programmation universel, résolument innovant, dérivant sa puissance d'une conception orthogonale. En Algol 68, le programmeur peut définir de nouveaux types de données, de nouveaux opérateurs, peut surcharger et étendre des opérateurs prédéfinis ; il peut ainsi adapter le langage à un domaine spécifique d'application ; des processus peuvent s'exécuter en parallèle, et se synchroniser à l'aide de sémaphores ; les entrées/sorties exploitent des volumes organisés en livres, pages et lignes.
Composition (programmation)En programmation informatique, la composition est une technique qui permet de combiner plusieurs éléments de programmation entre eux pour obtenir un élément ayant une fonctionnalité plus complexe. On distingue la composition de fonctions, la composition d'objets, et la composition dans les modèles. La composition de fonctions consiste à définir une nouvelle fonction en combinant plusieurs fonctions entre elles. Ce procédé s'inspire directement de la composition de fonctions en mathématiques, où le résultat d'une fonction est utilisé comme paramètre d'une autre.
Circuit booléenvignette|Exemple circuit booléen à deux entrées et une sortie. Le circuit contient 3 portes logique. En théorie de la complexité, un circuit booléen est un modèle de calcul constitué de portes logiques (fonctions logiques) reliées entre elles. C'est une façon de représenter une fonction booléenne. Un circuit booléen peut être utilisé pour reconnaître un langage formel, c'est-à-dire décider si un mot appartient ou non à un langage particulier. Les caractéristiques des circuits qui reconnaissent un langage permettent de définir (ou redéfinir) des classes de complexité.
Noms des jours de la semaineLes noms des jours de la semaine, dans les langues latines, tiennent leur origine des noms de divinités de la mythologie romaine. Les noms samedi et dimanche sont deux exceptions. Modifiés a posteriori, ils tiennent leur origine de la religion hébraïque pour le samedi et de la religion chrétienne pour le dimanche. Samedi et dimanche sont venus remplacer les jours dédiés aux dieux Saturne et Soleil. On retrouve la trace de l'ancienne terminologie païenne dans les langues germaniques (Saturday et Sunday/Sonntag).
Transformation de Fourierthumb|Portrait de Joseph Fourier. En mathématiques, plus précisément en analyse, la transformation de Fourier est une extension, pour les fonctions non périodiques, du développement en série de Fourier des fonctions périodiques. La transformation de Fourier associe à toute fonction intégrable définie sur R et à valeurs réelles ou complexes, une autre fonction sur R appelée transformée de Fourier dont la variable indépendante peut s'interpréter en physique comme la fréquence ou la pulsation.
Circuit complexityIn theoretical computer science, circuit complexity is a branch of computational complexity theory in which Boolean functions are classified according to the size or depth of the Boolean circuits that compute them. A related notion is the circuit complexity of a recursive language that is decided by a uniform family of circuits (see below). Proving lower bounds on size of Boolean circuits computing explicit Boolean functions is a popular approach to separating complexity classes.
Transformation de Fourier rapideLa transformation de Fourier rapide (sigle anglais : FFT ou fast Fourier transform) est un algorithme de calcul de la transformation de Fourier discrète (TFD). Sa complexité varie en O(n log n) avec le nombre n de points, alors que la complexité de l’algorithme « naïf » s'exprime en O(n). Ainsi, pour n = , le temps de calcul de l'algorithme rapide peut être 100 fois plus court que le calcul utilisant la formule de définition de la TFD.
Transformée de Fourier quantiqueEn informatique quantique, la transformée de Fourier quantique (TFQ) est une transformation linéaire sur des bits quantiques, et est l'analogie quantique de la transformée de Fourier discrète. La transformée de Fourier quantique est l'un des nombreux algorithmes quantiques, qui incluent notamment l'algorithme de Shor qui permet de factoriser et de calculer le logarithme discret, l'algorithme d'estimation de phase quantique qui estime les valeurs propres d'un opérateur unitaire et les algorithmes traitant du problème de sous-groupe caché .
Algorithme de ShorEn arithmétique modulaire et en informatique quantique, l’algorithme de Shor est un algorithme quantique conçu par Peter Shor en 1994, qui factorise un entier naturel N en temps O et en espace . Beaucoup de cryptosystèmes à clé publique, tels que le RSA, deviendraient vulnérables si l'algorithme de Shor était un jour implanté dans un calculateur quantique pratique. Un message chiffré avec RSA peut être déchiffré par factorisation de sa clé publique N, qui est le produit de deux nombres premiers.
Transformation de Fourier discrèteEn mathématiques, la transformation de Fourier discrète (TFD) sert à traiter un signal numérique. Elle constitue un équivalent discret (c'est-à-dire pour un signal défini à partir d'un nombre fini d'échantillons) de la transformation de Fourier (continue) utilisée pour traiter un signal analogique. Plus précisément, la TFD est la représentation spectrale discrète dans le domaine des fréquences d'un signal échantillonné. La transformation de Fourier rapide est un algorithme particulier de calcul de la transformation de Fourier discrète.
FactorisationEn mathématiques, la factorisation consiste à écrire une expression algébrique (notamment une somme), un nombre, une matrice sous la forme d'un produit. Cette transformation peut se faire suivant différentes techniques détaillées ci-dessous. Les enjeux de la factorisation sont très divers : à un niveau élémentaire, le but peut être de ramener la résolution d'une équation à celle d'une équation produit-nul, ou la simplification d'une écriture fractionnaire ; à un niveau intermédiaire, la difficulté algorithmique présumée de la factorisation des nombres entiers en produit de facteurs premiers est à la base de la fiabilité du cryptosystème RSA.
Classe de complexitéEn informatique théorique, et plus précisément en théorie de la complexité, une classe de complexité est un ensemble de problèmes algorithmiques dont la résolution nécessite la même quantité d'une certaine ressource. Une classe est souvent définie comme l'ensemble de tous les problèmes qui peuvent être résolus sur un modèle de calcul M, utilisant une quantité de ressources du type R, où n, est la taille de l'entrée. Les classes les plus usuelles sont celles définies sur des machines de Turing, avec des contraintes de temps de calcul ou d'espace.
Circuit (computer science)In theoretical computer science, a circuit is a model of computation in which input values proceed through a sequence of gates, each of which computes a function. Circuits of this kind provide a generalization of Boolean circuits and a mathematical model for digital logic circuits. Circuits are defined by the gates they contain and the values the gates can produce. For example, the values in a Boolean circuit are boolean values, and the circuit includes conjunction, disjunction, and negation gates.
Fourier analysisIn mathematics, Fourier analysis (ˈfʊrieɪ,_-iər) is the study of the way general functions may be represented or approximated by sums of simpler trigonometric functions. Fourier analysis grew from the study of Fourier series, and is named after Joseph Fourier, who showed that representing a function as a sum of trigonometric functions greatly simplifies the study of heat transfer. The subject of Fourier analysis encompasses a vast spectrum of mathematics.
Fractional Fourier transformIn mathematics, in the area of harmonic analysis, the fractional Fourier transform (FRFT) is a family of linear transformations generalizing the Fourier transform. It can be thought of as the Fourier transform to the n-th power, where n need not be an integer — thus, it can transform a function to any intermediate domain between time and frequency. Its applications range from filter design and signal analysis to phase retrieval and pattern recognition.
Conseil (informatique théorique)En théorie de la complexité, un conseil est une entrée supplémentaire passée à une machine de Turing qui dépend de la taille de l'entrée, afin d'aider la machine à reconnaître un langage. Cette notion est introduite par Richard Karp et Richard J. Lipton en 1982. Étant donnés une fonction et une classe de complexité , la classe est l'ensemble des langages tels qu'il existe un langage et une suite de conseils de taille tels que pour toute entrée de taille , si et seulement si .