1: \begin{abstract}
2: Satisfiability of Boolean circuits is among the most known and important problems
3: in theoretical computer science.
4: This problem is \npc in general but becomes polynomial time when restricted either to monotone gates or linear gates.
5: We go outside Boolean realm and consider circuits built of any fixed set of gates
6: on an arbitrary large finite domain.
7: From the complexity point of view this is strictly connected with the problems of solving equations (or systems of equations) over finite algebras.
8:
9: The research reported in this work was motivated by a desire to know
10: for which finite algebras $\m A$ there is a polynomial time algorithm
11: that decides if an equation over $\m A$ has a solution.
12: We are also looking for polynomial time algorithms that decide if two circuits over a finite algebra compute the same function.
13: Although we have not managed to solve these problems in the most general setting
14: we have obtained such a characterization for a very broad class of algebras
15: from congruence modular varieties.
16: This class includes most known and well-studied algebras
17: such as groups, rings, modules (and their generalizations like quasigroups, loops, near-rings, nonassociative rings, Lie algebras), lattices (and their extensions like Boolean algebras, Heyting algebras or other algebras connected with multi-valued logics including MV-algebras).
18:
19: This paper seems to be the first systematic study of the computational complexity of satisfiability of non-Boolean circuits and solving equations over finite algebras.
20: The characterization results provided by the paper is given in terms of nice structural properties of algebras for which the problems are solvable in polynomial time.
21: \end{abstract}
22: