background preloader

Computer science

Facebook Twitter

NP-complete. Although any given solution to an NP-complete problem can be verified quickly (in polynomial time), there is no known efficient way to locate a solution in the first place; indeed, the most notable characteristic of NP-complete problems is that no fast solution to them is known.

NP-complete

That is, the time required to solve the problem using any currently known algorithm increases very quickly as the size of the problem grows. As a consequence, determining whether or not it is possible to solve these problems quickly, called the P versus NP problem, is one of the principal unsolved problems in computer science today. Overview[edit] ALL (complexity) Complexity Zoo: Class ALL.

ALL (complexity)

Decidability (logic) As with the concept of a decidable set, the definition of a decidable theory or logical system can be given either in terms of effective methods or in terms of computable functions.

Decidability (logic)

These are generally considered equivalent per Church's thesis. Indeed, the proof that a logical system or theory is undecidable will use the formal definition of computability to show that an appropriate set is not a decidable set, and then invoke Church's thesis to show that the theory or logical system is not decidable by any effective method (Enderton 2001, pp. 206ff.). A logical system is decidable if there is an effective method for determining whether arbitrary formulas are theorems of the logical system. For example, propositional logic is decidable, because the truth-table method can be used to determine whether an arbitrary propositional formula is logically valid. The validities of monadic predicate calculus with identity are decidable, however.

Some decidable theories include (Monk 1976, p. 234): David Hilbert. David Hilbert (German: [ˈdaːvɪt ˈhɪlbɐt]; January 23, 1862 – February 14, 1943) was a German mathematician.

David Hilbert

He is recognized as one of the most influential and universal mathematicians of the 19th and early 20th centuries. Hilbert discovered and developed a broad range of fundamental ideas in many areas, including invariant theory and the axiomatization of geometry. He also formulated the theory of Hilbert spaces,[3] one of the foundations of functional analysis. Hilbert adopted and warmly defended Georg Cantor's set theory and transfinite numbers. A famous example of his leadership in mathematics is his 1900 presentation of a collection of problems that set the course for much of the mathematical research of the 20th century.

Hilbert and his students contributed significantly to establishing rigor and developed important tools used in modern mathematical physics. Life[edit] Halting problem. Alan Turing proved in 1936 that a general algorithm to solve the halting problem for all possible program-input pairs cannot exist.

Halting problem

A key part of the proof was a mathematical definition of a computer and program, which became known as a Turing machine; the halting problem is undecidable over Turing machines. It is one of the first examples of a decision problem. Jack Copeland (2004) attributes the term halting problem to Martin Davis.[1] Background[edit] The halting problem is a decision problem about properties of computer programs on a fixed Turing-complete model of computation, i.e. all programs that can be written in some given programming language that is general enough to be equivalent to a Turing machine. For example, in pseudocode, the program: while (true) continue does not halt; rather, it goes on forever in an infinite loop. Print "Hello, world! " does halt. While deciding whether these programs halt is simple, more complex programs prove problematic. Decision problem. A decision problem has only two possible outputs, yes or no (or alternately 1 or 0) on any input.

Decision problem

In computability theory and computational complexity theory, a decision problem is a question in some formal system with a yes-or-no answer, depending on the values of some input parameters. For example, the problem "given two numbers x and y, does x evenly divide y? " is a decision problem. The answer can be either 'yes' or 'no', and depends upon the values of x and y. Decision problems are closely related to function problems, which can have answers that are more complex than a simple 'yes' or 'no'.