Positive and negative proofs for circuits and branching programs

https://doi.org/10.1016/j.tcs.2015.08.041Get rights and content
Under an Elsevier user license
open archive

Abstract

We extend the # operator in a natural way and derive new types of counting complexity classes. While in the case of #C classes (where C could be some circuit-based class like NC1) only proofs for acceptance of some input are being counted, one can also count proofs for rejection. The ZAP-C complexity classes we propose here implement this idea.

We show that in certain cases ZAP-C lies between #C and GAP-C which could help understanding the relationship between #C and GAP-C. In particular we consider ZAP-NC1 and polynomial size branching programs of bounded and unbounded width. Finally we argue about negative proofs in Turing machines and how those relate to open questions.

Keywords

Circuits
Branching programs
Counting
Arithmetization

Cited by (0)