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.
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.
Relation binaireEn mathématiques, une relation binaire entre deux ensembles E et F (ou simplement relation entre E et F) est définie par un sous-ensemble du produit cartésien E × F, soit une collection de couples dont la première composante est dans E et la seconde dans F. Cette collection est désignée par le graphe de la relation. Les composantes d'un couple appartenant au graphe d'une relation R sont dits en relation par R. Une relation binaire est parfois appelée correspondance entre les deux ensembles.
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.
Connected relationIn mathematics, a relation on a set is called connected or complete or total if it relates (or "compares") all pairs of elements of the set in one direction or the other while it is called strongly connected if it relates pairs of elements. As described in the terminology section below, the terminology for these properties is not uniform. This notion of "total" should not be confused with that of a total relation in the sense that for all there is a so that (see serial relation).
Relation (mathématiques)Une relation entre objets mathématiques d'un certain domaine est une propriété qu'ont, ou non, entre eux certains de ces objets ; ainsi la relation d'ordre strict, notée « < », définie sur N l'ensemble des entiers naturels : 1 < 2 signifie que 1 est en relation avec 2 par cette relation, et on sait que 1 n'est pas en relation avec 0 par celle-ci. Une relation est très souvent une relation binaire, définie sur un ensemble comme la relation d'ordre strict sur N, ou entre deux ensembles.
Relation inverseIn mathematics, the converse relation, or transpose, of a binary relation is the relation that occurs when the order of the elements is switched in the relation. For example, the converse of the relation 'child of' is the relation 'parent of'. In formal terms, if and are sets and is a relation from to then is the relation defined so that if and only if In set-builder notation, The notation is analogous with that for an inverse function. Although many functions do not have an inverse, every relation does have a unique converse.
Quantum complexity theoryQuantum complexity theory is the subfield of computational complexity theory that deals with complexity classes defined using quantum computers, a computational model based on quantum mechanics. It studies the hardness of computational problems in relation to these complexity classes, as well as the relationship between quantum complexity classes and classical (i.e., non-quantum) complexity classes. Two important quantum complexity classes are BQP and QMA.
Index setIn mathematics, an index set is a set whose members label (or index) members of another set. For instance, if the elements of a set A may be indexed or labeled by means of the elements of a set J, then J is an index set. The indexing consists of a surjective function from J onto A, and the indexed collection is typically called an indexed family, often written as {Aj}j∈J. An enumeration of a set S gives an index set , where f : J → S is the particular enumeration of S.
Relation bien fondéeEn mathématiques, une relation bien fondée (encore appelée relation noethérienne ou relation artinienne) est une relation binaire vérifiant l'une des deux conditions suivantes, équivalentes d'après l'axiome du choix dépendant (une version faible de l'axiome du choix) : pour toute partie non vide X de E, il existe un élément x de X n'ayant aucun R-antécédent dans X (un R-antécédent de x dans X est un élément y de X vérifiant yRx) ; condition de chaîne descendante : il n'existe pas de suite infinie (xn) d'élém
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.
Ensemble bien ordonnéEn mathématiques, un ensemble ordonné (E, ≤) est bien ordonné et la relation ≤ est un bon ordre si la condition suivante est satisfaite : Toute partie non vide de E possède un plus petit élément. Formellement cela donne ∀X⊆E, X≠∅ ⇒ (∃u∈X, ∀v∈X u≤v). Si (E, ≤) est bien ordonné alors ≤ est nécessairement un ordre total, c'est-à-dire que deux éléments quelconques x et y de E sont toujours comparables. En effet, l'ensemble { x, y } possède un plus petit élément, donc on a x ≤ y ou y ≤ x.
Homogeneous relationIn mathematics, a homogeneous relation (also called endorelation) on a set X is a binary relation between X and itself, i.e. it is a subset of the Cartesian product X × X. This is commonly phrased as "a relation on X" or "a (binary) relation over X". An example of a homogeneous relation is the relation of kinship, where the relation is between people. Common types of endorelations include orders, graphs, and equivalences. Specialized studies of order theory and graph theory have developed understanding of endorelations.
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.
Tableau (structure de données)En informatique, un tableau est une structure de données représentant une séquence finie d'éléments auxquels on peut accéder efficacement par leur position, ou indice, dans la séquence. C'est un type de conteneur que l'on retrouve dans un grand nombre de langages de programmation. Dans les langages à typage statique (comme C, Java et OCaml), tous les éléments d’un tableau doivent être du même type. Certains langages à typage dynamique (tels APL et Python) permettent des tableaux hétérogènes.
Famille (mathématiques)En mathématiques, la notion de famille est une généralisation de celle de suite, suite finie ou suite indexée par tous les entiers naturels. Ainsi on pourra parler, en algèbre linéaire, de la famille de vecteurs qui est une famille finie, ou de la famille dénombrable (un)n ∈ N. Une famille est toujours indexée, même si elle l'est parfois implicitement, par exemple dans les locutions « famille libre » ou « famille génératrice ». Une famille (x) d'éléments x d'un ensemble E, indexée par un ensemble I, lindex, est une application définie sur I à valeurs dans E.
Array (data type)In computer science, array is a data type that represents a collection of elements (values or variables), each selected by one or more indices (identifying keys) that can be computed at run time during program execution. Such a collection is usually called an array variable or array value. By analogy with the mathematical concepts vector and matrix, array types with one and two indices are often called vector type and matrix type, respectively. More generally, a multidimensional array type can be called a tensor type, by analogy with the physical concept, tensor.
Séparation et évaluationUn algorithme par séparation et évaluation, ou branch and bound en anglais, est une méthode générique de résolution de problèmes d'optimisation combinatoire. Cet algorithme a été introduit par Ailsa Land et Alison Harcourt (Doig) en 1960. L'optimisation combinatoire consiste à trouver un point minimisant une fonction, appelée coût, dans un ensemble dénombrable. Une méthode naïve pour résoudre ce problème est d'énumérer toutes les solutions du problème, de calculer le coût pour chacune, puis de donner le minimum.
Ensemblevignette|Ensemble de polygones dans un diagramme d'Euler En mathématiques, un ensemble désigne intuitivement un rassemblement d’objets distincts (les éléments de l'ensemble), « une multitude qui peut être comprise comme une totalité » pour paraphraser Georg Cantor qui est à l'origine de la théorie des ensembles. Dans une approche axiomatique, la théorie des ensembles est une théorie de l'appartenance (un élément d'un ensemble est dit « appartenir » à cet ensemble).
Ordre denseLa notion dordre dense est une notion de mathématiques, en lien avec la notion de relation d'ordre. Un ensemble ordonné (E, ≤) est dit dense en lui-même, ou plus simplement dense, si, pour tout couple (x, y) d'éléments de E tels que x < y il existe un élément z de E tel que x < z < y. Par exemple, tout corps totalement ordonné est dense en lui-même alors que l'anneau Z des entiers relatifs ne l'est pas.