Computational complexityIn computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations) and memory storage requirements. The complexity of a problem is the complexity of the best algorithms that allow solving the problem. The study of the complexity of explicitly given algorithms is called analysis of algorithms, while the study of the complexity of problems is called computational complexity theory.
Théorie de la complexité (informatique théorique)vignette|Quelques classes de complexité étudiées dans le domaine de la théorie de la complexité. Par exemple, P est la classe des problèmes décidés en temps polynomial par une machine de Turing déterministe. La théorie de la complexité est le domaine des mathématiques, et plus précisément de l'informatique théorique, qui étudie formellement le temps de calcul, l'espace mémoire (et plus marginalement la taille d'un circuit, le nombre de processeurs, l'énergie consommée ...) requis par un algorithme pour résoudre un problème algorithmique.
Problème du sac à dosEn algorithmique, le problème du sac à dos, parfois noté (KP) (de l'anglais Knapsack Problem) est un problème d'optimisation combinatoire. Ce problème classique en informatique et en mathématiques modélise une situation analogue au remplissage d'un sac à dos. Il consiste à trouver la combinaison d'éléments la plus précieuse à inclure dans un sac à dos, étant donné un ensemble d'éléments décrits par leurs poids et valeurs.
Complexité en tempsEn algorithmique, la complexité en temps est une mesure du temps utilisé par un algorithme, exprimé comme fonction de la taille de l'entrée. Le temps compte le nombre d'étapes de calcul avant d'arriver à un résultat. Habituellement, le temps correspondant à des entrées de taille n est le temps le plus long parmi les temps d’exécution des entrées de cette taille ; on parle de complexité dans le pire cas. Les études de complexité portent dans la majorité des cas sur le comportement asymptotique, lorsque la taille des entrées tend vers l'infini, et l'on utilise couramment les notations grand O de Landau.
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.
Équation du second degréEn mathématiques, une équation du second degré, ou équation quadratique, est une équation polynomiale de degré 2, c'est-à-dire qu'elle peut s'écrire sous la forme : Dans cette équation, x est l'inconnue les lettres a, b et c représentent les coefficients, avec a différent de 0. a est le coefficient quadratique, b est le coefficient linéaire, et c est un terme constant où le polynome est défini sur .
Oracle (machine de Turing)vignette|upright=2|Une machine de Turing avec oracle peut faire appel à une boîte noire (oracle). En théorie de la complexité ou de la calculabilité, les machines de Turing avec oracle sont une variante des machines de Turing disposant d'une boîte noire, un oracle, capable de résoudre un problème de décision en une seule opération élémentaire. En particulier, l'oracle peut résoudre en temps constant un problème indécidable comme le problème de l'arrêt.
Matrice (mathématiques)thumb|upright=1.5 En mathématiques, les matrices sont des tableaux d'éléments (nombres, caractères) qui servent à interpréter en termes calculatoires, et donc opérationnels, les résultats théoriques de l'algèbre linéaire et même de l'algèbre bilinéaire. Toutes les disciplines étudiant des phénomènes linéaires utilisent les matrices. Quant aux phénomènes non linéaires, on en donne souvent des approximations linéaires, comme en optique géométrique avec les approximations de Gauss.
Matrice par blocsvignette|Un matrice présente une structure par blocs si l'on peut isoler les termes non nuls dans des sous-matrices (ici la structure « diagonale par blocs » d'une réduite de Jordan). On appelle matrice par blocs une matrice divisée en blocs à partir d'un groupement quelconque de termes contigus de sa diagonale. Chaque bloc étant indexé comme on indicerait les éléments d'une matrice, la somme et le produit de deux matrices partitionnées suivant les mêmes tailles de bloc, s'obtiennent avec les mêmes règles formelles que celles des composantes (mais en veillant à l'ordre des facteurs dans les produits matriciels!).
Fonction quadratiqueEn mathématiques, une fonction quadratique est une fonction de plusieurs variables polynomiale de degré 2. Cette notion généralise ainsi celle de fonction du second degré. Elle réalise aussi la partie régulière du développement de Taylor à l’ordre 2 pour une fonction de plusieurs variables. La matrice hessienne associée est la même en tout point, et ne dépend que de la forme quadratique constituée par les termes de degré 2. Elle permet aussi d’écrire le système d'équations linéaires qui détermine les points critiques de la fonction.
Matrix multiplication algorithmBecause matrix multiplication is such a central operation in many numerical algorithms, much work has been invested in making matrix multiplication algorithms efficient. Applications of matrix multiplication in computational problems are found in many fields including scientific computing and pattern recognition and in seemingly unrelated problems such as counting the paths through a graph. Many different algorithms have been designed for multiplying matrices on different types of hardware, including parallel and distributed systems, where the computational work is spread over multiple processors (perhaps over a network).
3D scanning3D scanner is the process of analyzing a real-world object or environment to collect three dimensional data of its shape and possibly its appearance (e.g. color). The collected data can then be used to construct digital 3D models. A 3D scanner can be based on many different technologies, each with its own limitations, advantages and costs. Many limitations in the kind of objects that can be digitised are still present. For example, optical technology may encounter many difficulties with dark, shiny, reflective or transparent objects.
Matrice de rotationEn mathématiques, et plus précisément en algèbre linéaire, une matrice de rotation Q est une matrice orthogonale de déterminant 1, ce qui peut s'exprimer par les équations suivantes : QtQ = I = QQt et det Q = 1, où Qt est la matrice transposée de Q, et I est la matrice identité. Ces matrices sont exactement celles qui, dans un espace euclidien, représentent les isométries (vectorielles) directes.
Problème de couverture par ensemblesEn informatique théorique, le problème de couverture par ensembles (Set Cover problem en anglais) est un problème d'algorithmique particulièrement important car c'est l'un des 21 problèmes NP-complets de Karp . Étant donné un ensemble A, on dit qu'un élément e est couvert par A si e appartient à A. Étant donné un ensemble U et une famille S de sous-ensembles de U, le problème consiste à couvrir tous les éléments U avec une sous-famille de S la plus petite possible.
Formule quadratiqueEn algèbre classique, la formule quadratique est la solution de l'équation du second degré. Il y a d'autres façons pour résoudre l'équation du second degré au lieu d'utiliser la formule quadratique, comme la factorisation, la méthode de complétion du carré ou le tracé du graphe. Mais utiliser la formule quadratique est souvent la façon la plus pratique. L'équation du second degré générale est : Ici, x représente une valeur inconnue alors que a, b et c sont constantes, avec a non nul.
Complexité paramétréeEn algorithmique, la complexité paramétrée (ou complexité paramétrique) est une branche de la théorie de la complexité qui classifie les problèmes algorithmiques selon leur difficulté intrinsèque en fonction de plusieurs paramètres sur les données en entrée ou sur la sortie. Ce domaine est étudié depuis les années 90 comme approche pour la résolution exacte de problèmes NP-complets. Cette approche est utilisée en optimisation combinatoire, notamment en algorithmique des graphes, en intelligence artificielle, en théorie des bases de données et en bio-informatique.
Forme quadratiquethumb|L'annulation d'une forme quadratique donne le cône de lumière de la relativité restreinte, son signe fait la différence entre les événements accessibles ou inaccessibles dans l'espace-temps. En mathématiques, une forme quadratique est un polynôme homogène de degré 2 avec un nombre quelconque de variables. Les formes quadratiques d'une, deux et trois variables sont données respectivement par les formules suivantes (a,b,c,d,e,f désignant des coefficients) : L'archétype de forme quadratique est la forme x + y + z sur R, qui définit la structure euclidienne et dont la racine carrée permet de calculer la norme d'un vecteur.
Irrationnel quadratiqueUn irrationnel quadratique est un nombre irrationnel solution d'une équation quadratique à coefficients rationnels, autrement dit, un nombre réel algébrique de degré 2. Il engendre donc un corps quadratique réel Q(), où d est un entier positif sans facteur carré. Les irrationnels quadratiques sont caractérisés par la périodicité à partir d'un certain rang de leur développement en fraction continue (théorème de Lagrange). Les exemples les plus simples d'irrationnels quadratiques sont les racines carrées d'entiers naturels non carrés (le plus célèbre étant ).
Méthode itérativeEn analyse numérique, une méthode itérative est un procédé algorithmique utilisé pour résoudre un problème, par exemple la recherche d’une solution d’un système d'équations ou d’un problème d’optimisation. En débutant par le choix d’un point initial considéré comme une première ébauche de solution, la méthode procède par itérations au cours desquelles elle détermine une succession de solutions approximatives raffinées qui se rapprochent graduellement de la solution cherchée. Les points générés sont appelés des itérés.
Équation polynomialeEn mathématiques, une équation polynomiale, ou équation algébrique, est une équation de la forme : où P est un polynôme. Voici un exemple d'équation simple avec une seule inconnue : Usuellement, le terme équation polynomiale désigne une équation avec une seule inconnue (notée ici x) : où l'entier naturel n et les , appelés coefficients de l’équation, sont connus. Les coefficients sont le plus souvent des nombres réels ou complexes, mais ils peuvent prendre leurs valeurs dans n’importe quel anneau.