2013 IEEE 33rd International Conference on Distributed Computing Systems (2001)
Apr. 16, 2001 to Apr. 19, 2001
Neeraj Mittal , The University of Texas at Austin
Vijay K. Garg , The University of Texas at Austin
Abstract: Monitoring of global predicates is a fundamental problem in asynchronous distributed systems. This problem arises in various contexts such as design, testing and debugging, and fault-tolerance of distributed programs. In this paper, we establish that the problem of determining whether there exists a consistent cut of a computation that satisfies a predicate in k-CNF, k \geq 2, in which no two clauses contain variables from the same process is NP-complete in general. A polynomial-time algorithm to find the consistent cut, if it exists, that satisfies the predicate for special cases is provided. We also give algorithms albeit exponential that can be used to achieve an exponential reduction in time over existing techniques for solving the general version. Furthermore, we present an algorithm to determine whether there exists a consistent cut of a computation for which the sum x_1 +x_2 + +x_n exactly equals some constant k, where each x_i is an integer variable on process p_i such that it is incremented or decremented by at most one at each step. As a corollary, any symmetric global predicate on boolean variables such as absence of simple majority and exclusive-or of local predicates can now be detected. Additionally, the problem is proved to be NP-complete if each x_i can be changed by an arbitrary amount at each step. Our results solve the previously open problems in predicate detection proposed in  and bridge the wide gap between the known tractability and intractability results that existed until now.
Neeraj Mittal, Vijay K. Garg, "On Detecting Global Predicates in Distributed Computations", 2013 IEEE 33rd International Conference on Distributed Computing Systems, vol. 00, no. , pp. 0003, 2001, doi:10.1109/ICDSC.2001.918927