Is there a polynomial time isomorphism between every two NP-complete languages?
In structural complexity theory, the Berman–Hartmanis conjecture is an unsolved conjecture named after Leonard C. Berman and Juris Hartmanis that states that all NP-complete languages look alike, in the sense that they can be related to each other by polynomial time isomorphisms.
An isomorphism between formal languages L1 and L2 is a bijective map f from strings in the alphabet of L1 to strings in the alphabet of L2, with the property that a string x belongs to L1 if and only if f(x) belongs to L2. It is a polynomial time isomorphism (or p-isomorphism for short) if both f and its inverse function can be computed in an amount of time polynomial in the lengths of their arguments.
Berman & Hartmanis (1977) observed that all languages known at that time to be NP-complete were p-isomorphic. More strongly, they observed that all then-known NP-complete languages were paddable, and they proved (analogously to the Myhill isomorphism theorem) that all pairs of paddable NP-complete languages are p-isomorphic. A language L is paddable if there is a polynomial time function f(x,y) with a polynomial time inverse and with the property that, for all x and y, x belongs to L if and only if f(x,y) belongs to L: that is, it is possible to pad the input x with irrelevant information y, in an invertible way, without changing its membership in the language. Based on these results, Berman and Hartmanis conjectured that all NP-complete languages are p-isomorphic.
Since p-isomorphism preserves paddability, and there exist paddable NP-complete languages, an equivalent way of stating the Berman–Hartmanis conjecture is that all NP-complete languages are paddable. Polynomial time isomorphism is an equivalence relation, and it can be used to partition the formal languages into equivalence classes, so another way of stating the Berman–Hartmanis conjecture is that the NP-complete languages form a single equivalence class for this relation.
If the Berman–Hartmanis conjecture is true, an immediate consequence would be the nonexistence of sparse NP-complete languages, namely languages in which the number of yes-instances of length n grows only polynomially as a function of n. The known NP-complete languages have a number of yes-instances that grows exponentially, and if L is a language with exponentially many yes-instances then it cannot be p-isomorphic to a sparse language, because its yes-instances would have to be mapped to strings that are more than polynomially long in order for the mapping to be one-to-one.
The nonexistence of sparse NP-complete languages in turn implies that P ≠ NP, because if P = NP then every nontrivial language in P (including some sparse ones, such as the language of binary strings all of whose bits are zero) would be NP-complete. In 1982, Steve Mahaney published his proof that the nonexistence of sparse NP-complete languages (with NP-completeness defined in the standard way using many-one reductions) is in fact equivalent to the statement that P ≠ NP; this is Mahaney's theorem. Even for a relaxed definition of NP-completeness using Turing reductions, the existence of a sparse NP-complete language would imply an unexpected collapse of the polynomial hierarchy.
As evidence towards the conjecture, Agrawal et al. (1997) showed that an analogous conjecture with a restricted type of reduction is true: every two languages that are complete for NP under AC0 many-one reductions have an AC0 isomorphism. Agrawal & Watanabe (2009) showed that, if there exist one-way functions that cannot be inverted in polynomial time on all inputs, but if every such function has a small but dense subset of inputs on which it can be inverted in P/poly (as is true for known functions of this type) then every two NP-complete languages have a P/poly isomorphism. And Fenner, Fortnow & Kurtz (1992) found an oracle machine model in which the analogue to the isomorphism conjecture is true.
Evidence against the conjecture was provided by Joseph & Young (1985) and Kurtz, Mahaney & Royer (1995). Joseph and Young introduced a class of NP-complete problems, the k-creative sets, for which no p-isomorphism to the standard NP-complete problems is known. Kurtz et al. showed that in oracle machine models given access to a random oracle, the analogue of the conjecture is not true: if A is a random oracle, then not all sets complete for NPA have isomorphisms in PA. Random oracles are commonly used in the theory of cryptography to model cryptographic hash functions that are computationally indistinguishable from random, and the construction of Kurtz et al. can be carried out with such a function in place of the oracle. For this reason, among others, the Berman–Hartmanis isomorphism conjecture is believed false by many complexity theorists.
- Rothe, Jörg (2005), "3.6.2 The Berman–Hartmanis Isomorphism Conjecture and One-Way Functions", Complexity Theory and Cryptology: An Introduction to Cryptocomplexity, Birkhäuser, pp. 108–114, ISBN 978-3-540-22147-0.
- Schöning, Uwe; Pruim, Randall J. (1998), "15. The Berman–Hartmanis Conjecture and Sparse Sets", Gems of Theoretical Computer Science, Springer, pp. 123–129, ISBN 978-3-540-64425-5.
- Kurtz, Stuart; Mahaney, Steve; Royer, Jim (1990), "The structure of complete degrees", Complexity Retrospective, Springer, pp. 108–146
- Agrawal, Manindra (2011), "The Isomorphism Conjecture for NP", in Cooper, S. Barry; Sorbi, Andrea (eds.), Computability in Context: Computation and Logic in the Real World (PDF), World Scientific, pp. 19–48, ISBN 978-1-84816-245-7 CS1 maint: discouraged parameter (link).
- Berman, L.; Hartmanis, J. (1977), "On isomorphisms and density of NP and other complete sets" (PDF), SIAM Journal on Computing, 6 (2): 305–322, doi:10.1137/0206023, hdl:1813/7101, MR 0455536.
- Mahaney, Stephen R. (1982), "Sparse complete sets for NP: solution of a conjecture of Berman and Hartmanis", Journal of Computer and System Sciences, 25 (2): 130–143, doi:10.1016/0022-0000(82)90002-2, hdl:1813/6257, MR 0680515.
- Agrawal, Manindra; Allender, Eric; Impagliazzo, Russell; Pitassi, Toniann; Rudich, Steven (1997), "Reducing the complexity of reductions", Proceedings of the 29th ACM Symposium on Theory of Computing (STOC '97), pp. 730–738, doi:10.1145/258533.258671, S2CID 14739803. Agrawal, Manindra; Allender, Eric; Rudich, Steven (1998), "Reductions in circuit complexity: an isomorphism theorem and a gap theorem", Journal of Computer and System Sciences, 57 (2): 127–143, doi:10.1006/jcss.1998.1583.
- Agrawal, M.; Watanabe, O. (2009), "One-way functions and the Berman–Hartmanis conjecture", 24th Annual IEEE Conference on Computational Complexity (PDF), pp. 194–202, doi:10.1109/CCC.2009.17, S2CID 15244907.
- Fenner, S.; Fortnow, L.; Kurtz, S.A. (1992), "The isomorphism conjecture holds relative to an oracle", Proceedings of the 33rd Annual IEEE Symposium on Foundations of Computer Science, pp. 30–39, CiteSeerX 10.1.1.42.6130, doi:10.1109/SFCS.1992.267821, S2CID 36512284.
- Joseph, Deborah; Young, Paul (1985), "Some remarks on witness functions for nonpolynomial and noncomplete sets in NP", Theoretical Computer Science, 39 (2–3): 225–237, doi:10.1016/0304-3975(85)90140-9, MR 0821203.
- Kurtz, Stuart A.; Mahaney, Stephen R.; Royer, James S. (1995), "The isomorphism conjecture fails relative to a random oracle", Journal of the ACM, 42 (2): 401–420, doi:10.1145/201019.201030, MR 1409741, S2CID 52152959.
- Fortnow, Lance (March 28, 2003), The Berman-Hartmanis Isomorphism Conjecture CS1 maint: discouraged parameter (link).