A clique in a graph is a set of nodes all of which are pairwise connected.
Consider the computational problem of given a graph G to find the size of the largest clique. This is a well known NP-hard problem and since we are interested in efficient algorithms we study heuristics that do not always
find the optimal solution.
A heuristic is a C(n)-approximation if it, for every graph with n nodes, finds a clique of size OPT/C(n) where OPT is the size of the largest clique. The smallest function C(n) that is known to allow a polynomial time C(n)-approximation algorithm is C(n)=O(n/(log n)^2).
Thus in a graph which has a clique of linear size it only guarantees to find a clique of size Omega((\log n)^2). We prove that this rather poor performance is in fact not too far from the best possible behavior of efficient heuristics.
More precisely, we prove that the existence of a polynomial time n^{1-epsilon}-approximation algorithm for any epsilon > 0 implies that any problem in NP can be solved in probabilistic polynomial time.