AbstractAny Boolean function can be defined by a Boolean circuit, provided we may use sufficiently strong functions in its gates. On the other hand, what Boolean functions can be defined depends on these gate functions: Each set B of gate functions defines the class of Boolean functions that can be defined by circuits over B. Although these classes have been known since the 1920s, their computational complexity was never investigated.
In this paper we will study how difficult it is to decide for a Boolean function f and a class B, whether f is in B.
Moreover, we will provide such a decision algorithm with additional information: How difficult is it to decide whether or not f is in B, provided we already know a circuit for f, but with gates from another class A? Given such a circuit, we know that f is in A. Is the problem harder if we do not have a concrete representation for f, but still know that it is from A? For nearly all possible combinations, we show that this is not the case, and that the problem is either in P or coNP-complete.
[1]
Stephen A. Cook,et al.
The complexity of theorem-proving procedures
,
1971,
STOC.
[2]
Steffen Reith.
Generalized satisfiability problems
,
2001
.
[3]
Rolf Lindner,et al.
Boolesche Funktionen und postsche Klassen
,
1970
.
[4]
Harry R. Lewis,et al.
Satisfiability problems for propositional calculi
,
1979,
Mathematical systems theory.
[5]
Heribert Vollmer,et al.
Introduction to Circuit Complexity
,
1999,
Texts in Theoretical Computer Science An EATCS Series.
[6]
Klaus W. Wagner,et al.
The Complexity of Problems Defined by Subclasses of Boolean Functions
,
1999
.