# Transcomputational problem

In computational complexity theory, a transcomputational problem is a problem that requires processing of more than 10$^{93}$ bits of information. Any number greater than 10$^{93}$ is called a transcomputational number. The number 10$^{93}$, called Bremermann's limit, is, according to Hans-Joachim Bremermann, the total number of bits processed by a hypothetical computer the size of the Earth within a time period equal to the estimated age of the Earth. The term transcomputational was coined by Bremermann.

## Examples
### Testing integrated circuits

Exhaustively testing all combinations of an integrated circuit with 309 boolean inputs and 1 output requires testing of a total of 2$^{309}$ combinations of inputs. Since the number 2$^{309}$ is a transcomputational number (that is, a number greater than 10$^{93}$), the problem of testing such a system of integrated circuits is a transcomputational problem. This means that there is no way one can verify the correctness of the circuit for all combinations of inputs through brute force alone.

### Pattern recognition

Consider a q×q array of the chessboard type, each square of which can have one of k colors. Altogether there are k$^n$ color patterns, where n = q$^2$. The problem of determining the best classification of the patterns, according to some chosen criterion, may be solved by a search through all possible color patterns. For two colors, such a search becomes transcomputational when the array is 18×18 or larger. For a 10×10 array, the problem becomes transcomputational when there are 9 or more colors.
This has some relevance in the physiological studies of the retina. The retina contains about a million light-sensitive cells. Even if there were only two possible states for each cell (say, an active state and an inactive state) the processing of the retina as a whole requires processing of more than 10$^{300,000}$ bits of information. This is far beyond Bremermann's limit.

### General systems problems

A system of n variables, each of which can take k different states, can have k$^n$ possible system states. To analyze such a system, a minimum of k$^n$ bits of information are to be processed. The problem becomes transcomputational when k$^n$ > 10$^{93}$. This happens for the following values of k and n:
| k | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| n | 308 | 194 | 154 | 133 | 119 | 110 | 102 | 97 | 93 |

## Implications

The existence of real-world transcomputational problems implies the limitations of computers as data processing tools. This point is best summarized in Bremermann's own words:
    "The experiences of various groups who work on problem solving, theorem proving and pattern recognition all seem to point in the same direction: These problems are tough. There does not seem to be a royal road or a simple method which at one stroke will solve all our problems. My discussion of ultimate limitations on the speed and amount of data processing may be summarized like this: Problems involving vast numbers of possibilities will not be solved by sheer data processing quantity. We must look for quality, for refinements, for tricks, for every ingenuity that we can think of. Computers faster than those of today will be a great help. We will need them. However, when we are concerned with problems in principle, present day computers are about as fast as they ever will be.
    We may expect that the technology of data processing will proceed step by step – just as ordinary technology has done. There is an unlimited challenge for ingenuity applied to specific problems. There is also an unending need for general notions and theories to organize the myriad details."