Sponsor:

Your company here — click to reach over 10,000 unique daily visitors

isbddvarinsupport.3alc - Man Page

tests if a variable appears in a bdd.

Synopsis

#include "bdd101.h"
int isbddvarinsupport( BddSystem, BddNode, Variable )
  bddsystem ∗BddSystem;
  bddnode   ∗BddNode;
  bddvar     Variable;

Parameters

BddSystem

The bdd system.

BddNode

The bdd node.

Variable

The variable number.

Description

isbddvarinsupport tests if the variable number Variable appears in the support of the bdd node BddNode, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.

Return Value

isbddvarinsupport returns 1 if Variable appears, 0 otherwise.

Errors

"variable xxx out of range, error !"

The Variable parameter must be less or equal to the BddSystem->NUMBER_VAR field.

Example

#include "bdd101.h"
   bddsystem  ∗BddSystem;
   bddcircuit ∗BddCircuit;
   bddnode    ∗BddNode;
   bddnode    ∗BddVariable;
   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 );
   BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" );
   Variable = getbddvarbyindex( (bddsystem ∗ 0), BddVariable->INDEX ) );
   /* displays 1 */
   printf( "%d", isbddvarinsupport( (bddsystem ∗)0, BddNode, Variable ) );
   destroybddsystem( (bddsystem ∗)0 );
   destroybddcircuit( (bddcircuit ∗)0 );

See Also

bdd(1)

Info

October 1, 1997 ASIM/LIP6 BDD FUNCTIONS