In computational complexity theory, intractable problems are those with no polynomial time algorithm solution. There are two causes of intractability: one is that the problem itself is so difficult that an exponential amount of time is needed to discover a solution. Another is that the solution itself must be so extensive that it cannot be described with an expression bounded by a polynomial function of the input length.