# A note on the self-witnessing property of computational problems

## Abstract

A computational problem π is said to have the Ptime self-witnessing property [5] if we can design a Turing machine code *M* such that *if* π is computable in polynomial time, then *M* is a polynomial-time Turing machine (recognizer or transducer depending on when π is a decision problem or function) that computes π. This notion captures constructivizing proofs of membership in P. For example, if we can show that some NP-complete problem is Ptime self-witnessing then any proof that P = NP implies that P is *constructively* equal to NP. This is still an open question.

We define analogous notions of DLOG self-witnessing, PSPACE self-witnessing and NC self-witnessing and study some properties. In particular, we show that logspace self-reducible sets are DLOG self-witnessing. Consequently, under suitable encodings, a standard P-complete problem and a standard NLOG-complete problem are DLOG self-witnessing. Similarly, we show that wdq-self-reducible sets are PSPACE self-witnessing and it follows that a standard EXP-complete problem is PSPACE self-witnessing. As a consequence, it follows that for complexity class *K* ε {P.NLOG}, if DLOG = *K* then *K* is constructively equal to DLOG. Likewise, if PSPACE = EXP then PSPACE is constructively equal to EXP.

Finally, we show that self-helping implies Ptime self-witnessing. We also show Blum-Kannan checkable computational problems have a weak Ptime self-witnessing property. All proofs in this note are based on applications of Levin's “universal enumeration” method [9].

## Keywords

complexity classes self-witnessing self-reducibility constructivity## Preview

Unable to display preview. Download preview PDF.

## References

- 1.J. Balcázar. Self-reducibility.
*Journal of Computer and System Sciences*, 41:367–388, 1990.CrossRefGoogle Scholar - 2.J.L. Balcázar, J. Díaz, and J. Gabarró.
*Structural Complexity I*. EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1988.Google Scholar - 3.M. Blum and S. Kannan. Designing programs that check their work.
*Journal of the ACM*, Vol. 42, No. 1: 269–291, January 1995.Google Scholar - 4.S. Fenner, S. Homer, M. Ogihara, and A. Selman. On using oracles that compute values, manuscript.Google Scholar
- 5.M. Fellows and N. Koblitz. Self-witnessing polynomial time complexity and prime factorization.
*Proc. 6th Structure in Complexity Theory Conference*, 107–110, 1992.Google Scholar - 6.M. R. Fellows and M. A. Langston. Non-constructive tools for proving polynomial-time decidability.
*Journal of the ACM*, Vol. 35, No. 3, 727–739, July 1988.Google Scholar - 7.M. R. Fellows and M. A. Langston. On search, decision, and the efficiency of polynomial-time algorithms.
*Journal of Computer and System Sciences*, Vol. 49, 769–779, 1994.Google Scholar - 8.R. Karp and R. Lipton. Turing machines that take advice.
*L'Enseignement Mathématique*, 28: 191–209, 1982.Google Scholar - 9.L. A. Levin. Universal Enumeration Problems. (Russian)
*Problemy Peredachi Informatsii*, IX, 115–116, 1972.Google Scholar - 10.R. Lipton. New directions in testing. In
*Distributed Computing and Cryptography DIMACS series in Discrete Mathematics and Theoretical Computer Science*, vol. 2, AMS, Providence, R.I., 191–202.Google Scholar - 11.R. Mines, F. Richman, and W. Ruitenburg.
*A course in constructive algebra*. Springer-Verlag, NewYork, 1988.Google Scholar - 12.Graph Minors XVI. Wagner's Conjecture. to appear.Google Scholar
- 13.U. Schöning. Robust algorithms: a different approach to oracles.
*Theoretical Computer Science*,**40**:57–66, 1985.CrossRefGoogle Scholar