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.
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.
Problème de satisfaction de contraintesLes problèmes de satisfaction de contraintes ou CSP (Constraint Satisfaction Problem) sont des problèmes mathématiques où l'on cherche des états ou des objets satisfaisant un certain nombre de contraintes ou de critères. Les CSP font l'objet de recherches intenses à la fois en intelligence artificielle et en recherche opérationnelle. De nombreux CSP nécessitent la combinaison d'heuristiques et de méthodes d'optimisation combinatoire pour être résolus en un temps raisonnable.
Tempsthumb|Chronos, dieu du temps de la mythologie grecque, par Ignaz Günther, Bayerisches Nationalmuseum à Munich. vignette|Montre à gousset ancienne Le temps est une notion qui rend compte du changement dans le monde. Le questionnement s'est porté sur sa « nature intime » : propriété fondamentale de l'Univers, ou produit de l'observation intellectuelle et de la perception humaine. La somme des réponses ne suffit pas à dégager un concept satisfaisant du temps.
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.
Programmation par contraintesLa programmation par contraintes (PPC, ou CP pour constraint programming en anglais) est un paradigme de programmation apparu dans les années 1970 et 1980 permettant de résoudre des problèmes combinatoires de grande taille tels que les problèmes de planification et d'ordonnancement. En programmation par contraintes, on sépare la partie modélisation à l'aide de problèmes de satisfaction de contraintes (ou CSP pour Constraint Satisfaction Problem), de la partie résolution dont la particularité réside dans l'utilisation active des contraintes du problème pour réduire la taille de l'espace des solutions à parcourir (on parle de propagation de contraintes).
Asymptotic computational complexityIn computational complexity theory, asymptotic computational complexity is the usage of asymptotic analysis for the estimation of computational complexity of algorithms and computational problems, commonly associated with the usage of the big O notation. With respect to computational resources, asymptotic time complexity and asymptotic space complexity are commonly estimated. Other asymptotically estimated behavior include circuit complexity and various measures of parallel computation, such as the number of (parallel) processors.
Constraint satisfactionIn artificial intelligence and operations research, constraint satisfaction is the process of finding a solution through a set of constraints that impose conditions that the variables must satisfy. A solution is therefore a set of values for the variables that satisfies all constraints—that is, a point in the feasible region. The techniques used in constraint satisfaction depend on the kind of constraints being considered.
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.
Constraint logic programmingConstraint logic programming is a form of constraint programming, in which logic programming is extended to include concepts from constraint satisfaction. A constraint logic program is a logic program that contains constraints in the body of clauses. An example of a clause including a constraint is . In this clause, is a constraint; A(X,Y), B(X), and C(Y) are literals as in regular logic programming. This clause states one condition under which the statement A(X,Y) holds: X+Y is greater than zero and both B(X) and C(Y) are true.
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 .
Causality conditionsIn the study of Lorentzian manifold spacetimes there exists a hierarchy of causality conditions which are important in proving mathematical theorems about the global structure of such manifolds. These conditions were collected during the late 1970s. The weaker the causality condition on a spacetime, the more unphysical the spacetime is. Spacetimes with closed timelike curves, for example, present severe interpretational difficulties. See the grandfather paradox.
Extension simpleEn mathématiques et plus précisément en algèbre, dans le cadre de la théorie des corps commutatifs, une extension L d'un corps K est dite simple s'il existe un élément α de L tel que L est égal à K(α). L'extension simple K(α) est finie si et seulement si α est algébrique sur K. La seule extension simple infinie de K (à isomorphisme près) est le corps de fractions rationnelles K(X). Le théorème de l'élément primitif assure que toute extension séparable finie est simple.
Principe de cohérence de NovikovLe principe de cohérence de Novikov est un principe développé par le professeur Igor Novikov au milieu des années 1980 pour résoudre le problème des paradoxes liés au voyage dans le temps. vignette|redresse|Une boule de billard qui entre en collision avec elle-même après voyage temporel est déviée de sa trajectoire. Le principe de Novikov affirme que la probabilité d'existence d'un événement pouvant provoquer un paradoxe est nulle.
Constraint Handling RulesConstraint Handling Rules (CHR) is a declarative, rule-based programming language, introduced in 1991 by Thom Frühwirth at the time with European Computer-Industry Research Centre (ECRC) in Munich, Germany. Originally intended for constraint programming, CHR finds applications in grammar induction, type systems, abductive reasoning, multi-agent systems, natural language processing, compilation, scheduling, spatial-temporal reasoning, testing, and verification.
Extension de corpsEn mathématiques, plus particulièrement en algèbre, une extension d'un corps commutatif K est un corps L qui contient K comme sous-corps. Par exemple, le corps C des nombres complexes est une extension du corps R des nombres réels, lequel est lui-même une extension du corps Q des nombres rationnels. On note parfois L/K pour indiquer que L est une extension de K. Soit K un corps. Une extension de K est un couple (L, j) où L est un corps et j un morphisme de corps de K dans L (les morphismes de corps étant systématiquement injectifs).
Causal structureIn mathematical physics, the causal structure of a Lorentzian manifold describes the causal relationships between points in the manifold. In modern physics (especially general relativity) spacetime is represented by a Lorentzian manifold. The causal relations between points in the manifold are interpreted as describing which events in spacetime can influence which other events. The causal structure of an arbitrary (possibly curved) Lorentzian manifold is made more complicated by the presence of curvature.
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.
Voyage dans le tempsLe voyage dans le temps est un des grands thèmes de la science-fiction, au point d’être considéré comme un genre à part entière. L’idée d’aller revivre le passé ou de découvrir à l’avance le futur est un rêve humain causé par le fait que l’être humain avance dans le temps de manière permanente, mais irréversible (et, à l’état de veille, apparemment de façon linéaire). La première mention d’un voyage dans le temps serait le personnage de Merlin l’Enchanteur dans le cycle arthurien des chevaliers de la Table ronde, qui visitait les temps passés.