A BDD-based fast heuristic algorithm for disjoint decomposition

  • Authors:
  • Tomas Bengtsson;Andrés Martinelli;Elena Dubrova

  • Affiliations:
  • Jönköping University, Jönköping, Sweden;Royal Institute of Technology, Stockholm, Sweden;Royal Institute of Technology, Stockholm, Sweden

  • Venue:
  • ASP-DAC '03 Proceedings of the 2003 Asia and South Pacific Design Automation Conference
  • Year:
  • 2003

Quantified Score

Hi-index 0.01

Visualization

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(n2) candidates for decomposition out of O(2n) 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.