delbddassoc

DELBDDASSOC(3)                   BDD FUNCTIONS                  DELBDDASSOC(3)



NAME
       delbddassoc - deletes a variable association.


ORIGIN
       This software belongs to the  ALLIANCE CAD SYSTEM developed by the ASIM
       team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris,
       France.

       Web : http://asim.lip6.fr/recherche/alliance/
       E-mail : alliance-users@asim.lip6.fr


SYNOPSYS
       #include "bdd101.h"
       int delbddassoc( BddSystem, BddAssoc )
         bddsystem  ∗BddSystem;
         bddassoc   ∗BddAssoc;

PARAMETERS
       BddSystem           The bdd system.

       BddAssoc            The variable association to delete.

DESCRIPTION
       delbddassoc deletes the variable association BddAssoc in the bdd system
       BddSystem.  If a null pointer is given, the default bdd system is used.
       For all the bdd nodes of the variable association BddAssoc, the number
       of external reference is decremented.

RETURN VALUE
       delbddassoc returns 1 if the variable association is found, 0
       otherwise.

EXAMPLE
       #include "bdd101.h"
          bddsystem  ∗BddSystem;
          bddcircuit ∗BddCircuit;
          bddnode    ∗BddNode;
          bddnode    ∗BddSubst;
          bddnode    ∗BddVariable;
          bddassoc   ∗Assoc;
          chain_list ∗Expr;
          bddvar         Variable;
          BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
          BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
          Expr = createablbinexpr( ABL_AND,
                                   createablatom( "i0" ),
                                   createablatom( "i1" ) );
          BddNode = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          Expr = createablbinexpr( ABL_OR,
                                   createablatom( "i2" ),
                                   createablatom( "i3" ) );
          BddSubst = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" );
          Variable = getbddvarbyindex( (bddsystem ∗)0, BddVariable->INDEX );
          Assoc = delbddassoc( (bddsystem ∗)0 );
          addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSubst );
          BddNode = substbddnodeassoc( (bddsystem ∗)0, BddSubst, Assoc );
          delbddassoc( (bddsystem ∗)0, Assoc );
          Expr = convertbddcircuitabl( BddCircuit, BddNode );
          /* displays ((i3 or i2) and i1) */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddassoc( (bddsystem ∗)0 );
          destroybddsystem( (bddsystem ∗)0 );
          destroybddcircuit( (bddcircuit ∗)0 );

SEE ALSO
       bdd(1)




BUG REPORT
       This tool is under development at the ASIM department of the LIP6
       laboratory.
       We need your feedback to improve documentation and tools.






ASIM/LIP6                       October 1, 1997                 DELBDDASSOC(3)