crew prams and decision trees
This paper gives a full characterization of the time needed to compute a Boolean function on a CREW PRAM with an unlimited number of processors. The characterization is given in terms of a new complexity measure of Boolean functions: the block sensitivity. This measure is a generalization of the well know critical sensitivity measure (see [W], [CDR], [Si]). The block sensitivity is also shown to relate to the Boolean decision tree complexity, and the implication is that the decision tree complexity also fully characterizes the CREW PRAM complexity. This solves an open problem of [W]. Our results imply that changes in the instruction set of the processors or in the capacity of the shared memory cells do not change by more than a constant factor the time required by a CREW PRAM to compute any Boolean function. Moreover, we even show that a seemingly weaker version of a CREW PRAM, the CROW PRAM ([DR]), can compute functions as quickly as a general CREW PRAM. This solves an open problem of [DR]. Finally, our results have implications regarding the power of randomization in the Boolean decision tree model. We show that in this model, randomization may only achieve a polynomial speedup over deterministic computation. This was known for Las-Vegas randomized computation; we prove it also for 1-sided error computation (a quadratic bound) and 2-sided error (a cubic bound).
decision tree paper characterization timing computation boolean function processor complexity measurement blocking sensitive general change instruction capacities shared memory factor version power randomization model polynomial speedup errors