Provided by: alliance_5.0-20110203-4_amd64 bug


       convertbddnodesumabl - converts a bdd node to an abl expression.


       #include "bdd101.h"
       chain_list *convertbddnodesumabl( BddSystem, NameArray, IndexArray, BddNode )
         bddsystem ∗BddSystem;
         char     ∗∗NameArray;
         bddindex  ∗IndexArray;
         bddnode   ∗BddNode;


       BddSystem           The bdd system.

       NameArray           The array of names.

       IndexArray          The array of indexes.

       BddNode             The bdd node to convert.


       convertbddnodesumabl  converts  the  bdd  node  to a non optimal abl expression in the bdd
       system BddSystem.  If a null pointer is given,  the  default  bdd  system  is  used.   The
       NameArray,  and IndexArray parameters are used to translate the variable nodes into atomic
       expressions.  The array NameArray is  list  of  names.   The  array  IndexArray  does  the
       correspondence  between  a  bdd  node index and a slot in the NameArray. If the IndexArray
       parameter is a null pointer, then the name of the bdd index BDD_INDEX_MIN is assumed to be
       the first slot of the NameArray, and so on.


       convertbddnodesumabl returns a pointer to the abl expression translated.


       #include "bdd101.h"
          bddsystem  ∗BddSystem;
          bddnode    ∗BddNode;
          chain_list ∗Expr;
          char       ∗NameArray[ 1 ];
          BddSystem = createbddsystem( 100, 1000, 100, 50000 );
          BddNode   = addbddvarlast( BddSystem );
          NameArray[ 0 ] = namealloc( "i0" );
          Expr = convertbddnodesumabl( BddSystem, NameArray, (bddindex ∗)0,  BddNode );
          /* displays i0 */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddsystem( (bddsystem ∗)0 );


       bdd(1), abl(1).