A fast heuristic algorithm for disjoint decomposition of Boolean functions

Tomas Bengtsson, Andrés Martinelli, Elena Dubrova · 2002

Abstract — This paper presents a heuristic algorithm for disjoint decomposition of a Boolean function based on its ROBDD representation. Two distinct features make the algorithm feasible for large functions. First, for an n-variable function, it checks only O(n 2) candidates for decomposition out of O(2 n) possible ones. A special strategy for selecting candidates makes it likely that all other decompositions are encoded in the selected ones. Second, the decompositions for the approved candidates are computed using a novel IntervalCut algorithm. This algorithm does not require re-ordering of ROBDD. The combination of both techniques allows us to decompose the functions of size beyond that possible with the exact algorithms. The experimental results on 582 benchmark functions show that the presented heuristic finds 95 % of all decompositions on average. For 526 of those functions, it finds 100 % of the decompositions. I.

Read the paper · More papers on PaperTik