1

I am reimplementing (for fun, a bit of work and a severe case of NIH) a ROBDD library. I would like to have a few "reference" graphs built by other libraries to compare results [*]

E.g., given the variable order x1 < y1 < x2 < y2, what would be the graph obtained for

(x1 <=> y1) /\ not (x2 <=> y2) /\ (x2 <=> y2) [**]

I am assuming standard operators. Also, if it helps, I assume /\ is left-associative.

Any other smallish example will be welcome.

Thanks

Marco

[*] I know! I should download libraries, install them and use them, but I am lazy.

[**] The example is taken from a the Moeller and Oestergard's example that is floating around the net.

1 Answers1

0

I am the author of BDD Scout - a tool for visualisation of BDDs. It works on MS Windows and GNU/Linux. It can show you a ROBDD with complemented edges for any Boolean function you entered. It supports also ROBDDs without complemented edges and 0-sup-BDDs (aka ZDDs introduced by Minato). It also allows you to reorder variables. You can download it from http://biddy.meolic.com/ . Your formula is equal to zero but, for example, below is a graph produced for Boolean function:

F = (x1*y1+!x1*!y1) * !(x2*y2+!x2*!y2)

enter image description here

EDIT: Please find below two PNG files generated with BDD Scout for Boolean function from Moeller and Oestergard's Bachelor's Thesis (page 9). Unfortunately, BDD Scout does not support <=> and thus the function must be specified as:

F = !( (!(x1^y1) * (x2^y2)) ^ !(x2^y2) )

enter image description here enter image description here

meolic
  • 1,177
  • 2
  • 15
  • 41