Symmetry Detection And Dynamic Variable

Knowing that some variables are symmetric in a function has numerous applications; in particular, it can help produce better variable orders for Binary Decision Diagrams (BDDs) and related data structures (e.g., Algebraic Decision Diagrams). It has been conjectured that there always exists an optimum order for a BDD wherein symmetric variables are contiguous. We propose a new algorithm for the detection of symmetries, based on dynamic reordering, and we study its interaction with the reordering algorithm itself. We show that combining sifting with an efficient symmetry check for contiguous variables results in the fastest symmetry detection algorithm reported to date and produces better variable orders for many BDDs. The overhead on the sifting algorithm is negligible.

[1]  Masahiro Fujita,et al.  On variable ordering of binary decision diagrams for the application of multi-level logic synthesis , 1991, Proceedings of the European Conference on Design Automation..

[2]  R. I. Bahar,et al.  Algebraic decision diagrams and their applications , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[3]  Robert K. Brayton,et al.  Dynamic variable reordering for BDD minimization , 1993, Proceedings of EURO-DAC 93 and EURO-VHDL 93- European Design Automation Conference.

[4]  Michael Weber,et al.  Detection of symmetry of Boolean functions represented by ROBDDs , 1993, ICCAD '93.

[5]  Sarma Sastry,et al.  Edge-valued binary decision for multi-level hierarchical verification , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[6]  R. Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD 1993.

[7]  Malgorzata Marek-Sadowska,et al.  Detecting Symmetric Variables in Boolean Functions using Generalized Reel-Muller Forms , 1994, ISCAS.

[8]  Tae Sun Kim,et al.  An Efficient Method for Optimal BDD Ordering Computation , 1993 .

[9]  Hiroshi Sawada,et al.  Minimization of binary decision diagrams based on exchanges of variables , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[10]  Shin-ichi Minato,et al.  Zero-Suppressed BDDs for Set Manipulation in Combinatorial Problems , 1993, 30th ACM/IEEE Design Automation Conference.

[11]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[12]  Qinhai Zhang,et al.  Advanced ordering and manipulation techniques for binary decision diagrams , 1992, [1992] Proceedings The European Conference on Design Automation.

[13]  Yung-Te Lai,et al.  Edge-valued binary decision diagrams for multi-level hierarchical verification , 1992, DAC '92.

[14]  Claude E. Shannon,et al.  A symbolic analysis of relay and switching circuits , 1938, Transactions of the American Institute of Electrical Engineers.

[15]  Albert R. Wang,et al.  Logic verification using binary decision diagrams in a logic synthesis environment , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.

[16]  M. Marek-Sadowska,et al.  Verifying equivalence of functions with unknown input correspondence , 1993, 1993 European Conference on Design Automation with the European Event in ASIC Design.