HOME

TheInfoList



OR:

Circuits over
natural number In mathematics, the natural numbers are those numbers used for counting (as in "there are ''six'' coins on the table") and ordering (as in "this is the ''third'' largest city in the country"). Numbers used for counting are called ''Cardinal n ...
s are a mathematical model used in studying
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
. They are a special case of circuits. The object is a labeled
directed acyclic graph In mathematics, particularly graph theory, and computer science, a directed acyclic graph (DAG) is a directed graph with no directed cycles. That is, it consists of vertices and edges (also called ''arcs''), with each edge directed from one ve ...
the nodes of which evaluate to sets of natural numbers, the leaves are finite sets, and the gates are set operations or arithmetic operations. As an
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
ic problem, the problem is to find if a given natural number is an element of the output node or if two circuits compute the same set. Decidability is still an open question.


Formal definition

A natural number circuit is a circuit, i.e. a labelled
directed acyclic graph In mathematics, particularly graph theory, and computer science, a directed acyclic graph (DAG) is a directed graph with no directed cycles. That is, it consists of vertices and edges (also called ''arcs''), with each edge directed from one ve ...
of in-degree at most 2. The nodes of in-degree 0, the leaves, are finite sets of natural numbers, the labels of the nodes of in-degree 1 are −, where \overline=\ and the labels of the nodes of in-degree 2 are +, ×, ∪ and ∩, where A+B=\, A\times B=\ and ∪ and ∩ with the usual
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
meaning. The subset of circuits which do not use all of the possible labels are also studied.


Algorithmic problems

One can ask: *Is a given number ''n'' a member of the output node. *Is the output node empty? *Is one node is a subset of another. For circuits which use all the labels, all these problems are equivalent.


Proof

The first problem is reducible to the second one, by taking the intersection of the output gate and ''n''. Indeed, the new output get will be empty if and only if ''n'' was not an element of the former output gate. The first problem is reducible to the third one, by asking if the node ''n'' is a subset of the output node. The second problem is reducible to the first one, it suffices to multiply the output gate by 0, then 0 will be in the output gate if and only if the former output gate were not empty. The third problem is reducible to the second one, checking if A is a subset of B is equivalent to ask if there is an element in A\cap\overline.


Restrictions

Let O be a subset of , then we call MC(O) the problem of finding if a natural number is inside the output gate of a circuit the gates' labels of which are in O, and MF(O) the same problem with the added constraint that the circuit must be a
tree In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, including only woody plants with secondary growth, plants that are ...
.


Quickly growing set

One difficulty comes from the fact that the complement of a finite set is infinite, and a computer has got only a finite memory. But even without complementation, one can create double exponential numbers. Let E_0=\, E_=E_i\times E_i, then one can easily prove by induction on i that E_i=\, indeed E_0=\=\=\ and by induction E_=E_i\times E_i=\\times\=\=\=\. And even double exponential—sized sets: let S_0=\, S_=(S_i\times S_i)+S_i, then \\subset S_i, i.e. S_i contains the 2^ firsts number. Once again this can be proved by induction on i, it is true for S_0 by definition and let x\in\, dividing x by 2^ we see that it can be written as x=2^\times d+r where d,r< 2^, and by induction, 2^, d and r are in S_i, so indeed x\in (S_i \times S_i)+ S_i. These examples explains why addition and multiplication are enough to create problems of high complexity.


Complexity results


Membership problem

The membership problem asks if, given an element ''n'' and a circuit, ''n'' is in the output gate of the circuit. When the class of authorized gates is restricted, the membership problem lies inside well known complexity classes. Note that the size variable here is the size of the circuit or tree; the value of ''n'' is assumed to be fixed.


Equivalence problem

The equivalence problem asks if, given two gates of a circuit, they evaluate to the same set. When the class of authorized gates is restricted, the equivalence problem lies inside well known complexity classes. We call EC(O) and EF(O) the problem of equivalence over circuits and formulae the gates of which are in O.


References

* * *{{Citation , last =Breunig , first =Hans-Georg , title = The complexity of membership problems for circuits over sets of positive numbers , volume = FCT'07 Proceedings of the 16th international conference on Fundamentals of Computation Theory , pages =125–136 , year = 2007 , isbn =978-3-540-74239-5 , publisher =Springer-Verlag , url = https://portal.acm.org/citation.cfm?id=2391509


External links

* Pierre McKenzie
The complexity of circuit evaluation over the natural numbers
Computational complexity theory Arithmetic