Abstract

A state-of-the-art data structure for the representation of Boolean functions are ordered binary decision diagrams (OBDDs). The size of an OBDD representing a Boolean function depends on the variable ordering. Finding a variable ordering with optimal (i.e. minimum) OBDD size is a central, but NP-hard problem. Thus it is of great interest to characterize optimal variable orderings from the structure of the given function. In this paper we investigate the problem of characterizing optimal variable orderings for shared OBDDs of two Boolean functions f i = g i ⊗ i h i , i = 1,2, where ⊗i is an operator from the base B 2 * , (the full binary basis consisting of all ten binary operations depending essentially on both inputs) and g i (resp. h i) depends only on x-variables (resp. y-variables). Tree-like circuits provide an example for such functions. In the special case f 1 = ¯f 2, Sauerhoff, Wegener and Werchner [6] proved that there is some optimal ordering where all x-variables are tested before all y-variables or vice versa (blockwise variable ordering). We show that this is also true for arbitrary f 1, f 2 provided that ⊗1 = ∧ and ⊗2 = ∀, and for shared OBDDs with complemented edges and arbitrary f1, f2 provided that ⊗1 = ∧ and ⊗2 = ⊕. For all other combinations of ⊗1 und ⊗2 we give counterexamples.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call