Provided by: alliance_5.0-20120515-6_amd64 bug

NAME

       unmarkbddnode - unmarks bdd node with a specified mask.

SYNOPSYS

       #include "bdd101.h"
       long unmarkbddnode( BddSystem, BddNode, Mark )
         bddsystem ∗BddSystem;
         bddnode   ∗BddNode;
         bddunmark    Mark;

PARAMETERS

       BddSystem           The bdd system.

       BddNode             The bdd node to unmark.

       Mark                The bit mask.

DESCRIPTION

       unmarkbddnode  unmarks  the  bdd  node  BddNode  with the bit mask Mark, in the bdd system
       BddSystem.  If a null pointer is given, the default bdd system  is  used.   This  function
       does  a  AND  with  the  field MARK of the bdd node BddNode, and the complemented bit mask
       Mark.

RETURN VALUE

       unmarkbddnode returns the number of the differents unmarked nodes.

EXAMPLE

       #include "bdd101.h"
          bddsystem  ∗BddSystem;
          bddcircuit ∗BddCircuit;
          bddnode    ∗BddNode;
          chain_list ∗Expr;
          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 );
          printf( "Number nodes: %ld0,
                  markbddnode( (bddsystem ∗)0, BddNode, 0x0001 ) );
          unmarkbddnode( (bddsystem ∗)0, BddNode, 0x0001 );
          destroybddsystem( (bddsystem ∗)0 );
          destroybddcircuit( (bddcircuit ∗)0 );

SEE ALSO

       bdd(1)