Searching in trees, series-parallel and interval orders
SIAM Journal on Computing
Enumerative combinatorics
Constructive combinatorics
Consistent detection of global predicates
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
Gray codes and efficient generation of combinatorial structures
Gray codes and efficient generation of combinatorial structures
Techniques to Tackle State Explosion in Global Predicate Detection
IEEE Transactions on Software Engineering
Computation Slicing: Techniques and Theory
DISC '01 Proceedings of the 15th International Conference on Distributed Computing
On Slicing a Distributed Computation
ICDCS '01 Proceedings of the The 21st International Conference on Distributed Computing Systems
ACM SIGACT News distributed computing column 12
ACM SIGACT News
Intractability results in predicate detection
Information Processing Letters
Techniques and applications of computation slicing
Distributed Computing
Intractability results in predicate detection
Information Processing Letters
Hi-index | 0.00 |
We show that some recent results in slicing of a distributed computation can be applied to developing algorithms to solve problems in combinatorics. A combinatorial problem usually requires enumerating, counting or ascertaining existence of structures that satisfy a given property B. We cast the combinatorial problem as a distributed computation such that there is a bijection between combinatorial structures satisfying B and the global states that satisfy a property equivalent to B. We then apply results in slicing a computation with respect to a predicate to obtain a small representation of only those global states that satisfy B. The slicing results are based on a generalization of Birkhoff's Theorem of representation of finite distributive lattices. This gives us an efficient (polynomial time) algorithm to enumerate, count or detect structures that satisfy B when the total set of structures is large but the set of structures satisfying B is small. We illustrate our techniques by analyzing problems in integer partitions, set families, and set of permutations.