N
Common Ground News

What is a computable problem?

Author

James Craig

Updated on March 19, 2026

What is a computable problem?

A mathematical problem is computable if it can be solved in principle by a computing device. Some common synonyms for “computable” are “solvable”, “decidable”, and “recursive”. Hilbert believed that all mathematical problems were solvable, but in the 1930's Gödel, Turing, and Church showed that this is not the case.

In this regard, what does computable mean?

capable of being computed

Additionally, what is not computable? A non-computable is a problem for which there is no algorithm that can be used to solve it. Most famous example of a non-computablity (or undecidability) is the Halting Problem.

Thereof, what does effectively computable mean?

Informal definition: A function f is effectively computable if there are definite, explicit and 'mechanical' instructions for computing each value of f. We ignore physical limitations on time, speed, and storage.

Why do we need to check computability of a problem?

In situations when an algorithm is, in principle, possible, sometimes, the only possible algorithms requires so much computation time -- e.g., longer than the lifetime of the Universe -- that they are not practically feasible. It is therefore desirable to know if the given problem can be feasibly solved.

What does it mean for a function to be computable?

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.

Is the halting problem computable?

represents the halting problem. This set is recursively enumerable, which means there is a computable function that lists all of the pairs (i, x) it contains. There are many equivalent formulations of the halting problem; any set whose Turing degree equals that of the halting problem is such a formulation.

How does a Turing machine work?

The machine operates on an infinite memory tape divided into discrete "cells". The machine positions its "head" over a cell and "reads" or "scans" the symbol there. The Turing machine was invented in 1936 by Alan Turing, who called it an "a-machine" (automatic machine).

What automata means?

The word automata (the plural of automaton) comes from the Greek word α?τόματα, which means "self-making". An automaton (Automata in plural) is an abstract self-propelled computing device which follows a predetermined sequence of operations automatically.

Is Computably a word?

In a computable manner. With regard to computability.

What is function in theory of computation?

The concept of a function is a fundamantal topic in mathematics. A function or a total function f : X →Y is a rule that assigns to all the elements of one set, X, a unique element of another set, Y. The first set, X is called the domain of the function, and the second set, Y is called its range.

What is automata theory in computer science?

Automata Theory is an exciting, theoretical branch of computer science. Through automata, computer scientists are able to understand how machines compute functions and solve problems and more importantly, what it means for a function to be defined as computable or for a question to be described as decidable .

What is complexity theory in TOC?

Computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by a computer. A computation problem is solvable by mechanical application of mathematical steps, such as an algorithm.

Why is the halting problem unsolvable?

One of well known unsolvable problems is the halting problem. It asks the following question: Given an arbitrary Turing machine M over alphabet = { a , b } , and an arbitrary string w over , does M halt when it is given w as an input ? It can be shown that the halting problem is not decidable, hence unsolvable.

What is Turing computability?

Turing's famous 1936 paper introduced a formal definition of a computing machine, a Turing machine. This model led to both the development of actual computers and to computability theory, the study of what machines can and cannot compute. Part III covers minimal Turing degrees.

How might we recognize that a process in nature computes a function not computable by a Turing machine?

How can we recognize that a process in nature that computes a function not computable by a turing machine? If we can describe it (in principle) using quantum mechanics, then a Turing machine can simulate the physical process and compute the same function. This by itself cuts out a lot of possible physical systems.

Where is theory of computation?

The theory of computation is a branch of computer science and mathematics combined that "deals with how efficiently problems can be solved on a model of computation, using an algorithm". It studies the general properties of computation which in turn, helps us increase the efficiency at which computers solve problems.

Is theory of computation important?

The importance to study the theory of computation is to better understand the development of formal mathematical models of computation that reflect the real-world of computer. To achieve deep understanding about the mathematical properties of computer hardware and software.

What is theory of computation in 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 (e.g., approximate solutions versus precise ones).

Why do we need to study computer theory?

Most importantly, it aims to understand the nature of efficient computation. In theoretical computer science and mathematics, the theory of computation is the branch that deals with how efficiently problems can be solved on a model of computation, using an algorithm.