  A CSP with n variables ranging over a domain of d values can be solved by
brute-force in d^n steps (omitting a polynomial factor). With a more careful
approach, this trivial upper bound can be improved for certain natural
restrictions of the CSP. In this paper we establish theoretical limits to such
improvements, and draw a detailed landscape of the subexponential-time
complexity of CSP.
  We first establish relations between the subexponential-time complexity of
CSP and that of other problems, including CNF-Sat. We exploit this connection
to provide tight characterizations of the subexponential-time complexity of CSP
under common assumptions in complexity theory. For several natural CSP
parameters, we obtain threshold functions that precisely dictate the
subexponential-time complexity of CSP with respect to the parameters under
consideration.
  Our analysis provides fundamental results indicating whether and when one can
significantly improve on the brute-force search approach for solving CSP.
