List of undecidable problems

Last updated

In computability theory, an undecidable problem is a type of computational problem that requires a yes/no answer, but where there cannot possibly be any computer program that always gives the correct answer; that is, any possible program would sometimes give the wrong answer or run forever without giving any answer. More formally, an undecidable problem is a problem whose language is not a recursive set; see the article Decidable language. There are uncountably many undecidable problems, so the list below is necessarily incomplete. Though undecidable languages are not recursive languages, they may be subsets of Turing recognizable languages: i.e., such undecidable languages may be recursively enumerable.

Contents

Many, if not most, undecidable problems in mathematics can be posed as word problems: determining when two distinct strings of symbols (encoding some mathematical concept or object) represent the same object or not.

For undecidability in axiomatic mathematics, see List of statements undecidable in ZFC.

Problems in logic

Problems about abstract machines

Problems about matrices

Problems in combinatorial group theory

Problems in topology

Problems in analysis

where x is a vector in Rn, p(t, x) is a vector of polynomials in t and x, and (t0, x0) belongs to Rn+1. [6]

Problems about formal languages and grammars

Other problems

See also

Notes

  1. Wells, J. B. (1993). "Typability and type checking in the second-order lambda-calculus are equivalent and undecidable". Tech. Rep. 93-011. Comput. Sci. Dept., Boston Univ.: 176–185. CiteSeerX   10.1.1.31.3590 .
  2. Trahtenbrot, B. A. (1950). "The impossibility of an algorithm for the decision problem for finite domains". Doklady Akademii Nauk SSSR. New Series. 70: 569–572. MR   0033784.
  3. Stillwell, John (1993), Classical Topology and Combinatorial Group Theory, Graduate Texts in Mathematics, vol. 72, Springer, p. 247, ISBN   9780387979700 .
  4. Keith O. Geddes, Stephen R. Czapor, George Labahn, Algorithms for Computer Algebra, ISBN   0585332479, 2007, p. 81ff
  5. 1 2 Stallworth, Daniel T.; Roush, Fred W. (July 1997). "An Undecidable Property of Definite Integrals". Proceedings of the American Mathematical Society . 125 (7): 2147–2148. doi: 10.1090/S0002-9939-97-03822-7 .
  6. Graça, Daniel S.; Buescu, Jorge; Campagnolo, Manuel L. (21 March 2008). "Boundedness of the Domain of Definition is Undecidable for Polynomial ODEs". Electronic Notes in Theoretical Computer Science. 202: 49–57. doi: 10.1016/j.entcs.2008.03.007 . hdl: 10400.1/1016 .
  7. Moore, Cristopher (1990), "Unpredictability and undecidability in dynamical systems" (PDF), Physical Review Letters , 64 (20): 2354–2357, Bibcode:1990PhRvL..64.2354M, doi:10.1103/PhysRevLett.64.2354, PMID   10041691 .
  8. Cubitt, Toby S.; Perez-Garcia, David; Wolf, Michael M. (2015). "Undecidability of the spectral gap". Nature. 528 (7581): 207–211. arXiv: 1502.04135 . Bibcode:2015Natur.528..207C. doi:10.1038/nature16059. PMID   26659181. S2CID   4451987.
  9. Bausch, Johannes; Cubitt, Toby S.; Lucia, Angelo; Perez-Garcia, David (17 August 2020). "Undecidability of the Spectral Gap in One Dimension". Physical Review X . 10 (3): 031038. arXiv: 1810.01858 . Bibcode:2020PhRvX..10c1038B. doi: 10.1103/PhysRevX.10.031038 .
  10. Elkouss, D.; Pérez-García, D. (2018). "Memory effects can make the transmission capability of a communication channel uncomputable". Nature Communications. 9 (1): 1149. Bibcode:2018NatCo...9.1149E. doi:10.1038/s41467-018-03428-0. PMC   5861076 . PMID   29559615.
  11. Li, C. T. (2023). "Undecidability of Network Coding, Conditional Information Inequalities, and Conditional Independence Implication". IEEE Transactions on Information Theory. 69 (6): 1. arXiv: 2205.11461 . doi:10.1109/TIT.2023.3247570. S2CID   248986512.
  12. Kühne, L.; Yashfe, G. (2022). "Representability of Matroids by c-Arrangements is Undecidable". Israel Journal of Mathematics . 252: 1-53. arXiv: 1912.06123 . doi:10.1007/s11856-022-2345-z. S2CID   209324252.
  13. Herrick, Austin; Biderman, Stella; Churchill, Alex (2019-03-24). "Magic: The Gathering is Turing Complete". arXiv: 1904.09828v2 [cs.AI].
  14. de Marcken, Carl. "Computational Complexity of Air Travel Planning" (PDF). ITA Software . Retrieved 4 January 2021.
  15. "Computability and Complexity of Ray Tracing" (PDF). CS.Duke.edu.
  16. Cardona, R.; Miranda, E.; Peralta-Salas, D.; Presas, F. (2021). "Constructing Turing complete Euler flows in dimension 3". Proceedings of the National Academy of Sciences. 118 (19): 19. arXiv: 2012.12828 . Bibcode:2021PNAS..11826818C. doi: 10.1073/pnas.2026818118 . PMC   8126859 . PMID   33947820.
  17. Cardona, R.; Miranda, E.; Peralta-Salas, D. (2023). "Computability and Beltrami fields in Euclidean space". Journal de Mathématiques Pures et Appliquées. 169: 50-81. arXiv: 2111.03559 . doi:10.1016/j.matpur.2022.11.007.

Bibliography

Further reading

Related Research Articles

In the computer science subfield of algorithmic information theory, a Chaitin constant or halting probability is a real number that, informally speaking, represents the probability that a randomly constructed program will halt. These numbers are formed from a construction due to Gregory Chaitin.

<span class="mw-page-title-main">Computable number</span> Real number that can be computed within arbitrary precision

In mathematics, computable numbers are the real numbers that can be computed to within any desired precision by a finite, terminating algorithm. They are also known as the recursive numbers, effective numbers or the computable reals or recursive reals. The concept of a computable real number was introduced by Emile Borel in 1912, using the intuitive notion of computability available at the time.

<span class="mw-page-title-main">Decision problem</span> Yes/no problem in computer science

In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question of the input values. An example of a decision problem is deciding by means of an algorithm whether a given natural number is prime. Another is the problem "given two numbers x and y, does x evenly divide y?". The answer is either 'yes' or 'no' depending upon the values of x and y. A method for solving a decision problem, given in the form of an algorithm, is called a decision procedure for that problem. A decision procedure for the decision problem "given two numbers x and y, does x evenly divide y?" would give the steps for determining whether x evenly divides y. One such algorithm is long division. If the remainder is zero the answer is 'yes', otherwise it is 'no'. A decision problem which can be solved by an algorithm is called decidable.

In mathematics and computer science, the Entscheidungsproblem is a challenge posed by David Hilbert and Wilhelm Ackermann in 1928. The problem asks for an algorithm that considers, as input, a statement and answers "yes" or "no" according to whether the statement is universally valid, i.e., valid in every structure.

In computability theory, Rice's theorem states that all non-trivial semantic properties of programs are undecidable. A semantic property is one about the program's behavior, unlike a syntactic property. A non-trivial property is one which is neither true for every program, nor false for every program.

<span class="mw-page-title-main">Theory of computation</span> Academic subfield of computer science

In theoretical computer science and mathematics, the theory of computation is the branch that deals with what problems can be solved on a model of computation, using an algorithm, how efficiently they can be solved or to what degree. The field is divided into three major branches: automata theory and formal languages, computability theory, and computational complexity theory, which are linked by the question: "What are the fundamental capabilities and limitations of computers?".

Computability theory, also known as recursion theory, is a branch of mathematical logic, computer science, and the theory of computation that originated in the 1930s with the study of computable functions and Turing degrees. The field has since expanded to include the study of generalized computability and definability. In these areas, computability theory overlaps with proof theory and effective descriptive set theory.

Hypercomputation or super-Turing computation is a set of hypothetical models of computation that can provide outputs that are not Turing-computable. For example, a machine that could solve the halting problem would be a hypercomputer; so too would one that could correctly evaluate every statement in Peano arithmetic.

In computability theory, a set of natural numbers is called computable, recursive, or decidable if there is an algorithm which takes a number as input, terminates after a finite amount of time and correctly decides whether the number belongs to the set or not.

Computability is the ability to solve a problem in an effective manner. It is a key topic of the field of computability theory within mathematical logic and the theory of computation within computer science. The computability of a problem is closely linked to the existence of an algorithm to solve the problem.

In logic, a true/false decision problem is decidable if there exists an effective method for deriving the correct answer. Zeroth-order logic is decidable, whereas first-order and higher-order logic are not. Logical systems are decidable if membership in their set of logically valid formulas can be effectively determined. A theory in a fixed logical system is decidable if there is an effective method for determining whether arbitrary formulas are included in the theory. Many important problems are undecidable, that is, it has been proven that no effective method for determining membership can exist for them.

Computable functions are the basic objects of study in computability theory. Computable functions are the formalized analogue of the intuitive notion of algorithms, in the sense that a function is computable if there exists an algorithm that can do the job of the function, i.e. given an input of the function domain it can return the corresponding output. Computable functions are used to discuss computability without referring to any concrete model of computation such as Turing machines or register machines. Any definition, however, must make reference to some specific model of computation but all valid definitions yield the same class of functions. Particular models of computability that give rise to the set of computable functions are the Turing-computable functions and the general recursive functions.

Algorithmic topology, or computational topology, is a subfield of topology with an overlap with areas of computer science, in particular, computational geometry and computational complexity theory.

In computability theory and computational complexity theory, RE is the class of decision problems for which a 'yes' answer can be verified by a Turing machine in a finite amount of time. Informally, it means that if the answer to a problem instance is 'yes', then there is some procedure that takes finite time to determine this, and this procedure never falsely reports 'yes' when the true answer is 'no'. However, when the true answer is 'no', the procedure is not required to halt; it may go into an "infinite loop" for some 'no' cases. Such a procedure is sometimes called a semi-algorithm, to distinguish it from an algorithm, defined as a complete solution to a decision problem.

In computational mathematics, a word problem is the problem of deciding whether two given expressions are equivalent with respect to a set of rewriting identities. A prototypical example is the word problem for groups, but there are many other instances as well. A deep result of computational theory is that answering this question is in many important cases undecidable.

In computer science, termination analysis is program analysis which attempts to determine whether the evaluation of a given program halts for each input. This means to determine whether the input program computes a total function.

In computability theory and computational complexity theory, an undecidable problem is a decision problem for which it is proved to be impossible to construct an algorithm that always leads to a correct yes-or-no answer. The halting problem is an example: it can be proven that there is no algorithm that correctly determines whether an arbitrary program eventually halts when run.

In computability theory, the halting problem is the problem of determining, from a description of an arbitrary computer program and an input, whether the program will finish running, or continue to run forever. The halting problem is undecidable, meaning that no general algorithm exists that solves the halting problem for all possible program–input pairs.

The simplicial complex recognition problem is a computational problem in algebraic topology. Given a simplicial complex, the problem is to decide whether it is homeomorphic to another fixed simplicial complex. The problem is undecidable for complexes of dimension 5 or more.