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.
Racine carrée d'une matriceEn mathématiques, la notion de racine carrée d'une matrice particularise aux anneaux de matrices carrées la notion générale de racine carrée dans un anneau. Soient un entier naturel n non nul et M une matrice carrée d'ordre n à coefficients dans un anneau A. Un élément R de M(A) est une racine carrée de M si R = M. Une matrice donnée peut n'admettre aucune racine carrée, comme un nombre fini voire infini de racine carrées. Dans M(R) : est une racine carrée de les (pour tout réel x) sont des racines carrées de n'a pas de racine carrée R, car cela imposerait (mais elle en a dans M(C)).
Factorisation de CholeskyLa factorisation de Cholesky, nommée d'après André-Louis Cholesky, consiste, pour une matrice symétrique définie positive , à déterminer une matrice triangulaire inférieure telle que : . La matrice est en quelque sorte une « racine carrée » de . Cette décomposition permet notamment de calculer la matrice inverse , de calculer le déterminant de A (égal au carré du produit des éléments diagonaux de ) ou encore de simuler une loi multinormale. Elle est aussi utilisée en chimie quantique pour accélérer les calculs (voir Décomposition de Cholesky (chimie quantique)).
Matrice unitaireEn algèbre linéaire, une matrice carrée U à coefficients complexes est dite unitaire si elle vérifie les égalités : où la matrice adjointe de U est notée U* (ou U en physique, et plus particulièrement en mécanique quantique) et I désigne la matrice identité. L'ensemble des matrices unitaires de taille n forme le groupe unitaire U(n). Les matrices unitaires carrées à coefficients réels sont les matrices orthogonales.
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.
Décomposition polaireLa décomposition polaire est un outil mathématique fondamental pour comprendre les propriétés topologiques des groupes linéaires réels et complexes. Les applications suivantes sont des homéomorphismes, et même des difféomorphismes. En particulier, toute matrice inversible réelle se décompose de façon unique en produit d'une matrice orthogonale et d'une matrice symétrique définie positive. Les applications suivantes sont surjectives mais non injectives : En particulier, toute matrice réelle se décompose en produit d'une matrice orthogonale et d'une unique matrice symétrique positive (mais pas nécessairement de façon unique).
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.
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.
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.
Algorithme de recherche d'un zéro d'une fonctionUn algorithme de recherche d'un zéro d’une fonction est une méthode numérique ou un algorithme de recherche d’une valeur approchée d’un x vérifiant , pour une fonction donnée f. Ici, x est un nombre réel appelé zéro de f ou lorsque f est polynomiale, racine de f. Lorsque x est un vecteur, les algorithmes pour trouver x tel que sont généralement appelés « algorithmes de résolution numérique d'un système d'équations ». Ces algorithmes sont une généralisation des algorithmes de recherche d’un zéro d’une fonction et peuvent s’appliquer à des équations linéaires ou non linéaires.
Matrice tridiagonaleEn mathématiques, en algèbre linéaire, une matrice tridiagonale est une matrice dont tous les coefficients qui ne sont ni sur la diagonale principale, ni sur la diagonale juste au-dessus, ni sur la diagonale juste en dessous, sont nuls. Par exemple, la matrice suivante est tridiagonale : Une matrice , dont on note les coefficients a, est dite tridiagonale si : a = 0 pour tous (i, j) tels que i – j > 1, autrement dit si c'est une matrice de Hessenberg à la fois supérieure et inférieure.
Algorithmically random sequenceIntuitively, an algorithmically random sequence (or random sequence) is a sequence of binary digits that appears random to any algorithm running on a (prefix-free or not) universal Turing machine. The notion can be applied analogously to sequences on any finite alphabet (e.g. decimal digits). Random sequences are key objects of study in algorithmic information theory. As different types of algorithms are sometimes considered, ranging from algorithms with specific bounds on their running time to algorithms which may ask questions of an oracle machine, there are different notions of randomness.