HOME

TheInfoList



OR:

In
computational complexity theory In theoretical computer science and mathematics, 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 sparse language is a
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of symb ...
(a set of
strings String or strings may refer to: *String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects Arts, entertainment, and media Films * ''Strings'' (1991 film), a Canadian anim ...
) such that the complexity function, counting the number of strings of length ''n'' in the language, is bounded by a
polynomial In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An exa ...
function of ''n''. They are used primarily in the study of the relationship of the complexity class NP with other classes. The
complexity class In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory. In general, a complexity class is defined in terms of ...
of all sparse languages is called SPARSE. Sparse languages are called ''sparse'' because there are a total of 2''n'' strings of length ''n'', and if a language only contains polynomially many of these, then the proportion of strings of length ''n'' that it contains rapidly goes to zero as ''n'' grows. All
unary language In computational complexity theory, a unary language or tally language is a formal language (a set of strings) where all strings have the form 1''k'', where "1" can be any fixed symbol. For example, the language is unary, as is the language . The ...
s are sparse. An example of a nontrivial sparse language is the set of binary strings containing exactly ''k'' 1 bits for some fixed ''k''; for each ''n'', there are only \binom strings in the language, which is bounded by ''n''''k''.


Relationships to other complexity classes

SPARSE contains TALLY, the class of
unary language In computational complexity theory, a unary language or tally language is a formal language (a set of strings) where all strings have the form 1''k'', where "1" can be any fixed symbol. For example, the language is unary, as is the language . The ...
s, since these have at most one string of any one length. Although not all languages in P/poly are sparse, there is a
polynomial-time Turing reduction In computational complexity theory, a polynomial-time reduction is a method for solving one problem using another. One shows that if a hypothetical subroutine solving the second problem exists, then the first problem can be solved by transforming ...
from any language in P/poly to a sparse language. Fortune showed in 1979 that if any sparse language is co-NP-complete, then P = NP; Mahaney used this to show in 1982 that if any sparse language is NP-complete, then P = NP (this is
Mahaney's theorem Mahaney's theorem is a theorem in computational complexity theory proven by Stephen Mahaney that states that if any sparse language is NP-complete, then P = NP. Also, if any sparse language is NP-complete with respect to Turing reduction In computa ...
). A simpler proof of this based on left-sets was given by Ogihara and Watanabe in 1991. Mahaney's argument does not actually require the sparse language to be in NP (because the existence of an NP-hard sparse set implies the existence of an NP-complete sparse set), so there is a sparse NP-hard set if and only if P = NP. Further, ENE if and only if there exist sparse languages in NP that are not in P. There is a
Turing reduction In computability theory, a Turing reduction from a decision problem A to a decision problem B is an oracle machine which decides problem A given an oracle for B (Rogers 1967, Soare 1987). It can be understood as an algorithm that could be used to s ...
(as opposed to the
Karp reduction In computational complexity theory, a polynomial-time reduction is a method for solving one problem using another. One shows that if a hypothetical subroutine solving the second problem exists, then the first problem can be solved by transforming ...
from Mahaney's theorem) from an NP-complete language to a sparse language if and only if \textbf\subseteq \textbf/\text. In 1999, Jin-Yi Cai and D. Sivakumar, building on work by Ogihara, showed that if there exists a sparse P-complete problem, then L = P.Jin-Yi Cai and D. Sivakumar. Sparse hard sets for P: resolution of a conjecture of Hartmanis. ''Journal of Computer and System Sciences'', volume 58, issue 2, pp.280–296. 1999.
At Citeseer
/ref>


References


External links

*
Lance Fortnow Lance Jeremy Fortnow (born August 15, 1963) is a computer scientist known for major results in computational complexity and interactive proof systems. He is currently Dean of the College of Computing at the Illinois Institute of Technology. Biogra ...

Favorite Theorems: Small Sets
April 18, 2006. *
William Gasarch William Ian Gasarch ( ; born 1959) is an American computer scientist known for his work in computational complexity theory, computability theory, computational learning theory, and Ramsey theory. He is currently a professor at the University of ...

Sparse Sets (Tribute to Mahaney)
June 29, 2007. * {{CZoo, SPARSE, S#sparse Formal languages Computational complexity theory